Aborted_connects - xiaoboluo768/qianjinliangfang GitHub Wiki

  • 针对新创建的连接,指试图连接到MYSQL的失败的请求次数。这种情况在客户尝试用错误的密码进行连接时,或者没有权限进行连接时,或者为获得连接的数据包所花费的时间超过了connect_timeout限制的秒数,或数据包中没有包含正确的信息时(发送的数据包没有遵循MySQL的通讯协议,server端无法识别是什么客户端),都会记录在该变量中,这个状态变量如果在一直增长,就表示有很多错误连接,要小心了,你可以查看Connection_errors_*开头的几个状态变量,看看那种原因导致连接失败的计数器增加了(Connection_errors_accept:侦听端口上调用accept()函数期间发生的错误数、 Connection_errors_internal:由于服务器中的内部错误而拒绝的连接数,例如无法启动新线程或内存不足的情况、Connection_errors_max_connections:由于达到服务器max_connections限制而拒绝的连接数、Connection_errors_peer_addr:在搜索连接客户端IP地址时发生的错误数、Connection_errors_select:在侦听端口上调用select()或poll()函数期间发生的错误数,此操作失败不一定意味着有客户端连接被拒绝、Connection_errors_tcpwrap:libwrap库设置的tcp wrap限制拒绝的连接数),另外还可以查看performance_schema.host_cache表(该表正常记录客户端访问的IP和主机名信息,依赖于performance_schema功能是否开启,如果没有开启,该表为空)
    • Aborted Connections:在你打开log_warnings=2选项时(是否向错误日志写入附加的警告消息。 默认情况下启用此变量(为1),可以通过将其设置为0来禁用此变量。如果值为1,则服务器会记录有关基于语句的日志记录不安全的语句的消息。如值大于1,则新的连接尝试连接失败和某些原因导致访问拒绝的错误都将记录到错误日志中),可能会看到如:Aborted connection 854 to db: 'employees' user: 'josh'的错误日志记录
    • 可能导致Aborted_connects状态变量增加的原因有如下几种
      • 客户端尝试访问一个实例,但是没有权限
      • 客户端尝试访问一个实例,但是用户名或者密码无效或者错误
      • 客户端尝试访问一个实例,但是发送的通讯包并没有遵循MySQL的通讯协议(如使用telnet连接mysql)
      • 客户端尝试访问一个实例,但是server端等待客户端响应时,客户端发送的响应通讯包时间超过了connect_timeout限制

上一篇:Aborted_clients | 下一篇:Slave_open_temp_tables