MySQL 5.5.28 をソースからインストール

必要なツールを yum でインストール.

mysql5.5 以降から cmake で configure するらしい.

[bash]

yum -y install wget

yum -y install gcc*

yum -y install make

yum -y install cmake

yum -y install ncurses-devel

[/bash]

5.5 系がよかったので 5.5.28 を以下からダウンロード.

[bash]

wget http://dev.mysql.com/get/Downloads/MySQL-5.5/mysql-5.5.28.tar.gz/from/http://cdn.mysql.com/

[/bash]

ソースからのインストールなら以下を読むとよい.

2.10. Installing MySQL from Source

cmake で configure.

[bash]

cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql-5.5.28 -DMYSQL_DATADIR=/var/mysql/data -DENABLED_LOCAL_INFILE=1 -DWITH_EMBEDDED_SERVER=1 -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all -DWITH_INNOBASE_STORAGE_ENGINE=1 -DENABLE_DTRACE=1 -DENABLE_GCOV=1 -DWITH_DEBUG=0 -DENABLE_DEBUG_SYNC=0

...

make[2]: DTRACE-NOTFOUND: コマンドが見つかりませんでした

make[2]: *** [include/probes_mysql_dtrace.h] エラー 127

make[1]: *** [CMakeFiles/gen_dtrace_header.dir/all] エラー 2

make: *** [all] エラー 2

[/bash]

dtrace がない(?)とかでエラー.(以下ちょっと無駄な作業が発生しますので適宜読み飛ばしてください)

[bash]

wget http://www.brendangregg.com/DTraceToolkit-0.99.tar.gz

tar zxvf DTraceToolkit-0.99.tar.gz

./install

-bash: ./install: /usr/bin/ksh: bad interpreter: そのようなファイルやディレクトリはありません

[/bash]

ksh がないとかでエラー.

[bash]

yum ksh

...

-bash: ./install: /usr/bin/ksh: bad interpreter: そのようなファイルやディレクトリはありません

[/bash]

./install の path を無理やり書き換えて... /bin/ksh

[bash]

./install

DTraceToolkit Installation

---------------------------

./install[25]: cat: not found [そのようなファイルやディレクトリはありません]

hit Ctrl-C any time you wish to quit.

Enter target directory for installation [/opt/DTT]:

[/bash]

わからないので Enter! したけどやはり根本的に違うっぽいのでもういいやー

-DENABLE_DTRACE=0 に変更して再度チャレンジ.

[bash]

cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql-5.5.28 -DMYSQL_DATADIR=/var/mysql/data -DENABLED_LOCAL_INFILE=1 -DWITH_EMBEDDED_SERVER=1 -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all -DWITH_INNOBASE_STORAGE_ENGINE=1 -DENABLE_DTRACE=0 -DENABLE_GCOV=1 -DWITH_DEBUG=0 -DENABLE_DEBUG_SYNC=0

...

make

...

make install

...

[/bash]

OK牧場

[bash]

chown -R mysql.mysql .

cd /usr/local/mysql-5.5.28/

./scripts/mysql_install_db --user=mysql --datadir=/var/mysql/data

chown -R mysql.mysql /var/mysql/data

cp ./support-files/mysql.server /etc/init.d/mysqld

/etc/init.d/mysqld start

Starting MySQL. ERROR! The server quit without updating PID file (/var/lib/mysql/www3262ui.sakura.ne.jp.pid).

[/bash]

あひゃー. と思ったけど /etc/my.cnf を修正したら無事起動した

ちなみに dtrace の件、 document 見たけど ENABLE_DTRACE が動くのは 5.5.7 からなのかな?

2.10.4. MySQL Source-Configuration Options

まあいいよ色々見れたしうん.

そして 全文検索エンジンgroongaを囲む夕べ 3 @groonga 補欠った!

以下のサイトを参考にしています.

MySQL 5.5 ソースからビルド