1. 程式人生 > >C3P0連線池連線異常錯誤解決

C3P0連線池連線異常錯誤解決

當併發量大的時候,C3P0連線池會出現如下異常資訊:

Caused by: java.sql.SQLException: An attempt by a client to checkout a Connection has timed out.
at com.mchange.v2.sql.SqlUtils.toSQLException(SqlUtils.java:106)
at com.mchange.v2.sql.SqlUtils.toSQLException(SqlUtils.java:65)
at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutPooledConnection(C3P0PooledConnectionPool.java:527)
at com.mchange.v2.c3p0.impl.AbstractPoolBackedDataSource.getConnection(AbstractPoolBackedDataSource.java:128)
at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:113)
at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:79)
... 5 more
Caused by: com.mchange.v2.resourcepool.TimeoutException: A client timed out while waiting to acquire a resource from

[email protected] -- timeout at awaitAvailable()
at com.mchange.v2.resourcepool.BasicResourcePool.awaitAvailable(BasicResourcePool.java:1317)
at com.mchange.v2.resourcepool.BasicResourcePool.prelimCheckoutResource(BasicResourcePool.java:557)
at com.mchange.v2.resourcepool.BasicResourcePool.checkoutResource(BasicResourcePool.java:477)
at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutPooledConnection(C3P0PooledConnectionPool.java:525)
... 8 more

解決方案就是在配置檔案裡把:

        <!--當連線池中的連線耗盡的時候c3p0一次同時獲取的連線數。Default: 3 -->
        <property name="acquireIncrement" value="5"/>

適當的增加一次性獲得的連線數目方可解決此問題。

相關推薦

C3P0連線連線異常錯誤解決

當併發量大的時候,C3P0連線池會出現如下異常資訊: Caused by: java.sql.SQLException: An attempt by a client to checkout a Connection has timed out. at com.mchang

一次c3p0連線連線異常錯誤的排查

最近寫了一個數據庫採集程式,大概過程是將SQLSERVER資料庫的資料定時採集到Oracle資料庫。1小時出一次資料,每次資料量在2W左右。環境採用Sping3+hibernate4,資料庫連線池採用C3p0 奇怪的時候每隔一段時間都會報:“c3p0 connection

利用C3P0連線連線mysql資料庫,超過幾小時後連線報wait_timeout錯誤

之前做了一個小專案,用的是C3P0連線池連線mysql資料庫,由於連線數目較小,隔天再連線發現報如下異常錯誤,然後重新重新整理後又正常: 之後檢視資料後發現是因為 :MySQL 的預設設定下,當一個連線的空閒時間超過8小時後,MySQL 就會斷開該連線,而 c3p0 連線

tomcat配置c3p0資料庫連線遇到問題與解決

這短時間在做一個Android專案,由於牽扯到資料庫,也就有伺服器。app預期是想做大,所以一方面考慮到效能相關 因此就想把tomcat和比較知名的c3p0結合起來,從這一方面來提高效能。 首先第一步:把c3p0解壓資料夾的3個jar包全部考到tomcat根目錄下lib資料

Navicat連線MySql8+出現2059錯誤解決辦法

今天使用Navicat連線mysql的時候報了2059的錯誤,為了解決這個看似不難的問題,我也是試了不少方法,在這裡給大家分享下我的經驗。 首先出現2059這個錯誤的原因是因為在mysql8之前的版本中加密規則為mysql_native_password。但是在mysql8以後的加密規則

電腦遠端連線時, 提示密碼錯誤解決方法

1.電腦遠端連線對於我們辦公來說很重要,   但是常常會出現密碼錯誤的問題.   解決方法 確認事項: 1.被控制電腦設定了使用者名稱和密碼,  在哪設定?   2.現在知道密碼了,  使用者名稱呢?  你是否以為就

關於navicat連線mysq出現如下錯誤解決方法

Navicat Premium 12系列 連線MySQL資料庫時會出現Authentication plugin ‘caching_sha2_password’ cannot be loaded的錯誤: 解決方法: 首先通過命令列進入mysql,依次輸入以下命令: ALTER US

Mysql+hibernate 長時間不操作再進入,導致連線關閉的問題解決

最近總是發現自己的MySQL資料庫,隔天不登陸一次,就會出現以下錯誤: ERROR [2016-04-27 07:59:38] [http-bio-80-exec-10] org.hibernate.transaction.JDBCTransaction:95 - J

