zoukankan      html  css  js  c++  java
  • mysql数据库连接异常问题(总结)

    mysql数据库连接异常问题(总结)

    1.1 前言

        最近项目由1个数据源增加至了3个数据源(连接池使用C3P0),结果各种奇葩的数据库连接问题接踵而至,为防止将来再次遇到同样的问题不犯同样错误,现总结如下。

    1.2  An attempt by a client to checkout a Connection has timed out  (连接超时)

    1. 这种情况基本是网络不稳定导致的;再者就是数据源配置参数有异常。


    1.3 com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: The last packet successfully received from the server was 52,420,576 milliseconds ago.  

    1.  这种情况是由于连接池产生的部分连接长时间闲置,已经超过mysql数据库配置的“wait_timeout”设置的超时即断开该连接,而连接池没有校验该连接是否可用就直接被服务调用了,导致连接不可用报错。解决方案如下:

                 a、修改C3P0配置参数(推荐):

                       c3p0.testConnectionOnCheckout=true
                 b、缩减连接池的连接的生命周期,一般比数据库的等待超时默认8小时内即可(推荐);

                 c、增加数据库的等待超时配置为24小时(不推荐);

    1.4 cannot get a available connection

    1. 这种情况基本是要检查连接池的初始化连接数及最大连接数不够的问题,需要调大点;再者就是数据库可能出了问题。
  • 相关阅读:
    JavaScript复习总结二(函数)
    欢迎大家赐教
    windows下安装rabbitmq
    JAVA随机获取集合里的元素
    MySQL 【CAST】函数,类型转换使用
    驭犬术
    C#处理数码相片之马赛克的实现
    开场白
    女孩,当你说没有好男人时请看看
    一个字符美女
  • 原文地址:https://www.cnblogs.com/tanshaoxiaoji/p/mysql_connect.html
Copyright © 2011-2022 走看看