mysql在window上启动后看不到root用户的解决方法

1. 关闭正在运行的MySQL服务。
2.打开DOS窗口,转到mysql\bin目录。
3. 输入mysqld --skip-grant-tables 回车。--skip-grant-tables 的意思是启动MySQL服务的时候跳过权限表认证。
4.再开一个DOS窗口(因为刚才那个DOS窗口已经不能动了),输入mysql回车,如果成功,将出现MySQL提示符 >。
5.连接权限数据库: use mysql; 。 
6.改密码:update user set password=password("root") where user="root";(别忘了最后加分号) 。
7.刷新权限(必须步骤):flush privileges; 。 
8.退出  quit。
重启mysql服务,使用用户名root和刚才设置的新密码root登录就ok了;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
如果root用户无法登录MySQL,可能是由于以下原因之一导致的: 1.忘记了root用户的密码。 2.root用户的权限被更改或删除。 3.数据库服务未启动。 4.防火墙阻止了MySQL端口的访问。 以下是解决这些问题的方法: 1.重置root用户的密码: ```shell # 停止MySQL服务 sudo systemctl stop mysql # 以跳过授权表的方式启动MySQL服务 sudo mysqld_safe --skip-grant-tables & # 以root用户身份登录MySQL mysql -u root # 切换到mysql数据库 use mysql; # 更新root用户的密码 update user set authentication_string=password('new_password') where user='root'; # 刷新权限表 flush privileges; # 退出MySQL exit; # 重启MySQL服务 sudo systemctl start mysql ``` 2.检查root用户的权限: ```shell # 登录MySQL mysql -u root -p # 查看root用户的权限 select * from user where user='root' and host='localhost'; # 如果root用户的权限被删除或更改,可以使用以下命令重新授权 grant all privileges on *.* to 'root'@'localhost' identified by 'password' with grant option; # 刷新权限表 flush privileges; # 退出MySQL exit; ``` 3.检查MySQL服务是否启动: ```shell # 检查MySQL服务状态 sudo systemctl status mysql # 如果MySQL服务未启动,可以使用以下命令启动 sudo systemctl start mysql ``` 4.检查防火墙设置: ```shell # 检查防火墙状态 sudo ufw status # 如果MySQL端口被阻止,可以使用以下命令打开端口 sudo ufw allow mysql ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值