Linux方法

1.在配置文件/etc/my.cnf设置skip-grant-tables

[mysqld]
skip-grant-tables

#这个设置的作用是让本地登录数据库时,不需要密码验证

2.重启mysqld

service mysqld restart #或者重启服务器
#配置文件修改后,需要重启才可以生效

3.登录数据库

mysql -u root //不要写成mysql -u root -p
#这时登录是不需要密码的,如果需要,说明你前面配置不正确

4.通过update将root的authentication_string设置为空

update mysql.user set authentication_string = "" where user="root";
#这个的作用是清除root的密码

5.在配置文件/etc/my.cnf将skip-grant-tables注释掉

[mysqld]
#skip-grant-tables

6.再次重启mysqld

这是root已经没有密码了
然后登录数据库,修改密码

 set password="123456";
 flush privileges;//刷新,使密码生效
Logo

更多推荐