mysql 5.7 安装tokudb_mysql 5.5 升级到 mysql5.7 tokudb 引擎

TokuDB Installation¶

Percona Server for MySQL is compatible with the separately available TokuDB storage engine package. The TokuDB engine must be separately downloaded and then enabled as a plug-in component. This package can be installed alongside with standard Percona Server for MySQL 5.6 releases starting with 5.6.19-67.0 and does not require any specially adapted version of Percona Server for MySQL.

The TokuDB storage engine is a scalable, ACID and MVCC compliant storage engine that provides indexing-based query improvements, offers online schema modifications, and reduces slave lag for both hard disk drives and flash memory. This storage engine is specifically designed for high performance on write-intensive workloads which is achieved with Fractal Tree indexing. To learn more about Fractal Tree indexing, you can visit the following Wikipedia page.

Warning

Only the Percona supplied TokuDB engine should be used with Percona Server for MySQL 5.6. A TokuDB engine downloaded from other sources is not compatible. TokuDB file formats are not the same across MySQL variants. Migrating from one variant to any other variant requires a logical data dump and reload.

TokuDB is currently supported only for 64-bit Linux distributions. It is not available for Debian 6.0 (squeeze) due to conflicts with the gcc version required by TokuDB.

Prerequisites¶

libjemalloc library¶

TokuDB storage engine requires libjemalloc library 3.3.0 or greater. If the version in the distribution repository is lower than that you can use one from Percona Software Repositories or download it from somewhere else.

