MySQLが起動も再起動もできない際の対応方法
2024/02/25
サイトで障害が発生した。FTPやSSH接続は出来るけどサイト自体は表示されない。MySQLが原因っぽいのでMySQLを再起動しても改善されず。また、サーバー自体を再起動しても改善されなかった。
TOPコマンドで動いているサービスを見ると、動いていないはずのMySQLがのっているというよく分からない状態だった。
結論として原因はサーバのHDDをフルに使っている状態だった。自動更新系のサイトだったので勝手に容量が増えていき、満タンになっていた。
便利だったコマンド
find /var -size +100M -exec ls -lh {} \;
100MB以上のファイルを検索する。古いログとかを抽出して消していけば良い。
MySQLのログ
/var/log/mysqld.logに保存されているので、エラー詳細を確認したい場合はこちらを見る。
その他
HDD容量を増やす事が出来れば一番楽だけど、難しい場合もある。日々のサーバーのチェックは前日のメモリ使用量だったり、ロードアベレージを見ていたけど、HDD使用率も念のため見ていたほうが良さそう。
関連記事
-
-
MySQLで全文検索(フルテキストインデックス)を使用する方法
普段利用しているサイトに検索用のテキストボックスがあり、そこに何らかのワードを入 ...
-
-
MySQLで特定のテーブルにパーティショニング設定し高速化を図る方法
以前に他社が設計されたログ系のテーブルを拝見した際にパーティショニング設定が行わ ...
-
-
MySQLでスレッドの実行状況を表示しスレッドの経過時間チェックや特定スレッドを強制終了する方法
データベースサーバが重たく、原因を調査する機会があった。サーバ自体のメモリやCP ...
-
-
MySQLで1対多というテーブル構造でデータ結合と条件検索する方法
MySQLで飲食店舗テーブルと休業日テーブルがあり、1店舗に対して複数行の休業日 ...
-
-
MySQLにてSELECT時にdate型のカラムから年齢を計算し取得する方法
MySQLにdate型のカラムに誕生年月日が格納されており、そこから年齢を計算し ...