MySQLの運用メモ
MySQLを運用した際の知見をまとめる。
Too many connectionsの発生
- 問題
- Too many connectionsのエラーとなる。
- processlistで確認したときに、Command: Sleepが大量発生していた。
- 原因
- Goのトランザクション処理でClose処理に漏れがあったため、コネクションを開き続けてしまっていた。正常に終了したらエラーは直った
deadlock/conflict
SHOW ENGINEでデッドロック情報を確認する
LATEST DETECTED DEADLOCK
に記載されている。
https://dev.mysql.com/doc/refman/5.6/ja/show-engine.html
Disk CRITICAL
- 問題
- 対処
- 不要なテーブル、データを削除
- バイナリログを削減
- バイナリログを削除する日数
expire_logs_days
を指定する
- 何も指定しないと、ずっと削除されないので注意が必要