近日在数据库方面,发现异常的联机状况该状况在 mysql 下指令 Show Processlist; 可以看到问题该问题如下; : 3436942 : unauthenticated user : 192.168.0.52:49607 : : Connect : : login : : 3436943 : unauthenticated user : 192.168.0.52:49608 : : Connect : : login : 会有非常多的 unauthenticated user 尝试做登入使用 mysql 的情况当这情况在无限制的发生时,就会照成系统的停顿在经过多方测试,以及询问官方原厂的响应下发现这属于官方一个系统上的特殊设定,亦可称呼他为 mysql 的 bug 不管连结的的方式是经过 hosts 或是 IP 的模式,他都会对 DNS 做反查mysqld 会尝试去反查 IP -> dns ,由于反查解析过慢,无法应付快速多量的查询 反查是上层 ISP 所掌控,并不是我们可以解决及要求的在知道问题的症结点后,要解决这个问题就有相对应的方法其方法分为两个步骤, 第一是开启 Mysqld 的时候加入特定的参数启动 第二就是修改 mysql 的联机设定等,如下所示 启动参数; with --skip-name-resolve =>这样就可以关闭反查动作 更改 my.cnf;加强以下设定 [mysqld] datadir=/services/mysql/ socket=/tmp/mysql.sock port=3306 set-variable = key_buffer_size=64M set-variable = max_connections=1024 set-variable = interactive_timeout=30 ------ skip-name-resolve #这样就可以关闭反查动作 [mysqld.server] user=mysql basedir=/usr/local 经过以上的设定及重新启动过后,直到现在还没有看到一个 unauthenticated user 的情况发生 。
阅读(3334) | 评论(0) | 转发(0) |