目次
MySQLに接続できない
久しぶりに、PHPとMySQで作っているサイトの更新依頼がありました。
テーブルの新規作成等が必要だったためローカルの開発環境から
phpMyadminでログインしようとしたんですが
「MySQL サーバにログインできません」
というメッセージが表示されログインできません。
原因がわからないので、とりあえずコマンドプロンプトを開き
mysql -uroot -p
からパスワードを入力後エンターを押します。
ログインはできるようです。
試しにSQLコマンドを試してみますがエラーが出ます。
そういえば以前も同じようなエラーが出たような・・・
MySQL5.7.4からパスワードの有効期限が設定された
記憶をたどって思い出しました。
MySQL5.7.4からパスワードの有効期限が設定されているため
有効期限が切れた後、のどちらかをしないとログイン以外
できなくなるんでした。
解決方法
解決するには
・パスワードを変更する
・有効期限を無期限に設定する
のどちらかです。
パスワードの変更は
mysql> set password for ‘root’@’localhost’ = password(‘xxxxxxx’);
で行います。
ただ、今回はローカルの開発環境のため、パスワードの変更は
したくない。
ということで有効期限を無期限に設定します。
下記のコマンドを入力しエンター
mysql> SET GLOBAL default_password_lifetime = 0;
これで無期限に設定されえます。
一応、無期限になっているか下記のコマンドで確認します。
mysql> SHOW GLOBAL VARIABLES LIKE ‘default_password_lifetime’;
default_password_lifetimeが「0」になっていればOK
無事にログインすることができました。