MySQLルートパスワードを削除する方法[終了]


195

localhostのユーザーrootのパスワードを削除したい。どうやってやるの?誤ってrootユーザーのパスワードを設定してしまいました。phpmyadminがエラーを出しているのはそのためです。

#1045 - Access denied for user 'root'@'localhost' (using password: NO)


4
代わりにルートパスワードを使用するようにphpMyAdminを設定しないのはなぜですか?
sisve

2
MySQLのドキュメントには、ルートパスワードを忘れた場合にリセットする方法が記載されています。
Michael Madsen

MySQL 5.7以降では、デフォルトでランダムなrootパスワードが設定されており、validate_password最初にプラグインを無効にしない限り、それを削除することはできません。MySQLのrootパスワードまたはこの要点を直接削除する私の記事を参照してください。
ベンジャミン

回答:


360

のパスワードをroot@localhost空白に設定する必要があります。2つの方法があります。

  1. MySQL SET PASSWORDコマンド:

    SET PASSWORD FOR root@localhost=PASSWORD('');
  2. コマンドラインmysqladminツールの使用:

    mysqladmin -u root -pType_in_your_current_password_here password ''

1
特定のデータベースのパスワードをリセットするにはどうすればよいですか?

4
mysqladmin -u root -pcurrent_password password ''は、別の方法です。
crackity_jones 2013年

7
私が行うために必要なmysqladmin -u root -p password ''、パスワードを入力してください。
crizCraig 14

2
@crizCraigは、おそらくパスワードがでなかったため、CURRENTPASSWORD(他の引数とは異なり)パスワード引数の後にスペースがありません。パスワードを省略すると、パスワード(doc)の入力を求められます
Jason Sperske '27

3
@mOnaはこの方法を試してください:1- mysqlをオフにします(サービスをシャットダウンするか、サービスを強制終了します); 2-含むファイルの作成SET PASSWORD FOR root@localhost=PASSWORD('');と呼ばれるがrestore、3-呼び出しmysqld_safe --init-file=path/to/restore。最後にログインして、パスワードをもう一度変更します。
ダリオ

23

私もこの問題を経験しました、

最初に、コマンドを使用してルートのパスワードを空白に設定してみました:

SET PASSWORD FOR root@localhost=PASSWORD('');

しかし、幸せにならないでください。PHPMYADMINはlocalhostではなく127.0.0.1を使用します。両方が同じであると言うのはわかっていますが、そうではありません。以下に記載されているコマンドを使用すれば完了です。

SET PASSWORD FOR root@127.0.0.1=PASSWORD('');

localhostを127.0.0.1に置き換えるだけで完了です。


3
root @ localhost = PASSWORD( '');のパスワードを設定 私のために働いた
workdreamer 2013
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.