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