Mysql并发参数调整

从实现上来说,MySQL Server 是多线程结构,包括后台线程和客户服务线程。多线程可以有效利用服务器资源,提高数据库的并发性能。在Mysql中,控制并发连接和线程的主要参数包括 max_connections、back_log、thread_cache_size、table_open_cahce。

  • max_connections

采用max_connections 控制允许连接到MySQL数据库的最大数量,默认值是 151。如果状态变量 connection_errors_max_connections 不为零,并且一直增长,则说明不断有连接请求因数据库连接数已达到允许最大值而失败,这是可以考虑增大max_connections 的值。

Mysql 最大可支持的连接数,取决于很多因素,包括给定操作系统平台的线程库的质量、内存大小、每个连接的负荷、CPU的处理速度,期望的响应时间等。在Linux 平台下,性能好的服务器,支持 500-1000 个连接不是难事,需要根据服务器性能进行评估设定。

  • back_log

back_log 参数控制MySQL监听TCP端口时设置的积压请求栈大小。如果MySql的连接数达到max_connections时,新来的请求将会被存在堆栈中,以等待某一连接释放资源,该堆栈的数量即back_log,如果等待连接的数量超过back_log,将不被授予连接资源,将会报错。5.6.6 版本之前默认值为 50 , 之后的版本默认为 50 + (max_connections / 5), 但最大不超过900。

如果需要数据库在较短的时间内处理大量连接请求, 可以考虑适当增大back_log 的值。

  • table_open_cache

该参数用来控制所有SQL语句执行线程可打开表缓存的数量, 而在执行SQL语句时,每一个SQL执行线程至少要打开 1 个表缓存。该参数的值应该根据设置的最大连接数 max_connections 以及每个连接执行关联查询中涉及的表的最大数量来设定 :

​ max_connections x N ;

  • thread_cache_size

为了加快连接数据库的速度,MySQL 会缓存一定数量的客户服务线程以备重用,通过参数 thread_cache_size 可控制 MySQL 缓存客户服务线程的数量。

  • innodb_lock_wait_timeout

该参数是用来设置InnoDB 事务等待行锁的时间,默认值是50ms , 可以根据需要进行动态设置。对于需要快速反馈的业务系统来说,可以将行锁的等待时间调小,以避免事务长时间挂起; 对于后台运行的批量处理程序来说, 可以将行锁的等待时间调大, 以避免发生大的回滚操作。

MySQL高级 - 并发参数调整相关推荐

  1. MySQL高级-MySQL并发参数调整

    Mysql并发参数调整 1 max_connections 2 back_log 3 table_open_cache 4 thread_cache_size 5 innodb_lock_wait_t ...

  2. mysql 并发 参数_Mysql并发参数调整

    从实现上来说,MySQL Server 是多线程结构,包括后台线程和客户服务线程.多线程可以有效利用服务器资源,提高数据库的并发性能.在Mysql中,控制并发连接和线程的主要参数包括 max_conn ...

  3. php fpm最大连接数,PHP最大连接数的设置及php-fpm高并发参数调整

    推荐:<PHP视频教程> 服务器中找到php-fpm.conf配置(有的会在引入的www.conf中)[global] pid = /usr/local/php/var/run/php-f ...

  4. MySQL 高级 - 输入参数

    传递参数 语法格式 : create procedure procedure_name([in/out/inout] 参数名 参数类型) ...IN : 该参数可以作为输入,也就是需要调用方传入值 , ...

  5. MySQL 高级- 输出参数

    OUT-输出 需求 : 根据传入的身高变量,获取当前身高的所属的身材类型 示例: create procedure pro_test5(in height int , out description ...

  6. 从前慢-Mysql高级及实战

    Mysql高级及实战 1 Linux 系统安装MySQL 1.1 下载Linux 安装包 https://dev.mysql.com/downloads/mysql/5.7.html#download ...

  7. Mysql高级-应用优化,查询缓存优化,锁

    文章目录 1. 应用优化 1.1 使用连接池 1.2 减少对MySQL的访问 1.2.1 避免对数据进行重复检索 1.2.2 增加cache层 1.3 负载均衡 1.3.1 利用MySQL复制分流查询 ...

  8. linux将mysql的错误连接数_Mysql学习笔记(十二) 并发参数调节

    mysql是多线程结构,包括后台线程和客户服务线程,多线程可以有效利用服务器资源,提高数据库的并发性能.在mysql的并发能力上,主要有有下列参数界定.分别为max_connections,back_ ...

  9. mysql并发参数查看_MySQL Innodb 并发涉及参数

    可以通过innodb_thread_concurrency 来调节  并发线程数的限制值,使用innodb_thread_sleep_delay来调整当 并发 thread 到达 innodb_thr ...

最新文章

  1. ios 圆形旋转菜单_iOS高级动画:圆形树展开收起动画
  2. Matlb中break 和continue 语句
  3. 树莓派连接7寸屏幕(7DP-CAPLCD)的配置笔记
  4. activemq java 异步_异步消息处理机制之activeMQ应用实例
  5. cnn卷积核参数如何确定_如何确定肉脯软塑包装的热封参数?
  6. 选redis还是memcache,源码怎么说?
  7. 谷歌公布4个0day详情,其中3个被滥用于攻击亚美尼亚
  8. python筛选质数并一行输出五个_python使用filter方法递归筛选法求N以内的质数素数附一行打印心形标记的代码解析...
  9. 你见过世界顶级公司的最垃圾的代码是什么?
  10. 拓端tecdat|Python时间序列选择波动率预测指数收益算法分析案例
  11. 在dom最前面插入_虚拟 DOM 到底是什么?
  12. java 弱引用 使用场景_Java 强软弱虚引用介绍及使用场景
  13. Oracle基本数据范例存储名堂浅析
  14. 手机运行慢可以刷机吗_为什么手机卡顿,反应变慢怎么解决?一定要刷机吗?...
  15. mac 文字识别软件ocr_树洞OCR文字识别for Mac-树洞OCR文字识别Mac版下载 V1.2.0-PC6苹果网...
  16. latex引用文献,带DOI
  17. 瞎子摸象——shopnc篇
  18. [坑]微信支付首次支付成功,第二次调用失败
  19. HEVC Tile 编码器-kvazaar
  20. SVN服务器迁移方法(Windows环境)

热门文章

  1. BZOJ 1221: [HNOI2001] 软件开发(最小费用最大流)
  2. 前台线程和后台线程(Foreground and Background Threads)
  3. 现在java就业前景怎么样?现在入行晚了吗
  4. JVM优化原理—Java架构师必须要知晓的知识
  5. acwing 3 完全背包
  6. 《剑指offer》第九题(用两个栈实现队列)
  7. [BZOJ2429][HAOI2006]聪明的猴子(最小生成树)
  8. HTML/BODY的背景渲染原理
  9. 【SPOJ】Power Modulo Inverted(拓展BSGS)
  10. BZOJ 3997 [TJOI2015]组合数学(单调DP)