MySQL パスワード忘れ

「MySQLに接続ができなくなったので助けてください。」とクライアント様から連絡がありMySQLのrootパスワードを聞き接続を試してみました。

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

確かに繋がらない。こりゃあ完全にパスワードが書き換わっています。どうしたものかと調べてみると、「–skip-grant-tables」というオプションを付加してMySQLを起動すればノンパスワードで接続できるらしいです。

$PATH/mysqld_safe --user=root --skip-grant-tables & mysql mysql

実際にMySQLを停止して起動しなおしたらノンパスワードで接続できました。次にパスワードを初期化しようと思い現在のユーザを確認しました。

mysql> select host,user,password from mysql.user;

userテーブルに rootユーザーがいない。

クライアント様に確認を取ると、ミスオペレーションで削除してしまったとか。 とにかく勉強になりました。ありがとうございました。

関連記事一覧

  1. この記事へのコメントはありません。