centos下安装myrocksdb

栏目: 数据库 · 发布时间: 6年前

内容简介:承接上一篇,如果不安装,执行mysqldb的安装步骤(zstd是zstandard数据压缩工具,由Facebook开发,该工具如果不安装,执行第6步时会提示缺少zstd的问题。

承接上一篇, https://www.cnblogs.com/lunyu/p/10190364.html  。编译安装myrocks的整个过程,特别是第2步和第7步,让人冗长难耐。因此编译安装成功后省去这些步骤就显得很可贵了。这里,我提供了编译安装后的myrocks安装包,方便myrocksdb服务的的快速安装部署。

1. 安装必要的包

sudo yum install cmake gcc-c++ bzip2-devel libaio-devel bison \
zlib-devel snappy-devel
sudo yum install gflags-devel readline-devel ncurses-devel \
openssl-devel lz4-devel gdb git

2. 安装autoconf

yum -y install autoconf

如果不安装,执行mysqldb的安装步骤( ./mysql_install_db --user=mysql --defaults- file =/usr/local/mysql/my.cnf --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data )会出现以下错误:

FATAL ERROR: please install the following Perl modules before executing ./mysql_install_db:
Data::Dumper

3. 安装zstd

zstd是zstandard数据压缩工具,由Facebook开发,该 工具 如果不安装,执行第6步时会提示缺少zstd的问题。

参考页面: https://www.howtoing.com/zstd-fast-data-compression-algorithm-used-by-facebook

执行如下几步:

cd /usr/local
git clone https://github.com/facebook/zstd.git
cd zstd
make
sudo make install

centos下安装myrocksdb

编译和安装(make install)后的zstd文件产生的文件在 /usr/local/lib 下,我们需要将该目录下的文件拷贝至  /usr/lib64 目录下。

cd /usr/local/lib
cp * /usr/lib64

如果没有安装zstd,则会出现以下错误:

/usr/local/mysql/mysql-5.6/bin/my_print_defaults: error while loading shared libraries: libzstd.so.1: cannot open shared object file: No such file or directory
FATAL ERROR: Neither host 'localhost.localdomain' nor 'localhost' could be looked up with
/usr/local/mysql/mysql-5.6/bin/resolveip
Please configure the 'hostname' command to return a correct
hostname.
If you want to solve this at a later stage, restart this script
with the --force option

4. 下载myrocksdb的安装包并解压

百度网盘链接: https://pan.baidu.com/s/1qmXz_FfQ1dT9-guu5mwTgA   , 提取码:93wy。

将上述地址分享的 mysql.tar.gz 文件下载下来,上传到centos服务器  /usr/local 路径下并解压。

cd /usr/local
tar -zvxf mysql.tar.gz

5. 配置my.cnf文件

mysql 的配置文件 /etc/my.cnf 填入以下内容。

[client]
default-character-set=utf8
[mysqld]
character_set_server=utf8
basedir =/usr/local/mysql
datadir =/usr/local/mysql/data
socket= /usr/local/mysql/mysql-5.6.sock
port =3306
server_id =1
user=mysql

default_authentication_plugin=mysql_native_password

rocksdb
default-storage-engine=rocksdb
skip-innodb
default-tmp-storage-engine=MyISAM
collation-server=utf8_bin

log-bin
binlog-format=ROW

6. 安装数据库

cd /usr/local/mysql/scripts
./mysql_install_db --user=mysql --defaults-file=/usr/local/mysql/my.cnf --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

7. 启动数据库

切换到 /usr/local /mysql/bin 目录下,执行mysql的启动。

cd /usr/local/mysql/bin
./mysqld_safe --defaults-file=/usr/local/mysql/my.cnf & 

通过 ps –ef | grep mysql 命令查看,出现mysql的启动进程表示启动成功。

centos下安装myrocksdb

8. 登录mysql

/usr/local/mysql/bin 目录下,执行,

./mysql –u root –p

输入密码:123456

之后进行一些必要的操作。

9. 尝试创建库和表

创建数据库

create database myrocks;

创建表

CREATE TABLE `linktable` (
  `id1` bigint(20) unsigned NOT NULL DEFAULT '0',
  `id1_type` int(10) unsigned NOT NULL DEFAULT '0',
  `id2` bigint(20) unsigned NOT NULL DEFAULT '0',
  `id2_type` int(10) unsigned NOT NULL DEFAULT '0',
  `link_type` bigint(20) unsigned NOT NULL DEFAULT '0',
  `visibility` tinyint(3) NOT NULL DEFAULT '0',
  `data` varchar(255) NOT NULL DEFAULT '',
  `time` bigint(20) unsigned NOT NULL DEFAULT '0',
  `version` int(11) unsigned NOT NULL DEFAULT '0',
PRIMARY KEY (link_type, `id1`,`id2`) COMMENT 'cf_link_pk',
KEY `id1_type` (`id1`,`link_type`,`visibility`,`time`,`version`,`data`) COMMENT 'rev:cf_link_id1_type'
) ENGINE=RocksDB DEFAULT COLLATE=utf8_bin;

10. 开放防火墙端口

这里防火墙是cetos默认的firewall防火墙。

打开设置的端口,重启防火墙。

firewall-cmd --zone=public --add-port=3306/tcp --permanent
systemctl restart firewalld.service

11. 设置mysqld服务启动

每次启动服务都要执行步骤7,切换目录很麻烦,可以执行下面的操作,通过service启动。

执行chkconfig管理系统服务(service)的命令行工具。

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld
chkconfig --add mysqld
chkconfig --level 345 mysqld on

这样我们可以通过以下命令来重启项目。

service mysqld restart

出现以下结果表示自动重复mysqld服务成功。

centos下安装myrocksdb

12. 设置在任意位置登录和导出mysql库

只需要配置一下mysql的环境变量。

export MYSQL_HOME=/user/local/mysql
export PATH=$MYSQL_HOME/bin:$PATH

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Python神经网络编程

Python神经网络编程

[英]塔里克·拉希德(Tariq Rashid) / 林赐 / 人民邮电出版社 / 2018-4 / 69.00元

神经网络是一种模拟人脑的神经网络,以期能够实现类人工智能的机器学习 技术。 本书揭示神经网络背后的概念,并介绍如何通过Python实现神经网络。全书 分为3章和两个附录。第1章介绍了神经网络中所用到的数学思想。第2章介绍使 用Python实现神经网络,识别手写数字,并测试神经网络的性能。第3章带领读 者进一步了解简单的神经网络,观察已受训练的神经网络内部,尝试进一步改......一起来看看 《Python神经网络编程》 这本书的介绍吧!

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具