CORESERVERでのMySQL接続エラー 発生から解決まで

投稿日:

5/10 エラー発生

エラー発生

いつものようにブログを書こうと思ってMTの管理画面(mt.cgi)にアクセスした時のこと。以下のようなエラーが表示され、見られなくなっていました。

Access denied for user 'xxxxx_5'@'localhost' (using password: YES)

同じサーバーに入れている他のブログはどうだろうと思って見てみると、やはり同じようなメッセージが出て表示されなくなっていました。それが5月10日夜のこと。

応急処置

  • MovableType - 検索などが使えなくなるものの静的HTMLなので一応は表示されるのはありがたいところ。index.htmlを直接書き換えてトップページにお知らせを出しました。
  • WordPress - こちらは動的生成なのでページが表示されず。急遽お知らせ用のindex.htmlを作ってトップディレクトリに置きました。

エラーメッセージをそのまま検索したり、サポート掲示板を見るなどして解決方法を探します。いくつかそれらしい方法を見つけましたが、一時的なものかもしれないのでしばらく待ってみることに。同じサーバー(s59)の別の方も同じ件で困っているとの書き込みを見つけ、全体のことかもしれないと思ったからです。

- スポンサードリンク -

5/11 8つのMySQLのうち5つが復旧

5つは復旧

翌日(翌々日?)にブログを見ると、8つ作っているDBのうち5つはログインできるようになっていました。(たまたまその5つがWordPressでした。)つながらない3つのうち、2つはたいしたものが入ってなかったので削除。しかし残りの1つ...このブログは中身が詰まっているのでなんとか復旧させたい。下手にいじる前にサポートに問い合わせてみることにしました。

5/14 サポートに問い合わせ

access_denied3.gif

VALUE DOMAINの「サポート」からサーバー名、アカウント名、データーベース名を添えて調査を依頼しました。

5/21 サポートから返事

以下引用。phpMyAdminの設定ファイルを書き換えてくださいとのことでした。

お問い合わせについてですが、エラーの

#1045 - Access denied for user 'xxxxx_5'@'localhost' (using password: YES)

が、出ておりました。

対処方法としては、複数のデータベースをご利用になる場合は、設定ファイル「config.inc.php」のパスワードなどを変更していただく必要がありますので、そちらをお試しいただければと思います。

また、config.inc.php がどこに置かれているのかですが、

/public_html/log/phpmyadmin 配下にあります。

5/21 dumpからの復元で解決

config.inc.phpを見てみる

言われたとおりconfig.inc.phpを見てみましたが、それらしい項目が見あたりません。サポート掲示板でエラーメッセージを検索すると解決方法が出てくるのですが、74~76行目を修正...などと書かれています。私の場合行数が60行ぐらいまでしかないのです。

多分、こちらの方と同じ状況だと思われます。回答によると、"cookieを使ってログインする場合はユーザ名、パスワードは設定ファイルに書きません。"とのこと。

sshでコマンドを打ってみる

わからないので別の方法をためしてみることに。sshを使ってパスワードを設定し直せば良いということなのですが、こちらも良くわかりませんでした。解決には至らなかったものの、ずっと気になっていたシェルを試してみることができたのは収穫でした。sshの使い方については別に記事を書きます。

dumpから復元

コントロールパネルのデータベースの画面を見ていて、「保存」と「復元」というボタンがあることに気づきました。これを使ってどうにかできないかと思い始めました。

ひとまず問題のDBのラジオボタンにチェックを入れて「保存」をクリック。FTPからDLして中身を見てみると、しっかり内容が保存されていました。

入れなくなっているDBを消し、同じ名前で新しくDBを作成。あとは「復元」ボタンをクリック。これで元の状態に戻すことができました。

- スポンサードリンク -