用的是阿里云虚拟主机,在怀疑是二开遗漏了数据库关闭语句,酬金不够可以再加!数据库配置不支持修改,只能从网站程序中找问题!
max_user_connections=0,关掉user 的connection 限制,用global 的max connection 来限制就好了,max_connections=1024。
1、优化应用程序代码,避免不必要的数据库连接。可以使用数据库连接池来管理连接,而不是每次请求都打开一个新的连接。
2、增加数据库服务器的性能,比如申请扩容或者优化数据库配置。
3、修改数据库用户的最大连接数限制。你可以在 MySQL 中使用以下命令来修改用户的最大连接数限制:
GRANT USAGE ON *.* TO 'bdm769854513'@'localhost' WITH MAX_USER_CONNECTIONS 5;
可以根据自己的需要调整这个值。
先看看当前数据库的最大连接数设置是多少。如果比较小就设置大一点。在程序中最好使用连接池,以复用连接,不必要每次都创建连接最终将最大连接数打满。在应用中使用缓存,避免每次都访问数据库。
将占用过多mysql连接的资源的方式改成少占用mysql连接的方式,将原先的通过开协程去单张表中取数据的方式通过其它过滤条件比如仓库或者国家一次加载到内存中。最后解决了问题。
数据库最大连接池的最大连接数量改大
你这原因是服务器后台连接池满了。
必须把这些数据库连接操作删除,才能够正常运行
不知道怎么样删除已经连接到数据库的无用连接是你的本质问题。
建议重启数据库。杀掉无用连接数,或者程序改大连接池最大值
建议优先进行程序优化,程序中调用数据库的会话要及时关闭。
由于云虚拟主机是共享资源,考虑到稳定性,配置是不支持修改。如果此连接数的限制无法满足使用,可以考虑使用云服务器ECS和云数据库RDS产品解决该问题
更新下mysql驱动
参考一下https://blog.csdn.net/m0_38101105/article/details/118607701