忘记MySQL数据库密码就进不去数据库,也就无法修改密码,解决方法如下:
1:打开cmd命令符,先关闭正在运行的数据库,输入如下命令:net stop mysql
2:打开mysql.exe和mysqld.exe所在的文件夹,复制路径地址
3:输入命令 mysqld --skip-grant-tables 回车,此时就跳过了mysql的用户验证。注意输入此命令之后命令行就无法操作了,此时可以再打开一个新的dos窗口进入到mysql的bin目录下。
这个是第二个窗口如下:直接输入mysql,不需要带任何登录参数直接回车就可以登陆上数据库
4::输入show databases; 可以看到所有数据库说明成功登陆。其中mysql库就是保存用户名的地方,输入 use mysql; 选择mysql数据库。
5:show tables查看所有表,会发现有个user表,这里存放的就是用户名,密码,权限等等账户信息。
用MySQL视图工具可以看出user表中的字段
6::输入select user,host,authentication_string from user; 来查看账户信息。
注意 不同版本的mysql密码字段可能不一样,我这里的是 authentication_string
7:更改root密码,输入update user set authentication_string='root' where user='root' and host='localhost';
8: 关闭两个窗口,重启mysql数据库,用新密码尝试登录。
以上步骤仅供参考,实际使用中不常用,但是步骤较复杂,记录下来,以便以后参考