文章内容

2020/10/26 15:00:48,作 者: 黄兵

MySQL 8重置root密码

最近安装了MySQL 8之后,有一些操作与以前有些不同,通过一下两种方式修改密码,都会提示语法错误:

set password for 用户名@localhost=password('新密码');
set password =password('你的密码');
flush privileges;

以上两种方式在MySQL8中提示语法错误,但是下面的SQL可以修改密码。

ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';

方式修改了密码,但是登录的时候输密码,一直报错,应该是密码包含特殊字符。

重置root密码的方法如下:

修改/etc/mysql/mysql.conf.d/mysqld.cnf这个文件,增加如下内容:

[mysqld]
#...
skip-grant-tables
#...

之后保存,重启MySQL服务:

 sudo systemctl restart mysql

终端输入 mysql 直接登录MySQL数据库:

mysql

进入mysql之后,切换到mysql数据库,执行如下操作:

mysql> use mysql;
FLUSH PRIVILEGES;
ALTER USER 'root'@'localhost' IDENTIFIED BY '你的新密码';

这样就就修改了root密码,之后删除skip-grant-tables这句话。

重启MySQL。


参考资料:

1、mysql 修改密码报错解决

2、MySQL重置root密码

3、修改mysql密码错误:check the manual that corresponds to your MySQL server version for the right syntax


黄兵个人博客原创。

转载请注明出处:黄兵个人博客 - MySQL 8重置root密码

分享到:

发表评论

评论列表