最大连接数:
- 最大值好像是 99570,可能是最大文件描述符设置为 100000,然后其他资源占了几百 ```shell show variables like ‘max_connections’;
/etc/my.cnf
[mysqld] max_connections=3000
systemctl restart mariadb
vi /usr/lib/systemd/system/mariadb.service 取消[Service]前的#号, [Service] LimitNOFILE=10000 LimitNPROC=10000
systemctl —system daemon-reload systemctl restart mariadb.service
调整优化:<br />[https://www.cnblogs.com/caoshousong/p/10845396.html](https://www.cnblogs.com/caoshousong/p/10845396.html)
```shell
show status like 'Threads%';
# Threads_connected :这个数值指的是打开的连接数.
# Threads_running :这个数值指的是激活的连接数,这个数值一般远低于connected数值.
# Threads_connected 跟show processlist结果相同,表示当前连接数。准确的来说,Threads_running是代表当前并发数
# 查看连接数和具体连接对象
show processlist;
Threads_created 表示创建过的线程数,通过查看Threads_created就可以查看MySQL服务器的进程状态。
maxLifetime报错:
https://blog.csdn.net/weixin_41249041/article/details/90578226
WARN schedulerFactoryBean_QuartzSchedulerThread com.zaxxer.hikari.pool.PoolBase:176 - HikariPool-1 - Failed to validate connection com.mysql.cj.jdbc.ConnectionImpl@4380677e (No operations allowed after connection closed.). Possibly consider using a shorter maxLifetime value.
解决:
# 解决 Possibly consider using a shorter maxLifetime value 问题
spring.datasource.hikari.max-lifetime=30000
7、 idleTimeout
此属性控制允许连接在池中闲置的最长时间。 此设置仅适用于minimumIdle定义为小于maximumPoolSize。一旦池达到连接,空闲连接将不会退出minimumIdle。连接是否因闲置而退出,最大变化量为+30秒,平均变化量为+15秒。在超时之前,连接永远不会退出。值为0意味着空闲连接永远不会从池中删除。允许的最小值是10000ms(10秒)。 默认值:600000(10分钟)
8、 maxLifetime
此属性控制池中连接的最大生存期。正在使用的连接永远不会退休,只有在关闭后才会被删除。在逐个连接的基础上,应用较小的负面衰减来避免池中的大量消失。 我们强烈建议设置此值,并且应该比任何数据库或基础设施规定的连接时间限制短几秒。 值为0表示没有最大寿命(无限寿命),当然是idleTimeout设定的主题。 默认值:1800000(30分钟)