首页 > 数据库 >MySQL最大连接数

MySQL最大连接数

时间:2023-11-20 10:45:36浏览次数:45  
标签:最大 数据库 连接数 connections MySQL 连接 连接池

MySQL最大连接数

MySQL最大连接数

通常MySQL的最大连接数默认是151 最大可以达到16384。

查看mysql最大连接数:

show variables like '%max_connections%’;

查看当前实际最大使用连接数:

show global status like 'Max_used_connections';

实际连接数是最大连接数的85%较为合适,所以最大连接数我们可以根据实际连接数去设置

(如果你想设置最大连接数超过1024,还需要修改文件描述符的上限)。

思考:连接数设置成最大(16384)是最好的吗?

我们把连接数设置成MySQL支持的最大连接数,这样我们的MySQL服务器可以同时支持很多的连接,我们也可以很少概率的遇到:

MySQL: ERROR 1040: Too many connections

的错误信息。

但是受限于服务器的资源限制,在设置了过大的 max_connections 情况下,数据库会因为保持了大量的连接而使服务器资源耗尽而变得无法响应。因为每多一个

connection,MySQL就会创建一个线程来维护这个连接,而且CPU在线程间切换需要重新加载对应线程的上下文信息,当 connections 数量不断增加时,CPU 不

断在各个 connections 的查询中切换。所以,设置较大的 max_connections 值时,可能会导致数据库因接受了太多的连接而性能下降,甚至因为资源耗尽而无法

响应的风险。

数据库连接池

数据库连接池是维护数据库连接的缓存,以便在将来需要对数据库发出请求时可以重用连接。 连接池用于提高在数据库上执行命令的性能。 因为每连接一次数据

库就需要经过一次TCP连接,如果每次访问数据库,都需要连接,然后再关闭,下次访问的时候再连接,是很浪费资源的,所以我们将创建好的连接放到连接池

里,需要的时候去拿,不需要的时候就放回连接池(用空间换时间)。

当应用程序向连接池请求的连接数超过最大连接数量时,这些请求将被加入到等待队列中。

思考:数据库连接池越大越好吗?

假如我们把数据库连接池设置的和MySQL最大连接数一样,这样不是最好吗?可以保证我们的服务有最大的可用连接数使用,每来一个数据库请求,我们都有空

闲的连接可以使用。

这样的话,又回到了,我们上面遇到的问题(可能会导致服务器因维护了太多的数据库连接而性能下降,甚至因为资源耗尽而无法响应的风险)

标签:最大,数据库,连接数,connections,MySQL,连接,连接池
From: https://www.cnblogs.com/joydivision/p/17843408.html

相关文章

  • GreatSQL社区与Amazon、Facebook、Tencent共同被MySQL致谢
    一、来自MySQL官方的感谢在2023-10-25MySQL官方发布的8.2版本ReleaseNotes中,GreatSQL社区核心开发者RichardDang和HaoLu,分别收到了来自MySQL官方的贡献感谢,与Amazon、Facebook(Meta)、Tencent等一并出现在感谢清单中。详见:MySQL8.2ReleaseNotes/Chang......
  • LNMP一键安装包安装的mysql远程连接不上的问题
    正常的做法: 以root用户登录mysql:grant all privileges on*.* to创建的用户名@"%"identified by "密码";flushprivileges;例如:mysql>grant all privileges on*.* tozhangsan@"%"identified by "123456";......
  • 常见面试题-MySQL的Explain执行计划
    了解Explain执行计划吗?答:explain语句可以帮助我们查看查询语句的具体执行计划。explain查出来的各列含义如下:id:在一个大的查询语句中,每个select关键字都对应一个唯一的idselect_type:select关键字对应的那个查询的类型simple:简单查询。表示查询不包含子查询和unionprimary:复......
  • MySQL安装、卸载与初始化
    一、MySQL简介1、MySQL是什么MySQL是一款安全、跨平台、高效的,并与PHP、Java等主流编程语言紧密结合的关系型数据库管理系统。MySQL的象征符号是一只名为Sakila的海豚,代表着MySQL数据库的速度、能力、精确和优秀本质。图片:  MySQL已成为当今主流且最受欢迎的数......
  • mysql巡检脚本sql补充
    --没有主键索引mysql[localhost:8028]{root}(test)>SELECTt.table_schema,t.table_name,t.engine->FROMinformation_schema.tablest->JOINinformation_schema.columnsc->ONt.table_schema=c.table_schema->ANDt.table_name=c.......
  • Linux安装MySQL
    本文使用的Linux发行版本为AlmaLinux9.264位(CentOS停止更新后的完美替代发行版本)。本文安装的MySQL版本为8.1.0,其他版本方法类似。MySQL源码编译时间太长了,需要3到4小时,使用官网编译好的rpm更简单快捷。操作步骤更新系统。dnf-yupdate查看是否已经有安装了的mysql......
  • 从 Mysql 架构上如何查询 sql 的执行过程?
    MySQL是一种流行的关系型数据库管理系统(RDBMS),由瑞典MySQLAB公司开发,目前属于甲骨文公司(Oracle)旗下。MySQL是基于SQL语言的一个开源数据库,可以用于存储、管理、检索数据。它支持大量的并发用户连接,并且提供了灵活的数据类型和索引机制。MySQL有多个版本,包括社区版和商业版,提供了不......
  • offline RL | TD3+BC:在最大化 Q advantage 时添加 BC loss 的极简算法
    题目:AMinimalistApproachtoOfflineReinforcementLearning,NeurIPS2021,8775。pdf版本:https://arxiv.org/pdf/2106.06860.pdfhtml版本:https://ar5iv.labs.arxiv.org/html/2106.06860(感觉写的蛮好的)openreview:https://openreview.net/forum?id=Q32U7dzWXpcgithub......
  • Python批量求取Excel表格每一个4行内某列的最大值、最小值
      本文介绍基于Python语言,基于Excel表格文件内某一列的数据,计算这一列数据在每一个指定数量的行的范围内(例如每一个4行的范围内)的区间最大值的方法。  已知我们现有一个.csv格式的Excel表格文件,其中有一列数据,我们希望对其加以区间最大值的计算——即从这一列的数据部分(也就是......
  • Canal+Kafka实现MySQL与Redis数据同步(二)
    Canal+Kafka实现MySQL与Redis数据同步(二)创建MQ消费者进行同步在application.yml配置文件加上kafka的配置信息:spring:kafka:#Kafka服务地址bootstrap-servers:127.0.0.1:9092consumer:#指定一个默认的组名group-id:consumer-group1......