完美解决mysql 忘记root密码问题
-
修改配置文件,windows上在mysql安装目录里的my.ini文件,linux上/etc/my.cnf文件;在文件最后添加一行
skip-grant-tables
,也即在[mysqld] 下加入该行。 -
重启mysql服务,root无密码即可登录
mysql -uroot -p #之后直接回车登录
-
切换到mysql数据库
use mysql
-
删除user表中,user = ‘root’ 的记录
delete from user where user = 'root';
-
使用对应版本创建用户语句创建语句
# 8.0 如果报错,先执行flush privileges; create user 'root'@'%' identified by 'your password'; # 其他版本自行百度
-
给新建的root用户授权
# 8.0 如果报错,先执行flush privileges; grant all privileges on *.* to 'root'@'localhost' with grant option; # 其他版本自行百度
-
刷新授权
flush privileges;
-
退出mysql,删除配置文件中
skip-grant-tables
一行,重启mysql,再次登录root即可。