MySQLの設定ファイルmy.cnfをいじってslow-queryを検出する

はてなダイアリーからはてなブログに引っ越してきました

  • githubで慣れたmarkdown記法が使える
  • gistのコードが貼り付けられる

あたりがはてなブログの利点かな

markdownで下記のようなコードシンタックスが付くのは楽ちんでいいですね。

function animationPipe(queue, element) {
    return $.when(queue).pipe(function(){
        return $(element).fadeIn(800);
    });
};

次のように書くとgistのコード埋め込みもできるようだ

[gist:4381079]

(シンタックスハイライトのcssがうまくいかない。。)

my.cnfはgithubのdotfilesで管理

さてさて、本題にはいる。

mysql.my.cnfファイルに設定を書いておくとclient/serverの設定を変更できる。 私のmy.cnfはgithubで管理している。 https://github.com/bluerabbit/dotfiles/blob/master/dot.my.cnf

例えば下記のように書いてmysqlを起動するとlong_query_time 秒より実行に時間がかかる SQL は全てslow-query-log-fileに指定したファイルに出力される。開発中はターミナルでtail -f mysqld-slow-query.logしておけば処理時間が遅いSQLがわかるようになるのでおすすめ。

[mysqld]
long_query_time=1
slow_query_log=1
slow-query-log-file=~/mysqld-slow-query.log

http://dev.mysql.com/doc/refman/5.1/ja/slow-query-log.html