第一种方式:
最简单的方法就是借助第三方工具Navicat for MysqL来修改,方法如下:
2、然后点击上方“用户”按钮。
4、出现如图界面,输入新密码,并确认新密码,点击“保存”按钮即可。
第二种方式:
方法1: 用SET PASSWORD命令
格式:MysqL> set password for 用户名@localhost = password('新密码');
例子:MysqL> set password for root@localhost = password('123');
格式:MysqLadmin -u用户名 -p旧密码 password 新密码
例子:MysqLadmin -uroot -p123456 password 123
方法3:用UPDATE直接编辑user表
MysqL> update user set password=password('123') where user='root' and host='localhost';
MysqL> flush privileges;
方法4:在忘记root密码的时候,可以这样
以windows为例:
2. 打开DOS窗口,转到MysqL\bin目录。
3. 输入MysqLd --skip-grant-tables 回车。--skip-grant-tables 的意思是启动MysqL服务的时候跳过权限表认证。
4. 再开一个DOS窗口(因为刚才那个DOS窗口已经不能动了),转到MysqL\bin目录。
5. 输入MysqL回车,如果成功,将出现MysqL提示符 >。
6. 改密码:update user set password=password("123") where user="root";(别忘了最后加分号) 。
7. 刷新权限(必须步骤):flush privileges; 。
8. 退出 quit。
9. 注销系统,再进入,使用用户名root和刚才设置的新密码123登录。
第三种方式:
-
2
-
3
输入命令 MysqLd --skip-grant-tables 回车,此时就跳过了MysqL的用户验证。注意输入此命令之后命令行就无法操作了,此时可以再打开一个新的命令行。注意:在输入此命令之前先在任务管理器中结束MysqLd.exe进程,确保MysqL服务器端已结束运行。
-
4
-
5
输入show databases; 可以看到所有数据库说明成功登陆。
-
6
-
7
show tables查看所有表,会发现有个user表,这里存放的就是用户名,密码,权限等等账户信息。
-
8
输入select user,host,password from user; 来查看账户信息。
-
9
更改root密码,输入update user set password=password('123456') where user='root' and host='localhost';
-
10
再次查看账户信息,select user,password from user; 可以看到密码已被修改。
-
11
-
12
测试不带密码登录MysqL,发现还是能够登陆上,但显示数据库时只能看到两个数据库了,说明重启之后跳过密码验证已经被取消了。
-
13
我这地方重启数据库之后之所以不带密码任然能够登录是因为我的数据库里存在设无须口令的账户。
END
注意事项
-
注意其中需要重启数据库的几个地方
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。