2017 01,18 13:49 |
|
安定稼働していたサービスは、とくに変更などの要件などが
なかったから放置していたのですが、 久しぶりに大量のデータを変更欲しいと依頼 その対象のDBにログインをしたら、HDDが72%まで使用していた 依頼のデータ変更をしたのちに、HDDを圧迫している原因を調査したら、 MySQLのバイナリーログが200を超える数に そんなわけで、今回は、バイナリーログの肥大化の対応 とりあえず、HDDを空けるために、 mysql> show slave status \G で確認(スレーブを使用しているので) mysql> show master logs; で、MySQLが管理しているバイナリーログを一覧で表示 mysql> purge master logs to '削除するログファイル名'; で、ログデータを削除 例えば、mysql-bin.010 とファイル名をした場合、 mysql-bin.009まで削除されます。 mysql> show master logs; で削除されたかどうかを確認。OK! で、肥大化させないために、バイナリーログの保存期間を設定 MySQLを再起動させたくないので、my.cnfには記載せずに、 mysql> show global variables like 'expire_logs_days'; で、現状の設定を確認したら、0(削除しない)になっていたので mysql> SET GLOBAL expire_logs_days = 30; で、30日に変更 これで、一安心 ちなみに、my.cnfに設定する場合 [mysqld]
expire_logs_days=30 とするらしいです。 PR |
|
コメント |
コメント投稿 |
|
忍者ブログ [PR] |