binlogでdiskfull
重たい集計処理を改修したので、集計結果に誤りがないか確認をしたかった。
そのテストのために、集計対象のデータを本番のDBからdumpし開発環境に突っ込んだ結果diskfull。
原因は、binlogでした。*1 *2
解決方法は2つ
- LVMで開発環境下なので、容量を足す
- binlogを消す
1の方法ですぐに解決したと思うが、
binlogの削除をやったことがなかったので2つめの方法をやることに。
binlogの削除 - purge master log
ぐぐったら、purge masger log でbinlog削除できそう。
でも、diskfull状態でうまくいくのか → うまくいきませんでした。
binlogの削除 - rm
purgeがうまくいかなかったので、rmすることに。
さて、MySQLが動いている状態でrmしていいものか。
すくなくとも、現在openされているbinlogをrmで削除するのはマズイ気がする。
よって、MySQLを止めた後にrm。
ついでに、binlogを吐かないように設定変更しMySQL起動。
まとめ
開発環境だからって対応が適当すぎだと書いてて思った。
あと、いい加減会社に鍵本を持って行かないと。