一个原因是没有关闭MySQL的定时任务计划,每天凌晨MySQL会默认运行一个自动更新的定时任务计划,如果没有关闭,就会自动断开连接。 解决办法: 1、这是一个基本的权限问题。去MySQL安装目录下,右键单击MySQL文件夹,进入安全选项卡下,单击“编辑用户组”,在“组和用户”选择你的电脑的用户,选择允许的情况下所有的项,应用并关闭。 2、这是一个Windows的任务计划服务,删除即可,开始右键/计算机管理/任务计划程序/任务计划程序库/MySQL/Installer/ManifestUpdate,右键单击并选择“禁用”。

另一个原因是MySQL数据库的数据库连接有生存期限制,如果在规定时间内没有操作数据库连接对象,连接就会被关闭。也就是常说的MySQL的8小时问题

MySQL服务器默认连接的“wait_timeout”是8小时,也就是说一个Connection空闲超过8个小时,MySQL将自动断开该 Connection。但是数据库连接池并不知道连接已经断开了,如果程序正巧使用到这个已经断开的连接,程序就会报错误。

先来了解一下数据库连接池:

用JAVA代码操作数据库需要数据库连接对象,一个用户至少要用到一个连接。现在假设有成千上百万个用户,就要创建十分巨大数量的连接对象,这会使数据库承受极大的压力,为了解决这种现象,一种技术出现了,这就是数据库连接池。

所谓数据库连接池,可以看作在用户和数据库之间创建一个“池”,这个池中有若干个连接对象,当用户想要连接数据库,就要先从连接池中获取连接对象,然后操作数据库。一旦连接池中的连接对象被拿光了,下一个想要操作数据库的用户必须等待,等待其他用户释放连接对象,把它放回连接池中,这时候等待的用户才能获取连接对象,从而操作数据库。

以下是两个连接池的简单实现~ 代码来自:

https://www.cnblogs.com/vmax-tam/p/4158802.html 代码来自:https://www.cnblogs.com/xiaotiaosi/p/6398371.html

代码我就不搬过来了,重点讲讲如何解决问题

方法一:修改数据库的等待时间

1、首先重启MySQL服务,开始→右键→计算机管理→服务,找到MySQL的服务,重新启动

2、设置MySQL最大等待时间,运行MySQL 5.7 Command Line Client,输入密码后,拷贝运行以下代码段:

show variables LIKE '%timeout%';

show global variables LIKE '%timeout%';

set global wait_timeout=2147483;

set wait_timeout=2147483;

set global interactive_timeout=31536000;

set interactive_timeout=31536000;

3、重启Tomcat

方法二:让自己编写的数据库连接池代码生成数据库连接对象时,增加一个自动刷新的功能,间隔时间自动生成一个新的数据库连接对象。也就是定期使用连接池内的连接,使得它们不会因为闲置超时而被 MySQL 断开。

方法三:连接数据库的时候加上autoReconnect=true这个参数:

jdbc:mysql://localhost:3306/accounant?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true

方法四:减少连接池内连接的生存周期,使之小于上述项中所设置的“wait_timeout”的值。

方法五:将“testOnBorrow”设置为false,而将“testWhileIdle”设置为true,再设置好“testBetweenEvictionRunsMillis”值(小于8小时)。那些被MySQL关闭的连接就不会被清除出去,避免“8小时问题”。 例:http://www.totcms.com/html/201602-29/20160229114145.htm

Apache官方文档给出的配置示例可参见:http://tomcat.apache.org/tomcat-9.0-doc/

原创文章,作者:kinpo, k,如若转载,请注明出处:https://www.yidc.net/archives/5145

