MySQL 5 の場合はmytopよりinnotopのほうがいいかも

MySQLのモニタするのに便利なmytopなんですが、MySQL 5に対して使うと、クエリの割合表示が全部ゼロになってしまったります。

これは、MySQL 5.0.2でSHOW STATUS文が変更され、GLOBALかSESSIONというオプションを指定できるようになったことに起因します。このオプションを省略した際はSESSIONを指定したときと同じ動作となり、SHOW STATUS文で得られるのは自分自身の接続についての情報のみとなります。

mytopはオプションなしのSHOW STATUS文を使っているので、MySQL 5ではmytop自身の接続についての情報しか得られず、その影響として、クエリの割合表示が全部ゼロになってしまったりするわけです。

対応は簡単で、mytopのSHOW STATUSをSHOW GLOBAL STATUSに書き換えればいい(書き換えるとMySQL 4.1以前と動かなくなります)のですが、もっといいツールがあります。

です。

名前を見るとInnoDBに特化したツールな雰囲気がしますがさにあらず。

こんな機能をもっています。

  • クエリの一覧 (mytop相当)
  • InnoDBトランザクションの一覧
  • InnoDBのロック獲得待ちの一覧
  • InnoDBで発生したデッドロックの一覧
  • InnoDBで発生した外部キーエラーの一覧
  • InnoDBの内部情報の表示
  • InnoDBの各種バッファの表示
  • InnoDBのI/O情報の表示
  • 処理したクエリ数などのグラフ表示
  • 処理したクエリ数などの数値表示
  • SHOW GLOBAL STATUSやSHOW VARIABLESの表示

ステキなツールなんで是非、お試しあれ。