MySQL Tunerってなに?
- チューニングをアドバイスしてくれるツール
- チューニングに限らず、セキュリティ診断までしてくれる
- パラメータやバージョンでの問題点を洗い出してくれるツール
- Git Hubに上がってる(https://github.com/major/MySQLTuner-perl)
- Perl製
- サポート状況については以下の通り
- (でもMySQL5.5でも十分に情報が出力されてること確認) https://speakerdeck.com/mamy1326/mysql-performance-tuning-basics-in-db-study-chugoku-chiho?slide=48 でまみーさんが使ってたので、うちの環境もちょっと見てみるか!と思い立ったのがキッカケ。
インストール
とても簡単
1. ファイルゲット
$ git clone https://github.com/major/MySQLTuner-perl.git
2. plファイルに権限与える→準備終わり
$ cd MySQLTuner-perl/ $ chmod 755 mysqltuner.pl
使い方
ローカルにあるDB
perl mysqltuner.pl --user <username> --pass='<password>'
でOK
リモートにあるDB
perl mysqltuner.pl --user <username> --pass='<password>' --host=<hostname|ipaddress> --port=<portnum> --forcemem 256
でOK
forcememオプションはMySQL Tunerがインストールされてるマシンのメモリを何MB使うのか?を指定するっぽい。 リモートの時は強制的に指定させられる。
[!!] The --forcemem option is required for remote connections
実行時に上記のようなエラーメッセージが表示される。 (ローカルだとDBサーバのメモリ使うからか指定がいらない→危なくね?)
社内の本番環境をチェックしてみた
対象はMySQL5.5系(5.5.20)