MySQL性能优化之max_connections配置

摘要:
max_used_connections数量就是当前连接数量。每个连接MySQL的用户均算作一个连接,max_connections的默认值为100。与max_connections有关的特性MySQL无论如何都会保留一个用于管理员登陆的连接,用于管理员连接数据库进行维护操作,即使当前连接数已经达到了max_connections。因此MySQL的实际最大可连接数为max_connections+1;这个参数实际起作用的最大值为16384,即该参数最大值不能超过16384,即使超过也以16384为准;增加max_connections参数的值,不会占用太多系统资源。

MySQL的最大连接数,增加该值增加mysqld 要求的文件描述符的数量。如果服务器的并发连接请求量比较大,建议调高此值,以增加并行连接数量,当然这建立在机器能支撑的情况下,因为如果连接数越多,介于MySQL会为每个连接提供连接缓冲区,就会开销越多的内存,所以要适当调整该值,不能盲目提高设值。

数值过小会经常出现ERROR 1040: Too many connections错误,可以过’conn%’通配符查看当前状态的连接数量,以定夺该值的大小。

# 最大连接数
show variables like 'max_connections';
#响应的连接数
show status like 'max_used_connections';
1
2
3
4
查看最大连接数:

那么这个5000是怎么来的呢?当然是配置里面写好了的。

vi /etc/my.cnf
1

查看响应的连接数:

max_used_connections / max_connections * 100% (理想值≈ 85%)

如果max_used_connections跟max_connections相同 那么就是max_connections设置过低或者超过服务器负载上限了,低于10%则设置过大。

max_used_connections数量就是当前连接数量。

MySQL的max_connections参数用来设置最大连接(用户)数。每个连接MySQL的用户均算作一个连接,max_connections的默认值为100。

与max_connections有关的特性

MySQL无论如何都会保留一个用于管理员(SUPER)登陆的连接,用于管理员连接数据库进行维护操作,即使当前连接数已经达到了max_connections。因此MySQL的实际最大可连接数为max_connections+1;
这个参数实际起作用的最大值(实际最大可连接数)为16384,即该参数最大值不能超过16384,即使超过也以16384为准;
增加max_connections参数的值,不会占用太多系统资源。系统资源(CPU、内存)的占用主要取决于查询的密度、效率等;

Threads_connected 跟show processlist结果相同,表示当前连接数。准确的来说,Threads_running是代表当前并发数
---------------------

免责声明:文章转载自《MySQL性能优化之max_connections配置》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Go语言的调度模型(GPM)常见雪球期权总结下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

定时重启MySQL、定时重启Apache [任务计划]

有时候觉得,服务器运行时间过长,程序上无法释放mysql,造成服务器压力过大。因此,设想一下,不用重新启动服务器的情况下,完成apache和mysql的内存释放。 首先,apache的重新启动。 操作步骤: 开始>>程序>>附件>>管理工具>>任务计划 添加任务计划>>下一步>>apa...

mysql 服务启动后停止

mysql5.7本地计算机上的mysql 服务启动后停止案例1--errorlog_error.txt未看到如下错误信息--执行mysqld --console或mysqld.exe start,可以看到如下错误提示2020-06-01T15:24:45.286601Z 0 [ERROR] You have enabled the binary log,...

MySQL高级查询(一)

in 子查询:嵌套查询(重点是思路) 为什么要用in? in 在数值上相当于‘=’但是它可以查询到更多的符合条件的结果,等于号只可以查询一个结果 question: 有两种方法: 第一种:使用子查询替换表连接: 使用 inner join 将表与表之间联动,再将实现条件依次写出来 第二种:采用子查询: 在where那里添加select两表联动通过stud...

mysql的文件组成以及IO操作的流程

文件组成: 主要包括数据文件、索引文件、日志文件(undolog、redolog、binlog),其中undolog和redolog是innodb存储引擎所有。   IO流程: 1.InnoDB引擎使用的是 WAL 技术(write ahead log),执行事务的时候,写完内存和日志(undolog、redolog、binlog),事务就算完成了。  异...

通过pd.to_sql()将DataFrame写入Mysql

循环创建表,并且创建主键、外键 import pandas as pd from sqlalchemy import create_engine from sqlalchemy.types import NVARCHAR, Float, Integer def pd2sql(): """ to_sql目前只支持两类mysq...

SQL性能优化(不断总结)

1.查询的模糊匹配     尽量避免在一个复杂查询里面使用 LIKE '%parm1%'—— 红色标识位置的百分号会导致相关列的索引无法使用,最好不要用.解决办法:其实只需要对该脚本略做改进,查询速度便会提高近百倍。改进方法如下:        a、修改前台程序——把查询条件的供应商名称一栏由原来的文本输入改为下拉列表,用户模糊输入供应商名称时,直接在前台...