カイワレの大冒険 Third

技術的なことや他愛もないことをたまに書いてます

MySQL 5.5をソースからインストールしてみた

せっかく5.5出てるんだし、どんなもんか使ってみたいと思ったものの、yumで入れる記事が多くて、ソースから入れるものあまり見当たらなかったので、書いておきますです。

$ cd /usr/local/src
$ wget http://dev.mysql.com/get/Downloads/MySQL-5.5/mysql-5.5.9.tar.gz/from/http://ftp.iij.ad.jp/pub/db/mysql/
$ tar xvzf mysql-5.5.9.tar.gz
$ cd mysql-5.5.9

ここまでは単にソースを探してダウンロードするだけ。
5.1まではこのあと「./configure」をオプション付きでやるんですが、5.5ではcmakeを使うようなので、やってみます。

# yum search cmake
#レポジトリ新しく追加しなくてもよいんだっけ。。。ここもソースからやるべき?
# yum install cmake
$ cmake . -DDEFAULT_CHARSET=utf8 -DCMAKE_INSTALL_PREFIX=/usr/local/mysql
$ make
# make install

エラー出た場合は何かが足りないのでしょうが、既に5.1が動いていた環境のせいか特にエラーはありませんでした。
※5.1と競合起こしたくなかったし、データファイルなど消しても特に問題なかったので、data\_dirは消しています。rmしなくてもmvでよいかな。

# mkdir /usr/local/mysql/data
# chmod 775 /usr/local/mysql/data
# chown mysql:mysql /usr/local/mysql/data

んで、データディレクトリを作ったんだけど、次がちょいと迷った。
「mysql_install_db」って「/usr/local/mysql/bin」にあった記憶があるんだけど、ないからあれと思いました。5.5は「/usr/local/mysql/scripts/mysql_install_db」にあるんだね。

# /usr/local/mysql/scripts/mysql_install_db
# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
# chmod 755 /etc/init.d/mysql
# /etc/init.d/mysql start #エラーでるはず
# chown -R mysql:mysql /usr/local/mysql/data
# /etc/init.d/mysql start

って感じかしら。

あとは、my.cnfのコピーとか、mysql_secure_installationの実行、rootのパスワード、ユーザ作成とかやって、パラメータ調整して終わりかな。dataディレクトリ以外の場所にデータ置くならmy.cnfにも書かないとだめだよ。socketとかpidも同じかな。

すごーくざっくり書いたので、その設定危ないよ、mysqlユーザで全部やるべきじゃねとかあったらツッコミお願いします!