今天突然,我在通过 IP 地址(例如 mysql -h 10.1.248.20)连接时遇到了与 mysql 的连接挂起的问题,但无论用户如何,我仍然可以使用 localhost 进行连接。
mysql> show processlist;
+----+----------------------+------------------+------+---------+------+-----------------------------------------------------------------------+------------------+
| Id | User | Host | db | Command | Time | State | Info |
+----+----------------------+------------------+------+---------+------+-----------------------------------------------------------------------+------------------+
| 1 | system user | | NULL | Connect | 10 | Connecting to master | NULL |
| 2 | system user | | NULL | Connect | 10 | Has read all relay log; waiting for the slave I/O thread to update it | NULL |
| 37 | unauthenticated user | 10.1.248.3:36694 | NULL | Connect | NULL | login | NULL |
| 38 | unauthenticated user | 10.1.248.3:36695 | NULL | Connect | NULL | login | NULL |
| 39 | unauthenticated user | 10.1.248.3:36696 | NULL | Connect | NULL | login | NULL |
| 40 | root | localhost | NULL | Query | 0 | NULL | show processlist |
+----+----------------------+------------------+------+---------+------+-----------------------------------------------------------------------+------------------+
6 rows in set (0.00 sec)
Run Code Online (Sandbox Code Playgroud)
是的,我意识到复制在上面的输出中被破坏了;那是在我尝试重新启动 MySQL 之后(这是紧急情况)。
突然之间事情停止了,他们又开始工作了。
当时 DNS 运行良好。复制仍然有效。MySQL 响应迅速。
有谁知道什么会导致来自远程 IP 的 MySQL 登录突然挂起?
尝试添加skip-name-resolve到这样的[mysqld]部分/etc/my.cnf:
[mysqld]
skip-name-resolve
Run Code Online (Sandbox Code Playgroud)
似乎是名称解析问题。
| 归档时间: |
|
| 查看次数: |
11149 次 |
| 最近记录: |