If the libjemalloc wasn’t installed and enabled before it will be automatically installed when installing the TokuDB storage engine package by using the apt` or yum package manager, but Percona Server for MySQL instance should be restarted for libjemalloc to be loaded. This way libjemalloc will be loaded with LD_PRELOAD. You can also enable libjemalloc by specifying malloc-lib variable in the [mysqld_safe] section of the my.cnf file:

[mysqld_safe]

malloc-lib= /path/to/jemalloc

Transparent huge pages¶

TokuDB won’t be able to start if the transparent huge pages are enabled. Transparent huge pages is feature available in the newer kernel versions. You can check if the Transparent huge pages are enabled with:

$ cat /sys/kernel/mm/transparent_hugepage/enabled

[always] madvise never

If transparent huge pages are enabled and you try to start the TokuDB engine you’ll get the following message in you error.log:

Transparent huge pages are enabled, according to /sys/kernel/mm/redhat_transparent_hugepage/enabled

Transparent huge pages are enabled, according to /sys/kernel/mm/transparent_hugepage/enabled

You can disable transparent huge pages permanently by passing transparent_hugepage=never to the kernel in your bootloader (NOTE: For this change to take an effect you’ll need to reboot your server).

You can disable the transparent huge pages by running the following command as root (NOTE: Setting this will last only until the server is rebooted):

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

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

Installation¶

TokuDB storage engine for Percona Server for MySQL is currently available in our apt and yum repositories.

You can install the Percona Server for MySQL with TokuDB engine by using the apt/yum commands:

[root@centos ~]# yum install Percona-Server-tokudb-56.x86_64

or

root@wheezy:~# apt-get install percona-server-tokudb-5.6

Enabling the TokuDB Storage Engine¶

Once the TokuDB server package has been installed following output will be shown:

* This release of Percona Server is distributed with TokuDB storage engine.

* Run the following script to enable the TokuDB storage engine in Percona Server:

ps_tokudb_admin --enable -u -p[mysql_admin_pass] [-S ] [-h -P ]

* See http://www.percona.com/doc/percona-server/5.6/tokudb/tokudb_installation.html for more installation details

* See http://www.percona.com/doc/percona-server/5.6/tokudb/tokudb_intro.html for an introduction to TokuDB

Percona Server for MySQL 5.6.22-72.0 has implemented ps_tokudb_admin script to make the enabling the TokuDB storage engine easier. This script will automatically disable Transparent huge pages, if they’re enabled, and install and enable the TokuDB storage engine with all the required plugins. You need to run this script as root or with sudo. The script should only be used for local installations and should not be used to install TokuDB to a remote server. After you run the script with required parameters:

ps_tokudb_admin --enable -uroot -pPassw0rd

Following output will be displayed:

Checking if Percona server is running with jemalloc enabled...

>> Percona server is running with jemalloc enabled.

Checking transparent huge pages status on the system...

>> Transparent huge pages are currently disabled on the system.

Checking if thp-setting=never option is already set in config file...

>> Option thp-setting=never is not set in the config file.

>> (needed only if THP is not disabled permanently on the system)

Checking TokuDB plugin status...

>> TokuDB plugin is not installed.

Adding thp-setting=never option into /etc/mysql/my.cnf

>> Successfuly added thp-setting=never option into /etc/mysql/my.cnf

Installing TokuDB engine...

>> Successfuly installed TokuDB plugin.

If the script returns no errors, TokuDB storage engine should be successfully enabled on your server. You can check it out by running:

mysql> SHOW ENGINES;

...

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

...

Enabling the TokuDB Storage Engine Manually¶

If you’re running Percona Server for MySQL 5.6.22-71.0 this storage engine requires manual installation.

INSTALL PLUGIN tokudb SONAME 'ha_tokudb.so';

INSTALL PLUGIN tokudb_file_map SONAME 'ha_tokudb.so';

INSTALL PLUGIN tokudb_fractal_tree_info SONAME 'ha_tokudb.so';

INSTALL PLUGIN tokudb_fractal_tree_block_map SONAME 'ha_tokudb.so';

INSTALL PLUGIN tokudb_trx SONAME 'ha_tokudb.so';

INSTALL PLUGIN tokudb_locks SONAME 'ha_tokudb.so';

INSTALL PLUGIN tokudb_lock_waits SONAME 'ha_tokudb.so';

INSTALL PLUGIN tokudb_background_job_status SONAME 'ha_tokudb.so'

After the engine has been installed it should be present in the engines list. To check if the engine has been correctly installed and active:

mysql> SHOW ENGINES;

...

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

...

To check if all the TokuDB plugins have been installed correctly you should run:

mysql> SHOW PLUGINS;

...

| TokuDB | ACTIVE | STORAGE ENGINE | ha_tokudb.so | GPL |

| TokuDB_file_map | ACTIVE | INFORMATION SCHEMA | ha_tokudb.so | GPL |

| TokuDB_fractal_tree_info | ACTIVE | INFORMATION SCHEMA | ha_tokudb.so | GPL |

| TokuDB_fractal_tree_block_map | ACTIVE | INFORMATION SCHEMA | ha_tokudb.so | GPL |

| TokuDB_trx | ACTIVE | INFORMATION SCHEMA | ha_tokudb.so | GPL |

| TokuDB_locks | ACTIVE | INFORMATION SCHEMA | ha_tokudb.so | GPL |

| TokuDB_lock_waits | ACTIVE | INFORMATION SCHEMA | ha_tokudb.so | GPL |

| TokuDB_background_job_status | ACTIVE | INFORMATION SCHEMA | ha_tokudb.so | GPL |

...

TokuDB Version¶

TokuDB storage engine version can be checked with:

mysql> SELECT @@tokudb_version;

+------------------+

| @@tokudb_version |

+------------------+

| 5.6.27-76.0 |

+------------------+

1 row in set (0.00 sec)

Note

TokuDB storage engine has the same version as Percona Server for MySQL after 5.6.26-74.0 release.

Upgrade¶

Installing the TokuDB package is compatible with existing server setup and databases.

Version Specific Information¶

TokuDB storage engine available as a separate Percona Server for MySQL package.

TokuDB storage engine is considered GA quality.

Implemented ps_tokudb_admin script to make the installation easier

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值