每天都有新软件
www.aihainiu.com

MySQL ERROR 1130 (HY000) 修复方法

起因:使用 Navicat 数据库软件连接时报错,无法连接,有明确的报错。

报错信息:MySQL ERROR 1130 (HY000): Host ‘XXXX’ is not allowed to connect to this MySQL server

初步分析:根据错误信息,百度各种方法并实践后,发现是mysql的user表损坏导致。

修复过程:

1、找到mysql的my.ini 文件,在[mysqld] 增加一行

skip-grant-tables #跳过数据库权限验证

2、连接对应数据库,执行mysql代码

执行代码:

mysql>use mysql;

#修复user数据表

mysql> REPAIR TABLE mysql.user;

#查看下用户情况

mysql> select host, user from user;

# 重新添加一个myuser用户,密码为mypassword

create user 'myuser'@'localhost' identified by 'mypassword';

#赋予全部权限

grant all privileges on mysql_db.* to 'root'@'localhost';

#刷新权限

flush privileges;

3、取消 skip-grant-tables

见步骤1,删除行或者在行前增加 # 号。

4、重启Mysql服务

5、登陆验证,发现添加的新账户数据库权限不足,需要给账户添加数据库相关权限。

打开mysql数据库的user表,找到myuser的信息,将相关字段(password_expired,is_role 字段除外)的N都改成Y。

6、重新连接数据库,可以正常访问了。

 

 

参考资料:

Mysql报错localhost is not allowed to connect

MySql 中 skip-grant-tables(跳过权限验证的问题)

mysql错误 #1194 – Table is marked as crashed and should be repaired错误修复

mysql错误 #1044-Access denied for user ‘root’@’localhost’ to database

 

赞(1) 打赏
未经允许不得转载:爱海牛 » MySQL ERROR 1130 (HY000) 修复方法
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