今日は会社でハードウェアの障害対応とか、JunkStageでDBの障害とか障害の多い日だった。
会社の障害対応の内容は書けなそうなので、JunkStageの内容をメモ。
JunkStage障害対応
ライターさんのページが見れないと連絡をもらって、とりあえずどんな現象か確認してみる。
DBじゃなかったのか・・。Webかなぁ。
それじゃ、Webかなぁ・・。
と思っていろいろ調べるけど何も原因が見つからない。
現象を再度確認
もう一度ブラウザでページを表示させながら原因を探していると、ブラウザにこんなメッセージが表示された。
WordPress database error: [MySQL server has gone away] SELECT option_value FROM xxx_options WHERE option_name = 'siteurl' LIMIT 1 WordPress database error: [MySQL server has gone away] SELECT option_value FROM xxx_options WHERE option_name = 'home' LIMIT 1 .....
「WebサーバーからDBにデータを取りに行ったけど、DBサーバーがどっかいっちゃったよ」ということらしい。
こんな感じ。
DBのテーブルでエラー?
ついでにひとつのテーブルしかエラーが出ていないので、DB全体ではなくて
テーブルを取得できない、更新できない、とかそんなのかなぁ・・と思ってみる。
そして、もう一度DBサーバーをあたってみる。
google先生は偉大
ついでにこのエラーでぐぐってみると「WordPress database error: [MySQL server has gone away]」いいページを見つけた。
http://neoinspire.net/archives/92*1
DB内のテーブルの修復
ということで、同じような症状の人もいたようだし、テーブルの修復をしてみる。
mysql> check table xxxx_options fast quick; +--------------------------+-------+----------+-----------------------------+ | Table | Op | Msg_type | Msg_text | +--------------------------+-------+----------+-----------------------------+ | dbname.xxxx_options | check | status | Table is already up to date | +--------------------------+-------+----------+-----------------------------+ 1 row in set (0.78 sec)
問題なさそう。
もうちょっと細かいチェックをしてみる。
mysql> check table xxxx_options extended; +--------------------------+-------+----------+----------+ | Table | Op | Msg_type | Msg_text | +--------------------------+-------+----------+----------+ | dbname.xxxx_options | check | status | OK | +--------------------------+-------+----------+----------+ 1 row in set (0.00 sec)
表示されないページを確認してみるけど、だめだ・・。
素直にrepair tableをしてみよう。
mysql> repair table xxxx_options ; +--------------------------+--------+----------+----------+ | Table | Op | Msg_type | Msg_text | +--------------------------+--------+----------+----------+ | dbname.xxxx_options | repair | status | OK | +--------------------------+--------+----------+----------+ 1 row in set (0.01 sec)
このあとページを見に行ったら問題なく表示されていた。
*1:とてもすばらしい