MYSQL8或MYSQL5设置最大连接数,深入解析MySQL最大连接数:配置与管理全指南
本文详细讲解了在MySQL 8中如何精确设置和监控最大连接数。深入探讨了max_connections与mysqlx_max_connections两个关键参数的配置方法,以及如何利用SET PERSIST命令持久化这些设置,确保数据库重启后设置依旧生效。文章还包含了查询当前最大连接数配置的实用SQL命令。
[email protected]2024-5-6 9:37

MYSQL8设置最大连接数

max_connectionsmysqlx_max_connections

在mysql8版本,有两个最大连接数的选项 max_connectionsmysqlx_max_connections

  • max_connections 通常的最大连接数;
  • mysqlx_max_connections 它用于设置MySQL X Protocol(X协议)的最大连接数。MySQL X Protocol是MySQL8的一种新的协议,它基于WebSocket和JSON,用于提供无状态、基于文档的访问MySQL的功能。

通常需要同时设定这两个数值,且数值一致。

修改

mysql8

在MySQL 8版本中可以直接使用SET PERSIST命令修改并持久化全局变量的配置,这样即使数据库重启,设置也会保持有效。

SET PERSIST max_connections=1024;
SET PERSIST mysqlx_max_connections=1024;

提示

在MySQL 8之前的版本中,全局变量的修改只会影响内存值,不会持久化到配置文件中。数据库重启后,设置会恢复为修改前的值。从MySQL 8开始,可以通过SET PERSIST命令将全局变量的修改持久化到配置文件中。

mysql5

  1. 打开MySQL的配置文件my.cnf(Linux系统)或my.ini(Windows系统)。

ubuntu

ubuntu为例,打开编辑my.cnf文件。

vim /etc/mysql/my.cnf
通常情况

通常情况下,如果my.cnf里,有!includedir /etc/mysql/mysql.conf.d/,例如下面这样。

!includedir /etc/mysql/conf.d/
!includedir /etc/mysql/mysql.conf.d/

就去编辑mysql.conf.d 下的 mysqld.cnf 文件

vim /etc/mysql/mysql.conf.d/mysqld.cnf

第54行,#max_connections把#删掉,取消注释,后面给改连接数。

# This replaces the startup script and checks MyISAM tables if needed
# the first time they are touched
myisam-recover-options  = BACKUP
max_connections        = 100 # <<--- 在这里
#table_open_cache       = 64
#thread_concurrency     = 10

编辑并保存好文件之后重启mysql服务即可。

service mysql restart

查询

使用这条命令可以查看max_connectionsmysqlx_max_connections当前的值。

show variables like '%max_connections';

插件结果

+------------------------+-------+
| Variable_name          | Value |
+------------------------+-------+
| max_connections        | 1024  |
| mysqlx_max_connections | 1024  |
+------------------------+-------+
2 rows in set (0.06 sec)
评论区