MySQL 常用系统配置

mysql server系统参数

假设电脑配置

  • CPU :32 核
  • 内存: 64G
  • DISK: 2T SSD

mysql 最大连接数

max_connections=3000

怎么设置这个值?
首先预估可以分配给连接的内存有多少,分配给 innodb buffer pool 大概 40G,给操作系统分配 4G,那么给连接可分配的内存不到 20G。

一个连接占用内存最少是 256 K,最大 64 M。如果 3000 个连接全部使用,那么占用内存最少是 256kb * 3000 = 750M,内存占用最大是 64M * 3000 = 192G。

所以这个连接数不太合适,需要减少最大连接数。

允许用户连接的最大连接数

max_user_connections=2980

20 个用来给 DBA 管理使用。

暂存的用户数

back_log=300

连接全部使用,新的连接保存在堆栈中,等待资源释放,如果堆栈连接数达到 300,剩下的连接会被拒绝。

app应用通过 jdbc 连接mysql进行操作完毕后,空闲300秒后断开

wait_timeout=300

默认是 8 个小时

app应用通过 mysql client 连接mysql进行操作完毕后,空闲300秒后断开

interactive_timeout=300

默认是 8 个小时

sort buffer 大小

sort_buffer_size=4M

给每个需要排序的线程分配 4M 的缓冲区

join buffer 大小

join_buffer_size=4M

用于表关联缓存的大小

innodb参数

innodb 线程并发数

innodb_thread_concurrency=64

默认值是 0,表示不限制,可以把它设置为与服务器 CPU 核数相同或者是 CPU 核数 2 倍。

innodb存储引擎buffer pool缓存大小

innodb_buffer_pool_size=40G

一般为物理内存的60%-70%

行锁锁定时间

innodb_lock_wait_timeout=10

默认 50s

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值