エラー: #1045 - ユーザー 'root'@'localhost' のアクセスが拒否されました (パスワードの使用: YES)
問題
ユーザーが次のような問題に遭遇しました。 root ユーザーとパスワードを使用して MySQL に接続しようとすると、通常は MySQL コンソールまたは phpMyAdmin 経由でアクセス拒否エラーが発生します。構成ファイル config.inc.php は正しい資格情報で構成されていますが、ログインはまだ失敗します。
解決策
この問題を解決するには、次の手順に従ってください:
-
root パスワードを変更します:
コマンド プロンプトを使用して mysql -u root -p を実行し、root ユーザーを使用して MySQL に接続します。パスワードの入力を求められたら、既存のパスワードを入力するか、config.inc.php のAllowNoPassword オプションが true に設定されている場合は空白のままにします。
-
パスワードの更新:
接続したら、次のコマンドを実行して root パスワードを更新します:
UPDATE mysql.user SET authentication_string=PASSWORD('MyNewPass') WHERE User='root';
'MyNewPass' を新しいパスワードに置き換えます。
-
config.inc.php を編集します:
config.inc.php のサーバーセクションのパスワードフィールドを新しいパスワードで更新します:
$cfg['Servers'][$i] ['password'] = 'MyNewPass';
-
MySQL サービスを再起動します:
MySQL サービスを停止して再起動します。
-
接続を確認します:
更新されたパスワードを使用して MySQL へのログインを再度試みます。
追加の注意事項
- MySQL バージョン 5.7 以降が使用されている場合は、authentication_string を使用する必要があります。 SQL 更新コマンドのパスワードの代わりに。
- 問題が解決しない場合は、MySQL サービスが正しく実行されていること、接続をブロックしているファイアウォールやウイルス対策の制限がないことを確認してください。
- 別のパスワードを作成することを検討してください。 root ユーザーを使用するのではなく、phpMyAdmin で使用するための制限された権限を持つユーザー。
以上がroot として MySQL に接続すると「アクセスが拒否されました」エラーが発生するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。