mysqlパスワードエラーを解決します.my.iniにskip-grant-tablesを追加しても役に立たない
1493 ワード
1、データベースの停止
2、mysqlのbinディレクトリの下で、cmdウィンドウを開き、以下のコマンドを実行します:以下のパスはProgramDataの下でMySQLの中でmyです.iniファイルのパス(my.iniファイルに直接ship-grant-tablesを追加するのと変わらないような気がしますが、my.iniファイルで何度も試したことがありますが、一度も役に立たず、本当に絶望しています)
3、任意に2番目のcmdを開き、mysqlを接続する
パスワードを入力する必要がある場合は、直接車に戻って、入ることができます
4、mysqlに接続してから、コマンドを実行する
5、次のコマンドを引き続き使用する
6、コマンドを使用してrootパスワードを変更する(2つの場合)バージョン5.7以前のmysqlで、この文(ここの新しいパスワードはあなたが設定する新しいパスワード) を実行します.バージョン5.7以降の実行この文
理由は、mysqlのパスワードのフィールド名がpasswordからauthentication_に変更されたためです.string
For Mysql before 5.7 it is "password"
Since MySQL 5.7 it is "authentication_string"
7、権限の更新
8、データベースを終了する
9、データベースに再ログインし、パスワードを入力すればいい
net stop mysql
2、mysqlのbinディレクトリの下で、cmdウィンドウを開き、以下のコマンドを実行します:以下のパスはProgramDataの下でMySQLの中でmyです.iniファイルのパス(my.iniファイルに直接ship-grant-tablesを追加するのと変わらないような気がしますが、my.iniファイルで何度も試したことがありますが、一度も役に立たず、本当に絶望しています)
mysqld --defaults-file="C:\ProgramData\MySQL\MySQL Server 5.7\my.ini" --skip-grant-tables
3、任意に2番目のcmdを開き、mysqlを接続する
mysql -uroot -p
パスワードを入力する必要がある場合は、直接車に戻って、入ることができます
4、mysqlに接続してから、コマンドを実行する
show databases;
5、次のコマンドを引き続き使用する
use mysql;
6、コマンドを使用してrootパスワードを変更する(2つの場合)
UPDATE user SET Password=PASSWORD(' ') where USER='root';update mysql.user set password=PASSWORD("root") where User="root";
UPDATE user SET authentication_string=PASSWORD(' ') where USER='root';update mysql.user set authentication_string=PASSWORD("root") where User="root";
理由は、mysqlのパスワードのフィールド名がpasswordからauthentication_に変更されたためです.string
For Mysql before 5.7 it is "password"
Since MySQL 5.7 it is "authentication_string"
7、権限の更新
FLUSH PRIVILEGES;
8、データベースを終了する
quit
9、データベースに再ログインし、パスワードを入力すればいい
mysql -uroot -p