mysql连接数问题备份

一、 max_connections

这是是查询数据库当前设置的最大连接数
mysql> show variables like '%max_connections%';
+-----------------+-------+
| Variable_name   | Value |
+-----------------+-------+
| max_connections | 1000  |
+-----------------+-------+
 
 
可以在/etc/my.cnf里面设置数据库的最大连接数
[mysqld]
max_connections = 1000
 
重启mysql即生效
 
 
临时修改连接数上限
set global max_connections=1000
重启后失效
 
 

#详细连接信息
show full processlist;

 

实战:

vim /opt/lampp/etc/my.cnf

#add by chong
max_connections = 1000

/opt/lampp/lampp stopmysql
/opt/lampp/lampp startmysql

 

二、 max_allowed_packet

max_allowed_packet问题。。
  1. 查看目前配置
show VARIABLES like '%max_allowed_packet%';
  1. 修改方法
  • 可以编辑my.cnf来修改(windows下my.ini),在[mysqld]段或者mysql的server配置段进行修改。在[mysqld]下加上
max_allowed_packet=20M

保存重启mysql。max_allowed_packet = 20M如果找不到my.cnf可以通过mysql --help | grep my.cnf去寻找my.cnf文件。

  • 在mysql 命令行中运行 .   20M
set global max_allowed_packet = 2*1024*1024*10

然后关闭掉这此mysql server链接,再进入 

#16M

mysql -h192.168.1.51 -uroot -e "set global max_allowed_packet = 1024*1024*16;show VARIABLES like '%max_allowed_packet%'" 

 

 

三、 wait_timeout

mysql -uroot -e "show global variables like 'wait_timeout';"
mysql -uroot -e "set global wait_timeout=1814400; show global variables like 'wait_timeout';"

异常如下:

原因
mysql5连接的等待时间(wait_timeout)默认是8小时。

查看方法

show global variables like 'wait_timeout'; 

查看结果:
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| wait_timeout | 28800 |
+---------------+-------+
1 row in set (0.00 sec)
在wait_timeout时间里,mysql的connection处于等待状态,过了这时间mysql5就关闭了,但是java application的连接池仍然有合法的connection,当你再操作数据库时,就会出现这样的问题。

解决方法
mysql5之前的版本,可以在jdbc连接的url中加入:autoReconnect = true

mysql5中wait_timeout在window中最大为24天,在linux中最大为365天。

a、修改配置

如果在window中设置为21天,改mysql5的安装文件夹中的my.ini
如果在linux中/etc/my.cnf,添加一行:wait_timeout = 1814400,重启mysql,添加效果如下:

b、直接用sql命令行修改(重启有还原为28800,不推荐)

mysql> set global wait_timeout=1814400;
mysql> show global variables like 'wait_timeout';

 

 

 

 

posted @   会飞的斧头  阅读(205)  评论(0编辑  收藏  举报
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示