原味引用:

https://blog.csdn.net/tte_w/article/details/145924392https://blog.csdn.net/tte_w/article/details/145924392

原因:

这是由于触发了反向 DNS 查询导致。当一个 InetAddress 创建时包含了域名信息,getHostName() 方法会直接返回这个域名,否则会触发反向 DNS 解析,当配置的 DNS 服务器与目标 InetAddress 之前网络状况不佳就会产生延时。

解决方式:

①.引入的 mybatis plus 包排除 mysql-connector-j 9.1.0,然后重新引入 8.0.33 以下版本,因为此版本的 ConnectionImpl 没有 getHostName() 方法。

 ②.修改 mysql 数据库配置文件,启用 skip-name-resolve 配置,这样就会跳过反向 DNS 解析,只会基于 IP 地址来进行连接和身份验证,加速连接过程并避免 DNS 配置或延迟导致的问题。在 [mysqld] 节点下,新增配置:skip-name-resolve。推荐此方法,简单粗暴。同时,请注意在增加该配置参数后,mysql 的授权表中的 host 字段就不能使用域名只能使用  ip ,因为配置 skip-name-resolve 禁止了域名解析。

[mysqld]
skip-name-resolve

Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