我在Linux服务器上安装了一个MySQL,但忘记了它的密码,因此我使用网上找到的方法进行了更改。我所做的如下:
/etc/init.d/mysql stop mysqld_safe --skip-grant-tables & mysql --user root mysql SELECT * FROM user; // I checked if I could access the user table or not update user SET password = PASSWORD('new_pass') WHERE user = 'root'; flush privileges; exit
更新查询确实更改了密码,因为它向我显示了受影响的行数和“查询确定”等。
然后我重启了mysql
/etc/init.d/mysql stop /etc/init.d/mysql start
现在,当我使用新密码登录时
mysql -u root -p new_pass
它仍然给我错误 “错误1045(28000):用户’root’@’localhost’的访问被拒绝(使用密码:是)”
有什么我想念的吗?
实际上,我仔细查看了mysql数据库中的user表,结果在我之前有人编辑了root用户到SSL的ssl_type字段。
我编辑了该字段,然后重新启动了mysql,它的运行就像一个魅力。
谢谢。