院生エンジニアのにっき

  • Change style to Blue
  • Change style to Red
  • Change style to Green
  • Change style to Pink

MySQLのチューニング   2007-04-10

ちょっと訳あってMySQLのチューニングなんてのをしています(そこらへんはほんと苦手です・・・)。

http://www.res-system.com/item/550

http://slashdot.jp/journal.pl?op=display&uid=4&id=26710

http://allabout.co.jp/internet/database/closeup/CU20040722A/

ここらへんのサイトを読んで基本的(ごくごく基本的な初期設定レベルですが)なとこは分かりました。

まず、僕のサーバーの設定は

  1. mysql> SHOW VARIABLES;

で見ることができます(当然・・)。それを見た感じ、

  • key_buffer_sizeが8M
  • table_cacheが64

となっていたんでmy.cnfに

  • set-variable = key_buffer=32M
  • set-variable = table_cache=256

と追加しておきました。


ちなみにMySQLの再起動は

  • service mysqld stop
  • service mysqld start

もしくは

  • service mysqld restart

でできます。


サーバー管理者さんにとっては簡単なことでも、僕にとっては30分以上かかる大仕事でした・・・。


もっと勉強しますorz..


まぁなぜMySQLのチューニングをしないといけなかったかと言うと、以前卒論のためにRSS Readerを作ったのですが、最近DBのデータが増えてきた(大きいテーブルで100M程度)せいか非常に重たくて使えなくなってしまったからです。使えなくなっていたのに、大学院で卒論で何をしたか発表した際に準教授からいきなり、「研究会で発表したらどうだい?」と言われてしまったためなんとしてでも使える代物に修正しないといけなくなったためだったんです・・・。

しかし上の修正+外部キーを適切に指定することによってパフォーマンスは驚くほど回復して、これでやっとプログラミングに専念できるようになりました。まずは過去の僕のトリッキーコードの解明ついでにLet'sリファクタリングです☆



コメントを書く