之前在修改密码时,使用navicat for mysql工具直接在mysql-》user表中修改了root用户的密码,后来就登陆不了了。后来发现mysql用户密码不能使用明文修改,需要用password函数加密。为什么加密请看http://blog.csdn.net/beckham_kaka/article/details/5744706一文。下面列出正确修改mysql密码的方法。
修改mysql数据库密码方式:
- 在命令窗口中使用root用户登录,mysql –u root –p,输入密码,成功进入。
- 选择mysql数据库,use mysql;
- 修改root密码。Update user set password = PASSWORD(‘密码’) where user =’root’,执行此命令就可以修改root用户密码了。
- flush privileges;刷新MySQL的系统权限相关表
- 退出mysql命令,输入exit退出。
注意事项:
- 更新密码时必须用PASSWORD函数,mysql的密码是经过加密的,如果不使用加密函数将会登录不了。
- 要运行flush privileges刷新MySQL的系统权限相关表,否则会出现拒绝访问,还有一种方法,就是重新启动mysql服务器,来使新设置生效。
忘记密码解决方式:
1.关闭正在运行的MySQL。
2.打开DOS窗口,转到安装mysql中bin目录下
3.输入mysqld --skip-grant-tables回车。如果没有出现提示信息,那就对了。
4.再开一个DOS窗口(因为刚才那个DOS窗口已经不能动了),转到mysql\bin目录。
5.输入mysql回车,如果成功,将出现MySQL提示符 >
6. 连接权限数据库>use mysql; (>是本来就有的提示符,别忘了最后的分号)
6.改密码:> update user set password=password("123456") where user="root"; (别忘了最后的分号)
7.刷新权限(必须的步骤)>flush privileges;
8.退出 > \q
9.注销系统,再进入,开MySQL,使用用户名root和刚才设置的新密码123456登陆。