mysql connection相关参数详解

max_connections:

最大连接数,默认为 151 ,可动态修改。 全局变量, 对所有用户生效。实际上允许 max_connections + 1 个客户端连接,额外一个连接供具有 SUPER 特权的用户使用

max_user_connections:

对于单个数据库用户允许的最大同时连接数。默认为 0 ,即表示无限制,可动态修改。

            1. 针对所有用户有效
                mysql> set @@global.max_user_connections=2;

            2. 针对单个用户有效
                mysql> grant usage on *.* to keyman@% with max_user_connections 2;

max_connect_errors:

当同一个客户端连接出错的次数达到 max_connect_errors 时,服务器将阻止该主机进行再次连接。默认为 100 ,可动态修改。 (中断的数据库连接,而非密码错误) 超阀值后报错:
ERROR 1129 (00000): Host ‘xxx’ is blocked because of many connection errors. Unblock with ‘mysqladmin flush-hosts’”
解决方案:
    1、将变量max_connection_errors的值设置为一个更大的值
    2、 flush hosts
    3:将变量host_cache_size设置为0

connect_timeout:

等待一个连接响应的时间,默认为 10s ,在获取连接阶段起作用,可动态修改。  

 Lost connection to MySQL server at 'XXX' 错误,那就要考虑增大 connect_timeout 值了,默认值 10s 对于网络良好的情况下是够用的,如果客户端和服务端网络有延迟的情况,可以将 connect_timeout 参数调大来避免发生连接超时的错误。
 

back_log:

暂存的连接数量,如果MySQL的连接数据达到max_connections 时,新来的请求将会被存在堆栈中,以等待某一连接释放资源,该堆栈的数量即 back_log,如果等待连接的数量超过back_log,将不被授予连接资源

Max_used_connections : 服务启动到现在,同一时刻并行连接数的最大值
Max_used_connections_time 服务启动到现在, Max_used_connections达到当前值的时间

select * from `performance_schema`.global_status where variable_name='Connections' 服务启动以来,总共连接次数 

thread_cache_size 线程缓存 threads_connected 与 show processlist一致

查看当前连接
show processlist 
show full processlist 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值