munin mysql_isam_space_ の division by zero エラー対策

CentOSに5.xにrpmforgeからmuninをインストールしましたが、mysql_isam_space_がエラーを吐きます。


Illegal division by zero at /etc/munin/plugins/mysql_isam_space_xxxx line 220, line 1.

で、その対策パッチ

  1. mysqlshowの結果をパースしているあたりが怪しいので修正。
  2. Max_data_lengthが0の場合の対策。

これで、munin-node-configure –suggest で、ずらずら候補が表示されればうまくいきます。
後は、munin-node-configure –suggest –shell | /bin/sh でリンクを張って、munin-nodeをreloadすればOKです。

うまくいかないときは、statefile (/var/lib/munin/plugin-state/plugin-mysql_isam_space.state)のパーミッションと更新時刻(更新時刻が1時間以内だと、処理をスキップするようです)が怪しいので、見直してください。

で、とりあえずグラフ化されるようになったのですが、なんか値が0.00ばっかりで、見ててもつまらないです。
InnoDBだと、Max_data_lengthの値が0なので、意味がないですし。。
設定ファイルでabsoluteを1にすれば、Data_lengthの値がそのまま出るので、こちらの方が実用的かもしれません。

CakePHP MySQLのバックアップ(mysqldump)を行うバッチ

CakePHP1.2からコマンドラインからCakeが起動できるようになりました。
この機能を使って、MySQLのバックアップを行う簡単なスクリプトを作成してみました。
データベースの接続には、/app/config/database.phpの接続情報を利用しています。

Read more