皆さん、こんにちは!
本日はMySQLについてです。
良かれと思い、ランダムの文字列をパスワードに設定したら。。
たまたま@
が含まれていて正しくDBのホスト名が認識されていなかったので、
パスワードを再設定しました。
その際のメモをまとめておきます。
パスワードの変更方法
ユーザのパスワードを変更する際に、以下コマンドを実行したら。。
Warningを吐かれました。。
> SET PASSWORD FOR {user} = PASSWORD('{password}');
0 row(s) affected, 1 warning(s): 1287 'SET PASSWORD FOR <user> = PASSWORD('<plaintext_password>')' is deprecated and will be removed in a future release. Please use SET PASSWORD FOR <user> = '<plaintext_password>' instead
上のコマンドは、現在(2021/06/18) deprecated(非推奨)みたいですね。
なので、普通に以下のMySQLコマンド打てばいいみたいです。
> SET PASSWORD FOR <user> = '<plaintext_password>';
例えば、以下コマンドでユーザを確認したとき。
> select user, host from mysql.user;
| user | host |
|------|------|
| test | % |
ユーザtest@%
に対して新パスワード(“new_password”)へ変更する場合は、以下となります。
> SET PASSWORD FOR test@'%' = 'new_password';
ではでは!