WordPressをちょっとチューニングしてみたいと思ったので、
自動バージョンアップされても影響受けなそうな、DB周りをいじってみたいと思います。
どのテーブルにどんなクエリがどのくらいくるの?っていうのを把握したいので、
MySQL Proxyを入れてみました。さくらのレンタルサーバですが、怒られたりしないかな・・・?
※これを参考に同じことをやってみたい人は自己責任でお願いします。
- インストール
- 起動
MySQL Proxyはαバージョンです。
まだ、バグ等あるかもしれませんので、商用利用のサイトでは使用は避けた方が良さそうですが、
ブログくらいだったら全然問題ないですね。
まずはMySQLの公式サイトからダウンロードしてきます。link : MySQL Proxy Alpha
とりあえず最新版でいいですね。
自分の場合はFreeBSD 7.1だったので”FreeBSD 7 (32 bit)” のリンクからダウンロード。
一応さくらのサーバにSSHして確認してみたらいいと思います。
tar.gz ファイルがダウンロードできたら、適当な場所にFTPなどで転送しましょう。
wwwの下じゃなければどこでもいいです。 /home/username 直下でかまわないと思います。
置けたら tar コマンドで展開して、mysql-proxyのディレクトリを作りましょう。
mv で名前を変えてもいいんですが、バージョンアップもあるかもしれないので、
今回はリンクを貼るだけにしました。
user% cd $HOME user% tar zxpvf mysql-proxy-0.7.2-freebsd7-x86-32bit.tar.gz user% ln -s mysql-proxy-0.7.2-freebsd7-x86-32bit mysql-proxy
これでインストール完了。これだけです。
mysql-proxy のコマンド自体は、 /home/username/mysql-proxy/sbin/mysql-proxy になります。
次に起動方法ですが、Mysql Proxy は設定を増やすと
どんどん起動コマンドのお尻が長くなってしまうので、
まずは設定を記述するためのファイルの作成から。
user% cd $HOME/mysql-proxy user% vi mysql-proxy.cnf
↑ エディタだったら何でもいいです。
ローカルで書いてFTPしてもいいです。内容は以下。
[mysql-proxy] daemon = true pid-file = $HOME/mysql-proxy/mysql-proxy.pid log-file = $HOME/mysql-proxy/mysql-proxy.log log-level = debug proxy-address = 127.0.0.1:3306 proxy-backend-addresses=mysqlXXX.db.sakura.ne.jp proxy-lua-script = $HOME/mysql-proxy/share/doc/mysql-proxy/histogram.lua
$HOMEとproxy-backend-addressesは自分の環境に合わせて書き換えてください。
log-levelは、自分の場合いろいろ見たいのでdebugにしてますが、
興味ない人は infoかwarningくらいにしておけばいいでしょう。
proxy-addressは 127.0.0.1:4040 がmysql-proxy のデフォルトです。
変更したい場合はしてもいいと思いますが、ポート番号は3306にしておきましょう。
ポート番号を変えるとWordPress 側に入っていない設定入れることになるので、
おすすめしません。
proxy-lua-scriptは、当初の目的の
どのテーブルにどんなクエリがどのくらいくるの?っていう解析をするためのスクリプトです。
最初からおまけとしてついてくるのがうれしいですよね!
ファイルの作成が完了したら起動してみましょう。
user% $HOME/mysql-proxy/sbin/mysql-proxy --defaults-file=$HOME/mysql-proxy/mysql-proxy.cnf user% ps aux | grep mysql
これでmysql-proxyのプロセスが見えたらOK。
設定に変更を加える場合は、設定ファイルを書き換え後、一旦プロセスを切ってから起動しなおして下さい。
user% kill -9 `cat $HOME/mysql-proxy/mysql-proxy.pid`
※WordPressの接続をMySQL Proxy経由にした後は、不用意に切らないこと。
接続できるか確かめてみたい場合は、普段使用している接続文字列のホスト名の部分を、
mysqlXXX.db.sakura.ne.jp から 127.0.0.1 に変更してみて下さい。
まずはここまで。
WordPress側の設定については、次に書こうと思います。