navicat远程连接mysql的异常解决-1130-2003-10061

结论:

1、修改数据库下root用户的host字段(为空或%)

2、修改 /etc/mysql/mysql.conf.d/mysqld.cnf 文件下 bind-address 的配置为 0.0.0.0 或者屏蔽此配置内容 (默认配置是: bind-address = 127.0.0.1)

补充:

查看数据库下用户与host字段的关系,通过命令 select user,host from mysql.user; 查询结果如下

bash 复制代码
mysql> select user,host from mysql.user;
+------------------+--------------+
| user             | host         |
+------------------+--------------+
| debian-sys-maint | localhost    |
| mysql.session    | localhost    |
| mysql.sys        | localhost    |
| root             | localhost    |
+------------------+--------------+
5 rows in set (0.00 sec)

修改root用户对应的host内容:

bash 复制代码
# 更新root用户的host字段为空 ;表示 root 用户可以通过 Unix 套接字连接,而不仅限于某个特定的 IP 地址或主机名
UPDATE mysql.user SET host='' WHERE User='root';
#更新root用户的host字段为% ;表示 root 用户可以从任何主机连接
UPDATE mysql.user SET host='%' WHERE User='root';
#刷新MYSQL的权限缓存,使修改的的更新生效
FLUSH PRIVILEGES;

也可通过添加指定host的方式限制连接mysql的IP地址

bash 复制代码
#指定一个ip地址进行添加 ( IP 和 PASSWORD 需要替换为实际的ip和密码内容 )
GRANT ALL PRIVILEGES ON *.* TO 'root'@' IP ' IDENTIFIED BY ' PASSWORD ' WITH GRANT OPTION;
# 删除指定root用户下对应的host地址的记录
DELETE FROM mysql.user WHERE User='root' AND Host='ip';
#刷新MYSQL的权限缓存,使修改的的更新生效
FLUSH PRIVILEGES;

异常:

错误代码 2003 通常表示无法连接到 MySQL 服务器。而错误代码 10061 是指连接被拒绝。

需要执行结论2的操作。

"1130 host is not allowed to connect to this MySQL server" 错误通常表示 MySQL 服务器拒绝了来自特定主机的连接。

需要执行结论1的操作。

相关推荐
爱可生开源社区27 分钟前
某马来西亚游戏公司如何从 SQL Server 迁移至 OceanBase?
数据库
小瓦码J码2 小时前
PostgreSQL表名超长踩坑记
数据库·postgresql
yhyyht2 小时前
InfluxDB入门记录(三)flux-dsl
数据库·后端
IvorySQL20 小时前
PostgreSQL 技术日报 (3月9日)|EXPLAIN ANALYZE 计时优化与复制语法讨论
数据库·postgresql·开源
用户8307196840821 天前
Java 告别繁琐数据统计代码!MySQL 8 窗口函数真香
java·sql·mysql
stark张宇1 天前
MySQL 核心内幕:从索引原理、字段选型到日志机制与外键约束,一篇打通数据库任督二脉
数据库·mysql·架构
倔强的石头_1 天前
融合数据库架构实践:关系型、JSON与全文检索的“一库多能”深度解析
数据库
星辰员1 天前
KingbaseES数据库:ksql 命令行用户与权限全攻略,从创建到删除
数据库
华仔啊2 天前
千万别给数据库字段加默认值 null!真的会出问题
java·数据库·后端
Hoffer_2 天前
MySQL 强制索引:USE/FORCE INDEX 用法与避坑
后端·mysql