操作步骤如下:
1.以管理员身份打开命令窗口cmd,输入命令:net stop mysql,停止MySQL服务,然后输入命令
mysqld --console --skip-grant-tables --shared-memory (开启跳过密码验证登录的MySQL服务)
2.再打开一个新的cmd,无密码登录MySQL,输入登录命令:mysql -u root -p ,然后连续两次 回车。
3.密码置为空,命令如下:
use mysql
update user set authentication_string='' where user='root';
4.退出mysql,执行命令:
quit
5.关闭以-console --skip-grant-tables --shared-memory 启动的MySQL服务 的窗口
6.打开命令框,输入:net start mysql 启动MySQL服务。
7.步骤3密码已经置空,所以无密码状态登录MySQL,输入登录命令:mysql -u root -p ,然后连续两次 回车(无需输入密码)。
8. ALTER USER
'root'
@
'localhost'
IDENTIFIED BY
'新密码'
;
9..验证更改后密码正确登录
输入quit,退出当前登录,输入登录命令:mysql -u root -p
输入密码,成功登录,到此,重置密码结束。
=======================================================================================================================================================
关于 MySQL 报错:
mysql> show databases;
ERROR 1449 (HY000): The user specified as a definer ('mysql.infoschema'@'localhost') does not exist
解决办法:
mysql> create USER 'mysql.infoschema'@'localhost' IDENTIFIED BY 'root';
Query OK, 0 rows affected (0.01 sec)
mysql> GRANT select on *.* to `mysql.infoschema`@`localhost`;
Query OK, 0 rows affected (0.00 sec)
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| test |
+--------------------+
4 rows in set (0.00 sec)
mysql>