报错如下图所示:

解决办法如下所示:

1、停止 MySQL 服务

[root@localhost ~]# systemctl stop mysqld

2、编辑 MySQL 的配置文件my.cnf,通常位于/etc/my.cnf或/etc/mysql/my.cnf。

[root@localhost ~]# vim /etc/my.cnf

3、 进入后增加:skip-grant-tables,先按“i”键,再输入:skip-grant-tables,然后按"ESC"键,

输入“:wq!”保存退出。


 4、保存配置文件并启动 MySQL 服务

[root@localhost ~]#  systemctl start mysqld

5、登录 MySQL,如果要输入密码:你就输入123456 ,一般是直接就可以进去。

6、在 MySQL 命令行中执行以下语句来重置密码,,'MH@123456' 就是你要设置的密码。

mysql> USE mysql;

mysql>ALTER USER 'root'@'localhost' IDENTIFIED BY 'MH@123456'; 

如果你输入没有成功也是报错如下图所示,那么你就去刚刚MySQL 的配置文件my.cnf去掉“--skip-grant-tables”这一行就行。

去掉这一行重新保存退出即可,再来执行 mysql>USE mysql;

mysql>ALTER USER 'root'@'localhost' IDENTIFIED BY 'MH@123456'; 

7、如果还不行就输入下面的修改语句

mysql> use mysql;

Reading table information for completion of table and column names

You can turn off this feature to get a quicker startup with -A

Database changed

mysql> USE mysql;

Database changed

mysql> UPDATE user SET authentication_string='MH@123456' WHERE User='root';

Query OK, 1 row affected (0.01 sec)

Rows matched: 1 Changed: 1 Warnings: 0

mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)

 

希望对你有所帮助,谢谢~ 

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