你的位置:首页 > 数据库

[数据库]Centos 6.5 Percona 5.6.27 Tokudb 配置


参考 https://www.percona.com/doc/percona-server/5.6/tokudb/tokudb_installation.html

# wget https://www.percona.com/downloads/Percona-Server-5.6/Percona-Server-5.6.27-75.0/binary/tarball/Percona-Server-5.6.27-rel75.0-Linux.x86_64.ssl101.tar.gz  

解压到 /usr/local,创建符号链接 /usr/local/percona

启动出错 /usr/local/percona/bin/mysqld: error while loading shared libraries: libnuma.so.1: cannot open shared object file: No such file or directory

解决:查找   # yum search libnuma

numactl.x86_64 : Library for tuning for Non Uniform Memory Access machines

numactl-devel.x86_64 : Development package for building Applications that use numa

安装 yum install numactl

启动出新错误 [ERROR] TokuDB is not initialized because jemalloc is not loaded

解决:安装yum扩展源 EPEL即Extra Packages for Enterprise Linux

# rpm -ivh http://mirrors.sohu.com/fedora-epel/6/x86_64/epel-release-6-8.noarch.rpm

# yum install jemalloc 安装了 jemalloc-3.6.0-1.el6.x86_64

# rpm -ql jemalloc-3.6.0-1.el6.x86_64 查看库所在具体路径

/usr/lib64/libjemalloc.so.1

# vi /etc/my.cnf

[mysqld_safe]

malloc-lib=/usr/lib64/libjemalloc.so.1

[mysqld]

...

plugin-dir = /usr/local/percona/lib/mysql/plugin

plugin-load=ha_tokudb.so

tokudb_row_format = tokudb_fast

tokudb_cache_size = 1G

tokudb_commit_sync = 0

tokudb_directio = 1

tokudb_read_block_size = 128K

tokudb_read_buf_size = 128K

#把TokuDB datadir以及logdir和MySQL的datadir分开,美观点

tokudb-data-dir = /data/mysql/tokudb/data

tokudb-log-dir  = /data/mysql/tokudb/log

禁用 transparent_hugepage

# vi /etc/rc.local 为了立即生效,还要手工执行下这两句

echo never > /sys/kernel/mm/transparent_hugepage/enabled

echo never > /sys/kernel/mm/transparent_hugepage/defrag

启动成功后安装tokudb

# cd /usr/local/percona/bin

# ./ps_tokudb_admin --enable -uroot -pPassw0rd

mysql: error while loading shared libraries: libreadline.so.5: cannot open shared object file: No such file or directory

 ldd /usr/local/percona/bin/mysql        

linux-vdso.so.1 =>  (0x00007fff197a5000)        

libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f422479d000)        

libreadline.so.5 => not found   

解决办法 yum install compat-readline5-devel

安装成功后查看 mysql> SHOW ENGINES;

| TokuDB | YES | Tokutek TokuDB Storage Engine with Fractal Tree(tm) Technology | YES | YES | YES |

...