以下参数都是参考他人的博客而来的,这里会粘贴原文地址。
https://www.cnblogs.com/mydriverc/p/8296814.html
1、back_log
含义讲解:
如果mysql的连接数超过max_connections时,新来的请求就会被放入一个堆栈中,以等待某一连接被释放。
这个堆栈的长度就是由back_log的值来决定的。如果堆栈中填满了,新来的请求将不被接受,客户端会报错:
unauthenticated user|xxx.xxx.xxx.xxx|NULL|Connect|NULL|login|NULL
(1)查看该参数当前的值:(默认值为50)
show variables like 'back_log';
(2)修改该参数的值:(必须重启生效)
[mysqld]
back_log = 500
(3)重启生效
/etc/init.d/mysqld restart
注意:
back_log的值不能超过Linux系统的TCP/IP监听队列大小,若超过了,则设置的back_log无效。
查看当前系统的TCP/IP监听队列大小:
cat /proc/sys/net/ipv4/tcp_max_syn_backlog
修改系统的TCP/IP监听队列大小:
cat /etc/sysctl.conf
net.ipv4.tcp_max_syn_backlog = 2048
执行sysctl -p让修改生效。