無法連線到伺服器的錯誤解決方案

  機房收費系統進入埠的時候,前幾次明明好了,可是第三次開啟電腦的時候說什麼也連線不上了! 進入登陸窗體,系統登陸顯示未未響應! 看資料庫告訴你,無法遠端連線!(這叫讓人一個惱火!可是惱火沒有用啊,在提高班沒培養出啥來,遇到問題不慌不亂,習以為常倒是真的!方法總比困難多

MySqlDBCP連線8小時失效解決方案

<bean id="readDS" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">         <property name="driverClassName" value="${slave

Qt5.9連線MySql5.7.17錯誤解決辦法(錯誤提示:QMYSQL driver not loaded)

我用Qt5.9新建一個Console控制檯程式,用Qt5.9Console控制檯測試連線MySql5.7.17資料庫時,出現MySql資料庫驅動不可用,具體的程式碼和錯誤如下所示:1.1程式碼如下:(記得在.pro問價裡面新增QT+=sql)#include<QCore

[轉載]跟蹤 c3p0 連線連線洩漏

最近的專案碰到了連線洩漏的問題。 專案用的是Spring + Hibernate + c3p0,具體表現為,系統 執行一段時間後,使用者開啟登入頁後,執行登入無響應,檢視後臺日誌,提示Could not open Connection。將c3p0日誌級別調成debug之

資料庫連線資料庫異常自動重連配置彙總

 在實際應用中,有的時候會遇到這樣一種情況: 資料庫和應用伺服器分別在兩臺主機上,當資料庫連線意外斷開,自動重新連線後,應用和資料庫能夠重新連線成功,但是報表應用就無法使用了,必須重啟應用伺服器,才能繼續使用報表應用。 下面介紹一種方法,使得不重啟應用伺服器就可以重新連

連線MySQL出現2013錯誤解決

環境:Navicat for Mysql 8.2+ MySQL Sever 5.1 問題:使用Navicat for Mysql連線MySQL出現如下錯誤:2013-Lost connection to MySQL server at ‘reading initialcom

JDBC資料庫連線連線資料庫及資料庫操作DAO層設計通用更新及查詢方法(二)

上篇文章主要介紹了通過資料庫連線池連線資料庫,然後設計了對資料庫通用更新和查詢方法,本篇文章主要通過例項介紹上篇文章定義的對資料庫操作的幾個方法的使用:     首先我們先在資料庫建立一個學生資訊表Student欄位如圖: 建立好表將配置檔案的資訊改好然後需要建立一

JDBC資料庫連線連線資料庫及資料庫操作DAO層設計通用更新及查詢方法(一)

該篇文章介紹了資料庫連線池獲取資料庫連線以及資料庫操作的基本使用,然後主要提供了java專案案例中dao層的一種設計,利用反射的原理定義了通用的查詢方法可以對應所有的表和例項。文章中的每段程式碼都提供了詳細的註釋及邏輯步驟 首先匯入資料庫連線的所需要的jar包:    

Mybatis 搭配 阿里druid連線 連線 oracle 或 mysql

DRUID介紹     DRUID是阿里巴巴開源平臺上一個資料庫連線池實現,它結合了C3P0、DBCP、PROXOOL等DB池的優點,同時加入了日誌監控,可以很好的監控DB池連線和SQL的執行情況,可以說是針對監控而生的DB連線池(據說是目前最好的連線池,不知道速

Nodejs:連線連線mysql

OptPool.js var mysql = require("mysql");//呼叫mysql模組 function OptPool() { this.flag = true;//是否連線過 this.pool = mysql.createPool({

連線資料庫(java驅動連線連線連線

使用java驅動連線資料庫:        String url ="jdbc:mysql://localhost:3306/zhongruan";        String usernam

Java Web開發7___通過資料庫連線連線MySQL 資料庫

本博文 給出一個使用資料庫連線池的例子, 將使用webdb 資料來源 獲取一個MySQL 資料庫連線,並查詢其中的t_dirctionary表, 最後將查詢結果顯示在客戶端瀏覽器。 以下ViewDictionary 類 演示了怎麼樣 使用資料庫連線池獲取資料庫連線, 程式碼如下: i