本文章写作目的:
网上很多MYSQL重置root密码都是针对5.7以前的版本。5.7版本相对以前版本在user表中取消了password字段而用authentication_string代替。
编辑MySql的配置文件:my.ini(在MySql安装目录下)。
打开配置文件,在文件最后一行添加:skip-grant-tables,然后保存退出。
意思为就是在启mysql时不启动grant-tables
重启MySql服务:(编辑完上一步后不要忘记这一步的重启,否则不生效)
net stop mysql
net start mysql
设置新的root密码。
mysql -u root -p 直接回车,无需输入密码就可以进入数据库了。
此时在命令行下执行 use mysql (切换到系统数据库)
执行以下语句既可修改root用户密码:
update user set authentication_string=password('123456') where user='root';(将123456替换成你想设置的密码)
停止mysql服务,执行成功后,继续执行:flush privileges; exit; 退出mysql。
还原配置文件,删除刚才在配置文件中添加的一行。然后重启mysql服务,就可以使用新设置的密码进行登录了。
参考文章:
http://www.cnblogs.com/GreenForestQuan/p/6496431.html
http://www.cnblogs.com/liufei88866/p/5619215.html
http://jingyan.baidu.com/article/6fb756ec6fbf24241858fbe3.html