MySQLのrootログインで「Access denied for user 'root'@'localhost' (using password: YES)」に遭遇した場合の対処

MySQLのrootログインで「Access denied for user 'root'@'localhost' (using password: YES)」に遭遇した場合の対処

Posted at August 29,2023 11:55 PM
Tag:[MySQL]

MySQLのrootログインで「Access denied for user 'root'@'localhost' (using password: YES)」に遭遇した場合の対処方法を紹介します。

1.問題点

MySQLをインストールし、mysqldサービスを起動し、mysqladminコマンドでrootログインをしようとしたところ、下記のエラーに遭遇しました。

# mysqladmin -u root password -p
Enter password:
mysqladmin: connect to server at 'localhost' failed
error: 'Access denied for user 'root'@'localhost' (using password: YES)'

ちなみにrootの初期パスワードは、

/var/log/mysqld.log

2023-08-26T06:33:00.897137Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: :Vqw<Poh0:gY

の行末に記録されています。

ただ、今回はこのパスワードを設定しても上記のエラーに遭遇しました。

2.対処

手順は下記の通りです。

  1. /etc/my.cnf または /etc/mysql/my.cnf を任意のエディタで開く
  2. "[mysqld]"の下に「skip-grant-tables under」を追加
  3. mysqldを再起動
  4. 「mysql -u root -p」を実行し、パスワードを聞かれても入力せずにリターン(これでログインできる)
  5. プロンプトが「mysql>」になったら「flush privileges;」を入力(権限の反映)
  6. 「ALTER USER 'root'@'localhost' IDENTIFIED BY 'NewPassword';」を実行(NewPasswordには新しいパスワードを設定)
  7. quitでmysqlを終了し、再度「mysql -u root -p」を実行。先ほどのパスワードでログインできることを確認
  8. OKであれば、my.cnfに追加した設定「skip-grant-tables under」を削除
  9. mysqldを再起動

3.参考サイト

参考サイトは下記です。ありがとうございました。

MySQL Error: : 'Access denied for user 'root'@'localhost'

関連記事
トラックバックURL


コメントする
greeting

*必須

*必須(非表示)


ご質問のコメントの回答については、内容あるいは多忙の場合、1週間以上かかる場合があります。また、すべてのご質問にはお答えできない可能性があります。予めご了承ください。

太字イタリックアンダーラインハイパーリンク引用
[サインインしない場合はここにCAPTCHAを表示します]

コメント投稿後にScript Errorや500エラーが表示された場合は、すぐに再送信せず、ブラウザの「戻る」ボタンで一旦エントリーのページに戻り(プレビュー画面で投稿した場合は、投稿内容をマウスコピーしてからエントリーのページに戻り)、ブラウザをリロードして投稿コメントが反映されていることを確認してください。

コメント欄に(X)HTMLタグやMTタグを記述される場合、「<」は「&lt;」、「>」は「&gt;」と入力してください。例えば「<$MTBlogURL$>」は「&lt;$MTBlogURL$&gt;」となります(全て半角文字)