MySQL rootパスワード忘れてリセット

2020-05-15 15:16:31 | データベース

ローカルのmacOSMySQLを入れていて、長らく放置していた場合

完全にパスワード忘れている場合が多いと思います。

mysqlコマンドを使って実行してもパスワードが思い出せず

> mysql -uroot -p
Enter password: 
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

Access deniedされてしまいます。

このような場合、MySQLのサービスを一旦停止しそのあと--skip-grant-tablesで起動するとmysqlコマンドでで入ることができます。

mysql.server stop 
mysql.server start --skip-grant-tables

mysqlコマンドでログインしたあとrootのパスワードを下記のコマンドでリセットします。

use mysql
UPDATE mysql.user SET authentication_string=null WHERE User='root';

mysql.serverを再起動し

mysql -uroot -p  

上記のmysqlコマンドでパスワード指定無しでログインできるようになりました。

 

下記のコマンドで新しいパスワードを設定します。

ALTER USER 'root'@'localhost' identified BY '新しいパスワード'; 

mysqlが--skip-grant-tablesのままだと下記のようなエラーが出ます

ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement


最新の画像もっと見る

コメントを投稿