欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

mysql too many open connections问题解决方法

程序员文章站 2024-02-28 10:53:04
曾经以为在my.cnf写入max_connections = 2000就可以改变mysql的最大并发量,今天查到一个命令,发现服务器的mysql最大连接数为151. 控制...

曾经以为在my.cnf写入max_connections = 2000
就可以改变mysql的最大并发量,今天查到一个命令,发现服务器的mysql最大连接数为151.

控制台,连接上mysql

复制代码 代码如下:

show variables;

这条命令可以看到所有基础配置

如果单独看max_connections可以这样

复制代码 代码如下:

show variables like 'max%';
+—————————-+————+
| variable_name | value |
+—————————-+————+
| max_allowed_packet | 1048576 |
| max_binlog_cache_size | 4294963200 |
| max_binlog_size | 1073741824 |
| max_connect_errors | 10 |
| max_connections | 151 |
| max_delayed_threads | 20 |
| max_error_count | 64 |
| max_heap_table_size | 16777216 |
| max_insert_delayed_threads | 20

151 好像是lampp默认的最大连接数。

my.cnf里大致这样写的

复制代码 代码如下:

max_connections=2000
# the mysql server
[mysqld]
port            = 3306
socket          = /applications/xampp/xamppfiles/var/mysql/mysql.sock

改完以后
复制代码 代码如下:

# the mysql server
[mysqld]
max_connections=2000
port            = 3306

然后把max_connections=2000移动到[mysqld]下面,重启动mysql
复制代码 代码如下:

+—————————-+————+
| variable_name | value |
+—————————-+————+
| max_allowed_packet | 1048576 |
| max_binlog_cache_size | 4294963200 |
| max_binlog_size | 1073741824 |
| max_connect_errors | 10 |
| max_connections | 2000 |
| max_delayed_threads | 20 |
| max_error_count | 64 |
| max_heap_table_size | 16777216 |
| max_insert_delayed_threads | 20

就好了。

说明这配置必须在[mysqld]下面,才有用。