由于我们的数据库服务器 (MySql) 停止响应/拒绝连接,我们最近开始出现一些停机时间。当我们使用 mytop 进行监控时,我们收到以下 (大量) 信息:
5033 unauthent 217.75.117.87 0 Connec login
IP是我们自己的,应该允许连接到服务器,而且大多数时候都是有效的。
一些 MySql 分布信息:
Ver 14.12 Distrib 5.0.27, for portbld-freebsd6.2 (amd64) using 5.0
- 有人知道为什么会发生这种情况以及这意味着什么吗?
- 我们如何解决这个问题?
- 在谷歌上搜索mysql 未认证引导我走向论坛主题这表明问题已通过启动 mysql 并加上标志解决--skip-resolve-names。这个标志起什么作用,启用它会产生什么后果?
我们的情况非常危急,因此非常希望您能尽快回复。谢谢!
答案1
--skip-resolve-names
阻止服务器查找连接客户端的反向 DNS 记录。如果连接客户端没有反向 DNS 条目,则连接可能会在尝试进行此查找但失败时短暂挂起。
我从这里可以看出,这87.117.75.217.in-addr.arpa.
并没有解决任何问题。您可能会发现,在缓存 NXDOMAIN 结果时,它在短时间内运行良好,但随后又被重新查询并挂起。
正如回答这您也可以将线程放在服务器的部分skip_name_resolve
中。但更简洁的解决方案是确保您已为该主机正确设置了反向 DNS。[mysqld]
my.cnf
答案2
--skip-resolve-names 将阻止服务器尝试从连接 IP 解析主机名。如果您没有正确配置服务器来解析主机名,它将加快速度,因为它不会超时。
如果您确实将其关闭,则必须通过 IP 而不是主机名来获得权限。
您目前如何授予访问权限?如果您使用主机名但无法解析它们,那么您将收到该错误。