2014年4月15日火曜日

Percona Server 5.6 with TokuDB Betaのインストール

社内で検証する人がいるらしいのでメモ書き風に。

MySQL Performance Blogでのリリースはここ。
Percona Server 5.6.16-64.2 with TokuDB engine Beta is now available


バイナリー(.tar.gz版)を落としてくる。サーバー本体(Percona Server)とプラグイン(TokuDB Storage Engine Plugin)でそれぞれDLする。

$ wget http://www.percona.com/redir/downloads/TESTING/Percona-5.6-TokuDB/beta/538/binary/tarball/release/percona-server-5.6.16-64.2-tokudb-7.1.5.el5.x86_64-server.tar.gz
$ wget http://www.percona.com/redir/downloads/TESTING/Percona-5.6-TokuDB/beta/538/binary/tarball/release/percona-server-5.6.16-64.2-tokudb-7.1.5.el5.x86_64-plugin.tar.gz
$ tar xzf percona-server-5.6.16-64.2-tokudb-7.1.5.el5.x86_64-server.tar.gz
$ tar xzf percona-server-5.6.16-64.2-tokudb-7.1.5.el5.x86_64-plugin.tar.gz

同じディレクトリで解凍すれば、ちゃんと./percona-server-5.6.16-64.2-tokudb-7.1.5.el5.x86_64 のlib/mysql/pluginとか mysql-test とかの下に入ってくれる。

CentOS(RHEL互換)の6.xの場合、transparent_hugepageを無効化する必要がある。

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

去年ハマってたやつ。 http://yoku0825.blogspot.jp/2013/07/tokudbcentos-63.html

mysql_install_dbで初期化して一度MySQL起動。
INSTALL PLUGIN的なことをやってくれるsqlファイルがあるのでそれを食わせる。

$ bin/mysql mysql < share/tokudb_engine_install.sql

これ、INSTALL PLUGIN叩いてくれるのかと思ったら、なぜかテンポラリーテーブルに一覧を作ってからmysql.pluginにINSERTする作りになっているので、デフォルトデータベースを指定しないと通らない。どうしてこうなった。

手でINSTALL PLUGINを叩くならこちらを参考に。 http://www.percona.com/doc/percona-server/5.6/tokudb/tokudb_installation.html

my.cnfにTokuDB関連の設定を追加。INSTALL PLUGIN(じゃないけど)前にTokuDB関連の値を設定すると、当然Unknown Variableでmysqldが起動してくれないので注意。looseつけとくか。

$ vim ./my.cnf
loose-tokudb_cache_size= 24G

とはいえまだ真面目にベンチマークしてないのでこれくらいしかわからない。
tokudb_cache_sizeはInnoDBでいうinnodb_buffer_pool_sizeのようなもの。本家のクイックスタートガイドでは、"物理メモリーの50%くらい割り当てたまえ"と書いてある。
(PDFです) http://www.tokutek.com/wp-content/uploads/2014/03/QuickStartGuide-7.1.5.pdf

InnoDBと一緒に使うと、コイツらでメモリーの割り当てを奪い合うことになりそうなので、できればTokuDBを使うところはTokuDB一本でいきたいところ。

ここでmysqldを再起動すれば、さっきのスクリプトでINSERTされたmysql.pluginが読み取られるので、次に起動してきたときにはTokuDBが有効になって起動してきます。


7/11のMySQL Casual TalksはTokuDBで行こうかと思っているので、カブる方はご連絡ください :)

0 件のコメント :

コメントを投稿