«

»

9月 21

MySQLのデータベースサイズをメール通知させる(失敗)

MySQLを、ちっこいけど高速なストレージ(SSDとか)に移動して使おうと思ったけど

 

 

データベースを入れているストレージが満タンになってシステム停止しちゃうのが怖い!!

 

 

そこで目標

  • データベース全体のサイズが知りたい
  • 複数のデータベース、それぞれのサイズもないとどのデータベースのせいで一杯かわからないよ
  • みやすくMB単位で。
  • 毎日レポートしてほしい

これをやってみましょう。

 

わりとぱっと思いつくのが df コマンド。

 

[testserver]# df -h
Filesystem            Size  Used Avail Use% マウント位置
/dev/mapper/VolGroup-lv_root
                       50G  1.4G   46G   3% /
tmpfs                 495M     0  495M   0% /dev/shm
/dev/sda1             485M   88M  372M  20% /boot
/dev/mapper/VolGroup-lv_home
                       74G  9.8G   60G  15% /home

 

…。できます。できますが、データベースのサイズはこれじゃーわかりません。

 

これはこれで、ディスクのサイズが一杯になってないかをメールすることができていいですけどね。

[testserver]# df -h | mail -s DiskSizeAlert your@mail.address

とコマンドラインから実行すれば DiskSizeAlert というタイトルで、dfコマンドの実行結果をメールで受け取れます。

crontabコマンドでcronにこれを自動的にやらせるには

[testserver]# crontab -e
0 6 * * * df -h | mail -s DiskSizeAlert your@mail.address

のように設定を1行追加します。

この例だと、DiskSizeAlertメールを毎朝6時に受け取れます。目覚まし代わりにどうぞ。

 

 

 

続く(というか終わらなかった)

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

次の HTMLタグおよび属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>