とあるエンジニアの作業ブログ

Web製作 マシン環境

MAMPを移行したらphpMyAdminが起動しなくなった

投稿日:2019年3月25日 更新日:

古いMacからMAMPを個別に移行したら、phpMyAdminが起動しなくなった。
どうやらMySQLのユーザー/パスワードが不一致になってしまったようだ。
関連して他のエラーも発生したため、一連で対処した時の内容をメモ。

どんな移行を行ったか

Time Machineで旧Macのバックアップを取得し、ファイルを丸ごとリストアしようとしたところ、、、ユーザーまで含めてまとめてのリストアになることを知り、急遽個別リストアに切り替えた。

Time Machineに入る >旧Macのバックアップの中から、アプリケーション配下のMAMPを選択し右クリックで「”MAMP”の復元」を選択 >新Macのアプリケーションを復元先に指定

当初はこれでうまく動いている風だったので、「なんて優秀!!」と感動していたら・・・

エラー概要

MAMPを起動し、ツール >phpMyAdmin と選択したら、以下のようなエラーが発生。

  • MySQL サーバーに接続しようとしましたが拒否されました
  • config.inc.phpのユーザー名かPWが一致しません

対象のファイルまで教えてくれているので、素直に「/Applications/MAMP/bin/phpMyAdmin/config.inc.php」を覗きにいくが、

どちらも正しいように見える。。。

対処方法

MySQLのユーザーのパスワード変更

DB直接覗きにいくしかないと思い、MySQLに直接ログインするも・・・

phpMyAdminで出たエラーと同じエラーになる。
つーことはMySQL userのPW自体が移行によりなぜか変わった(もしくは不整合になった)ということだ。

ログインできないと話にならないので、ちょっと調べたところMySQLをセーフモードで起動するとPW無しでログインできることが判明。

常駐プロセスが動くので、別ターミナルでMySQLにログイン。

ここまでできたら、PW変更するだけ。

一度exitして、先ほど変更したPWでログインできるか確認。

無事成功。
ちなみに、常駐プロセスが動いているターミナルの方はcontrol+cを押しても終了しなかったので、ウィンドウを閉じることでセッションをぶった切った。
正しい終了の仕方は不明。

今度はWebサイトが表示されなくなった

上記対策でphpMyAdminは起動するようになったが、今度はWebサイト自体が表示されなくなってしまった!
しかし、ちゃんとエラーハンドリングが聞いているらしく、

データベース接続確立エラー。wp-config.phpのパスワードかユーザーがおかしいんじゃない?

という旨のエラーメッセージを表示してくれる。ホント優秀。

wp-config.phpの設定値変更

ということで、wp-config.phpを覗きにいく。
SQL叩いている時も思ったが、passwordとかは暗号化されてるかなんかで見ても合っているのかどうかわからないので、上で変更した内容に合わせることにした。

上の35行目を新しいPWに編集。当然編集自体は平文でOKだが、保存すると勝手に暗号化されるっぽい。

MAMPの「サーバーを起動」でMySQLが上がってこない

これで復旧しただろと思いきや、今度はMAMPの「サーバーを起動」でMySQLだけいつまでたっても上がってこない状態になった。
Apacheは上がる。
どう考えても、MySQLをセーフモードで起動した手順が怪しいので、psコマンドでプロセスを確認してみると、MySQLのプロセスがいくつか動いていたので全部強制的にKILLしてやった。

復旧と原因の考察

上記の手順を経てようやく復旧&移行完了。

今回の原因って、多分移行したことでシステム領域に持ってる暗復号化キーが齟齬って、元は同じPWでも暗復号化結果が異なってしまいアンマッチになったんだろう。
最初にWebサイトは表示されたのに、phpMyAdminが起動しなかったのは、設定ファイルにPWを平文で持っているか暗号化された形で持っているかの違いだろう。(Webサイト側の設定ファイル(wp-config.php)は暗号化された形で持っているのでキーが変更になっても影響を受けなかった。phpMyAdminの設定ファイル(config.inc.php)は平文で持っているので、キーが齟齬ってしまうと暗号化結果が変わってしまうのでDBにアクセスできない。仮にそれが本当だとするとセキュリティ的にあまりよろしくない作りだけど。。。)
多分Time Machineで丸ごと移行したらキーまでセットで移行されるから起きないのかな??
まぁそうそうやることないのでこれ以上深追いはしないことにします。
 
 

 

-Web製作, マシン環境
-,

執筆者:


comment

メールアドレスが公開されることはありません。

関連記事

DMM電子書籍の広告を自動出し分けするショートコード

DMM電子書籍のアフィリエイト広告は、そのままだとiframe使ってたり味気なかったりで使い勝手が悪いので、自分でカスタマイズしてみました。 ついでに、前に作ったアフィリエイト自動出し分けショートコー …

Stinger8のサイドバーにプロフィールを表示する

Stinger8のサイドバーにプロフィールを表示します。 目次 前提 作業手順 ウィジェットにHTMLを記述 CSSで見た目を整える 前提 WordPressがインストールされている Stinger8 …

クラウドストレージ比較 〜Dropbox、iCloud、Adobe CC〜

Mac新調に伴い、ローカルストレージが256SSDになってしまったので、ローカル保存を極力排除しクラウドストレージへの移行を検討。 ざっくり必要な要件は以下。 メインマシンはMacだが、Windows …

【超初心者向け】githubでテーマファイルをバージョン管理する

恥ずかしながらgitでリモートリポジトリ管理するのが初めてなので自分用のメモ。 目次 やりたいこと 動作環境・前提 テーマファイルをmasterブランチで管理するまで 開発用のfeatureブランチ作 …

CSSで背景(background-color)を斜めにする

本サイトの紹介ページのように、CSSだけで背景を斜めにします。 目次 やりたいこと HTMLとCSS ポイント やりたいこと 以下のように右斜め上を支点として回転させ、二つのイメージが同色で重なること …