`

数据库异常总结

 
阅读更多

突然数据库不可用了,一直报错:

com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure Last packet sent to the server was 0 ms ago
com.mysql.jdbc.exceptions.jdbc4.CommunicationsException

 

方案:上述问题是由mysql5数据库的配置引起的。mysql5将其连接的等待时间(wait_timeout)缺省为8小时。

在其客户程序中可以这样来查看其值:

mysql> show global variables like 'wait_timeout'; 
+---------------+--------+
| Variable_name | Value  |
+---------------+--------+
| wait_timeout  | 605800 |
+---------------+--------+
1 row in set (0.00 sec)

 28800 seconds,也就是8小时。 

如果在wait_timeout秒期间内,数据库连接(java.sql.Connection)一直处于等待状态,mysql5就将该连接关闭。这时,你的Java应用的连接池仍然合法地持有该连接的引用。当用该连接来进行数据库操作时,就碰到上述错误。这解释了为什么我的程序第二天不能登录 的问题

 

具体措施1:在jdbc连接url的配置中,你可以附上“autoReconnect=true”,但这仅对mysql5以前的版本起作用。增加“validation query”似乎也无济于事。 (5.0前有效)

具体措施2:设置等待超时为21天/etc/my.cnf 增加一行:wait_timeout=1814400

 

 

分享到:
评论

相关推荐

    数据库学习总结-总集

    1. 数据库范式:遵循特定的范式规则(第一范式至第五范式),可以避免数据冗余和异常,提高数据的一致性和完整性。 2. 实体关系模型(ER模型):用于数据库设计的概念模型,通过实体、属性和关系来描述现实世界的...

    JDBC连接数据库经验总结

    **JDBC连接数据库经验总结** Java Database Connectivity (JDBC) 是Java编程语言中用于与关系数据库交互的标准API。它提供了一种规范,使得Java开发者能够使用标准的Java语句来执行SQL命令,从而实现对数据库的操作...

    C#语言和数据库技术基础总结

    3. 异常处理:通过try-catch-finally语句块,C#提供了异常处理机制,能够捕获和处理运行时错误。 4. 泛型:C#的泛型允许创建可重复使用的数据结构,如List,无需针对不同数据类型编写不同的代码。 5. LINQ(Language...

    Log4net日志功能-记录数据库异常和系统异常

    总结,log4net是.NET开发中的得力助手,通过灵活的配置和丰富的功能,可以有效地管理和记录数据库异常和系统异常,帮助开发人员和运维人员更好地理解和解决问题。正确使用log4net,能提升应用程序的稳定性和可维护性...

    数据库异常恢复

    ### 数据库异常恢复 在日常的数据管理工作中,数据库异常恢复是一项非常重要的技能。尤其是在面对突发性的数据损坏或系统故障时,能够迅速有效地进行数据库恢复,对于保障业务连续性和数据安全性至关重要。下面将...

    西南交通大学分布式数据库期末总结

    分布式数据库设计总结 分布式数据库是指将数据分布在多个服务器或站点上,以提高数据的可用性和可扩展性。以下是分布式数据库设计的总结报告: 一、背景与前言 分布式数据库是解决大规模数据存储和处理问题的有效...

    数据库个人总结的知识点

    更高层次的范式如BCNF(巴斯-科德范式)和4NF、5NF等进一步优化了数据结构,减少了冗余和异常。 数据模型是描述数据的结构、操作和约束的方式。主要的数据模型有三种:层次模型、网络模型和关系模型。层次模型以...

    数据库系统概论复习总结

    ### 数据库系统概论复习总结 #### 一、文件系统与数据库系统的区别和联系 - **区别**: - **面向对象**:文件系统通常针对单一应用程序设计,而数据库系统面向整个组织或多个应用程序。 - **数据共享**:文件...

    MS SQL SERVER 数据库技巧总结

    2. 规范化:通过范式化消除数据冗余,减少更新异常和插入异常。 五、备份与恢复 1. 定期备份:使用完整备份、差异备份和日志备份策略,确保数据安全。 2. 快速恢复:了解还原模式,如简单、完整和大容量日志,...

    数据库原理总结.ppt

    本课程通过期末总结的形式,详细讲解了数据库的相关知识,旨在帮助学生深入理解和掌握数据库的基础和高级概念。 首先,数据管理技术的发展经历了人工管理、文件系统和数据库系统三个阶段。在数据库系统阶段,数据被...

    Java-jdbc数据库连接池总结.doc

    5. **异常处理**:在发生错误时,连接池需要能够检测到并隔离有问题的连接,确保其他请求不受影响。 除了服务器自带的连接池,还有一些开源的连接池实现,如C3P0、HikariCP、Apache DBCP和Druid等,它们提供了更...

    shell脚本可配置备份mysql5.7.8以前数据库异常mail465发邮件.rar

    总结来说,这个压缩包提供的shell脚本是一个实用的工具,能够自动化对MySQL 5.7.8及更早版本的数据库进行备份,并在出现问题时通过邮件通知管理员。这样的解决方案对于需要定期备份数据库并确保数据安全的企业尤其有...

    数据库设计总结(设计方法,设计技巧)

    数据库设计是信息系统开发过程中的关键环节,它直接影响到系统的性能、可扩展性和数据一致性。本文将深入探讨数据库设计的方法和技巧,旨在为...希望这些总结能为你的项目带来启示,助你在数据库设计的道路上更进一步。

    c# c sharp 数据库 操作 类 总结

    以下是对C#数据库操作类的详细总结: 1. ADO.NET: ADO.NET是微软提供的一个组件,用于连接和操作数据库。它包括以下关键组成部分: - Connection:表示与数据库的连接。 - Command:用于执行SQL语句或存储过程...

    组态王查询数据库查询实例总结工程.zip

    "组态王查询数据库查询实例总结工程.zip"这个压缩包文件显然包含了关于使用组态王软件进行数据库查询的实例和总结。组态王是中国广为人知的一种工业自动化组态软件,它提供了图形化的用户界面,使得用户能够方便地...

    oracle数据库基础总结[整理].pdf

    Oracle数据库基础总结 Oracle数据库是关系数据库管理系统的领导者之一,本文总结了Oracle数据库的基础知识,涵盖了关系数据库操作语言、SQL查询语句、数据定义语言、数据操纵语言、数据控制语言、PL/SQL语言等方面...

    C#数据库操作总结123

    本总结将深入探讨C#中与数据库相关的知识点,帮助开发者更好地理解和应用。 1. ADO.NET:ADO.NET是.NET框架内用于数据库访问的基础组件,提供了一套全面的接口和类库,如SqlConnection、SqlCommand、SqlDataAdapter...

Global site tag (gtag.js) - Google Analytics