项目服务器连接不上数据库连接,服务器上的WEB项目反复出现MySQL数据库连接失败解决办法...相关推荐

  1. 12333提交显示服务器异常,掌上12333显示没有收到异地协助认证书什么原因_具体解决办法流程_3DM手游...

    在使用掌上12333的过程中,有不少小伙伴都出现了"没有收到异地协助认证书"这样的提示出现,导致无法正常进行下一步的操作.那么掌上12333显示没有收到异地协助认证书什么原因呢?这 ...

  2. 解决服务器连接错误Host ‘XXX’ is not allowed to connect to this MySQL server

    本文转载于http://www.cnblogs.com/jesu/p/5650699.html,向原作者表示感谢,如有侵权,请联系我. 这段时间在研究火车头的入库教程,在"配置登陆信息和数据 ...

  3. host mysql server_解决服务器连接错误Host ‘XXX’ is not allowed to connect to this MySQL server...

    解决服务器连接错误Host 'XXX' is not allowed to connect to this MySQL server问题,有碰到此问题的同学可进入参考. 这段时间在研究火车头的入库教程 ...

  4. 暖暖老显示连接服务器失败,闪耀暖暖登录失败原因 闪耀暖暖登录失败解决办法...

    自从上个月闪耀暖暖获得游戏版号后,许多玩家就非常期待游戏正式上线,毕竟玩家们已经等待了一年时间.在8月6日,闪耀暖暖正式开服,许多玩家第一时间就下载了游戏,想要提前体验,但发现开启游戏后却一直显示登陆 ...

  5. csgo怎么一直连接服务器失败,CSGO连接到官方服务器失败怎么办?CSGO连接到官方服务器失败解决办法...

    CSGO游戏将玩家分为反恐精英(Counter Terrorists/CT)阵营与恐怖份子(Terrorists/T)阵营两队,每个队伍必须在一个地图上进行多回合的战斗.赢得回合的方法是达到该地图要求 ...

  6. 指为服务器指定超时时限为5分钟,微信服务器连接公众号开发者服务器时发生超时,超时时间为5秒,这是什么问题引起的?...

    Appid: wx10d9ea1837d670fe 昵称: 中山电信 时间: 2021-04-13 18:06:01 内容: 微信服务器连接公众号开发者服务器时发生超时,超时时间为5秒 次数: 5分钟 ...

  7. 传世一直显示服务器未开放,传奇世界3D手游连接服务器失败解决办法 怎么进不去...

    传奇世界3D手游怎么进不去?连接服务器失败怎么办?游戏中很多玩家发现自己的服务器出现了问题,下面由第一手游网小编为大家带来连接服务器失败解决办法吧! 传奇世界3D手游连接服务器失败解决办法 1.网络问 ...

  8. boot项目中pom依赖已经删除了但是maven上还是报红线_Java Web项目是怎么跑起来的?...

    良心公众号 关注不迷路 01 简单Java程序的启动过程 在之前的HelloWorld是怎么跑起来的?一文中,我们一起学习了IDE执行简单的Java程序的过程.可以总结为如下三个步骤: 首先,将程序通 ...

  9. 无线网络玩天刀创建服务器失败,天涯明月刀手游连接服务器失败解决办法 总是掉线...

    天涯明月刀手游连接服务器失败怎么办?为什么总是掉线?游戏中很多玩家发现自己玩的时候连接服务器失败,非常难受,下面由第一手游网小编为大家带来连接服务器失败解决办法吧! 天涯明月刀手游连接服务器失败解决办 ...

  10. 天刀手游服务器注册不了,《天涯明月刀》手游连接服务器失败解决办法

    天涯明月刀手游连接服务器失败怎么办?为什么总是掉线?游戏中很多玩家发现自己玩的时候连接服务器失败,非常难受,下面为大家带来连接服务器失败解决办法,希望能帮助大家. <天涯明月刀>手游连接服 ...

最新文章

  1. 谈谈图像的style transfer(二)
  2. 《Linux shell变量总结回顾》RHEL6
  3. iOS 开发 OpenGL 新手入门
  4. python右对齐格式化输出_Python中格式化输出的两种方法介绍
  5. Ansible自动化运维工具使用
  6. 范数的深刻解读(转自知乎)
  7. Could not get lock /var/lib/apt/lists/lock - open (11: Resource temporarily unavailable)
  8. boost any 实现万能容器_全面剖析 C++ Boost 智能指针!| CSDN 博文精选
  9. java二级考试真题_计算机等级考试真题2(JAVA)
  10. sv_labs学习笔记——sv_lab2(System Verilog)
  11. UDP协议的收发操作
  12. android 可执行程序 root权限,非Root权限的Android上运行可执行文件
  13. CorelDRAW X7 X8 2017 2018是什么关系?
  14. win10连Android机,Windows10电脑可以和安卓手机无缝连接使用了,实用性干翻Mac-win10手机...
  15. windows清理C盘
  16. 网络安全协议(三)--基本安全协议
  17. vue3.0页面模板-示例
  18. 8K摄像机研发之路有多难?一起了解你不知道的首款国产8K小型化广播级摄像机背后的故事
  19. matplotlib中文显示以及设置图片大小
  20. Python编程基础——编程环境准备工作

热门文章

  1. oneinstack php 扩展,OneinStack 安装 PHP 扩展
  2. sql 时间函数(全)
  3. android播放器和视频拍摄中的硬解和软解以及硬编和软编的区别
  4. java怎么创建日期类_java中的日期类Date
  5. 力扣算法 509. 斐波那契数 70. 爬楼梯 746. 使用最小花费爬楼梯
  6. 引用和指针傻傻分不清
  7. 最理想的饮茶器具──紫砂壶
  8. 电脑上如何添加或修改打印机的IP
  9. linux内存功耗测试,一种服务器动态功耗的测试方法
  10. Mockito中ArgumentCaptor的使用方法