Mysql把root的host调整为%,新建连接时出现1045, 重置root密码 重置host

初期学习阶段,自己搞的数据库但在创建远程连接用户时不小心把root用户的host改为了%,本地再新建连接时就出现1045的错误,尝试的找了很多方法都没有效果,把这些方法整合了一下居然成功了。(不知道是因为修改成%导致root用户有没有访问mysql权限了还是什么原因)

解决步骤:

1、打开终端cmd,输入命令: net stop mysql,停止MySQL服务 或者 

右键 '此电脑'->'管理' ->'服务和应用程序.服务' -> 找到mysql点击停止 也可右键查看mysql属性。

2、开启跳过密码验证登录的MySQL服务,输入命令 mysqld --console --skip-grant-tables --shared-memory

3、再打开一个新的cmd,无密码登录MySQL,输入登录命令:mysql -u root -p 回车再回车

4、进入到mysql 输入 use mysql;

5、先刷新权限 后修改密码

FLUSH PRIVILEGES;
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'xxxxxx';

6、现在,需要更新 user 表中的 Host 字段,将 root 用户的 Host 值从 % 改回 localhost

UPDATE user SET Host='localhost' WHERE User='root' AND Host='%';

7、再次刷新权限

FLUSH PRIVILEGES;

8、你可以通过查询 user 表来验证更改是否成功。

SELECT User, Host FROM user WHERE User='root';

你应该看到类似下面的输出,表示 root 用户的 Host 字段已被成功更改为 localhost

 

9、重启mysql服务, 尝试重连

注:  可以解决root密码忘记问题,也可解决root权限访问不了mysql问题。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值