mysql忘记密码 修改密码

1. 管理员身份进入cmd 命令窗口 输入 net stop mysql,把mysql服务先关掉:

 2.设置无验证方式启动mysql服务
mysql版本为8.0以下,输入mysqld --skip-grant-tables
mysql版本为8.0以上,输入mysqld --console --skip-grant-tables --shared-memory
看到光标一直闪烁就成功了。 进行下一步。

注意:mysql 不是内部命令也不是外部命令是由于mysql环境变量没有配置。
注意:如果遇到mysqld: Can’t change dir to ‘C:\Program Files\MySQL\MySQL Server 5.7\data’ (OS errno 2 - No such file or directory)错误
解决办法:勾选显示隐藏的项目,找到ProgramData文件夹,在C:\ProgramData\MySQL\MySQL Server 8.0路径下找到my.ini文件,复制粘贴到C:\Program Files\MySQL\MySQL Server 8.0目录下即可

然后另起一个命令窗口重复1.2. 看到光标一直闪烁就成功了

3.无验证登陆数据库+修改密码

重新打开一个cmd窗口,输入mysql,敲回车就可以成功登陆mysql了

USE mysql;
方式一
UPDATE USER SET PASSWORD = PASSWORD('新密码') WHERE USER = '用户名';
方式二
SET PASSWORD FOR '用户名'@'主机名' = PASSWORD('新密码');

 若更改密码出现 ERROR 1046 (3D000): No database selected 则是数据库表字段没有password 改成authentication_string  即可 退出mysql

mysql> use mysql
Database changed
mysql> update user set password=password('root') where user='root' and host='localhost';
ERROR 1046 (3D000): No database selected
mysql> update user set authentication_string = password('root') where user = 'root';
Query OK, 1 row affected, 1 warning (0.00 sec)
Rows matched: 1  Changed: 1  Warnings: 1

4.重启mysql 

 不用慌,这是正常的,接下来我们就找到问题解决,先输入tasklist| findstr "mysql 命令找出占用的程序,然后taskkill/f /t /im mysqld.exe 把这些程序终止就能正常启动了:

 然后重进输入新密码即可

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值