ターミナルからの操作で対応して、GUIで操作が出来るものがあると便利だろうなぁ〜
とつくづく思っていたときに、MySQLにも「phpmyadmin」でDBの管理が出来ること知り、
昨今ではよく使うようになったこの「phpmyadmin」を更新したときに発生した
エラーの対応の備忘録となります。
Webブラウザからログインしたときに、
mysqli::real_connect(): (HY000/1045): Access denied for user ‘phpmyadmin’@’localhost’ (using password: YES)
と表示がされている箇所を見つけ、ユーザ phpmyadminがlocalhostからパスワード付きでアクセスできない !
とのことで、ユーザアカウントのタブのユーザの設定を見てみると、
phpmyadminのホスト名のカラムが'%'、パスワードが空欄となっていたため、
操作の「権限を編集」から
ホスト名:localhost
パスワード:再登録
をしたのち、MySQLを以下で再起動
$sudo systemctl restart mysql
そして、上記の画面が表示されていることを確認後してOK !
同様に、controluserについてもパスワードが無かったため、
同じくパスワードを設定し、上記同様に確認してOK !
ちなみに、変更しても以下「権限の再読み込み」のところをクリックしないと正常に変更後の情報が表示されないため要注意。
更新すると予期せぬところに影響が出るため、事前にローカル環境でテストを実施してから本番環境へ実装することはマストですね。
あとは、DB、テーブルを作成して、SQLを使った処理をすればよいので、
このあたりはPostgreSQLと同じ。(言語は関係無し)
MySQLとPostgreSQlは、基本的なことは同じですが、それぞれもっている特徴は異なり管理・保守も異なるため、もし両方のDBを使っている場合は、相違点を一覧表にして、同じもの/違うもの/機能がないもの等を一覧表に取りまとめておくと、次のDB担当者が理解した上で管理・保守が出来き、トラブル対応時にも役立つため、是非作成しておいてください。