1. 程式人生 > >Mysql連線池問題

Mysql連線池問題

17/03/29 09:07:23 WARN resourcepool.BasicResourcePool: com.mchange.v2.resourcepool.BasicResourcePool@67d8bcd1 -- an attempt to checkout a resource was interrupted, and the pool is still live: some other thread must have interrupted the Thread attempting checkout!
java.lang.InterruptedException
    at java.lang
.Object.wait(Native Method) at com.mchange.v2.resourcepool.BasicResourcePool.awaitAvailable(BasicResourcePool.java:1465) at com.mchange.v2.resourcepool.BasicResourcePool.prelimCheckoutResource(BasicResourcePool.java:644) at com.mchange.v2.resourcepool.BasicResourcePool.checkoutResource(BasicResourcePool.java
:554) at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutAndMarkConnectionInUse(C3P0PooledConnectionPool.java:758) at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutPooledConnection(C3P0PooledConnectionPool.java:685) at com.mchange.v2.c3p0.impl.AbstractPoolBackedDataSource.getConnection
(AbstractPoolBackedDataSource.java:140) at org.skife.jdbi.v2.DataSourceConnectionFactory.openConnection(DataSourceConnectionFactory.java:34) at org.skife.jdbi.v2.DBI.open(DBI.java:211) at org.skife.jdbi.v2.sqlobject.OnDemandHandleDing.getHandle(OnDemandHandleDing.java:36) at org.skife.jdbi.v2.sqlobject.OnDemandHandleDing.retain(OnDemandHandleDing.java:44) at org.skife.jdbi.v2.sqlobject.SqlObject.invoke(SqlObject.java:215) at org.skife.jdbi.v2.sqlobject.SqlObject$2.intercept(SqlObject.java:109) at org.skife.jdbi.v2.sqlobject.CloseInternalDoNotUseThisClass$$EnhancerByCGLIB$$457b1cb2.getAll(<generated>) at com.donews.data.util.DBHelper$.getAllPublicTable(DBHelper.scala:183) at com.donews.data.WebConfig$.<init>(WebConfig.scala:25) at com.donews.data.WebConfig$.<clinit>(WebConfig.scala) at com.donews.data.newstreaming.inter.kafkainterface$.kafka2hbase(kafkainterface.scala:68) at com.donews.data.newstreaming.SdkStreaming$.main(SdkStreaming.scala:99) at com.donews.data.newstreaming.SdkStreaming.main(SdkStreaming.scala) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:497) at org.apache.spark.deploy.yarn.ApplicationMaster$$anon$2.run(ApplicationMaster.scala:542)

解決方法:

c3p0.properties放入resources中,如圖:

這裡寫圖片描述

c3p0.jdbcUrl=jdbc:mysql://mysql-database/user_privileges?useUnicode=true&characterEncoding=utf-8&useSSL=false
c3p0.user=funnel
c3p0.password=[email protected]<2wsx
c3p0.maxIdleTime=10000
c3p0.checkoutTimeout=70000
c3p0.initialPoolSize=5
c3p0.minPoolSize=3
c3p0.maxPoolSize=7

       如果您喜歡我寫的博文,讀後覺得收穫很大,不妨小額贊助我一下,讓我有動力繼續寫出高質量的博文,感謝您的讚賞!!!

相關推薦

Mysql-連線

#pragma once #include <deque> #include <mutex> #include <boost/thread/thread.hpp> #include <boost/thread/tss.hpp> #include &l

golang go-sql-drive mysql連線的實現 golang go-sql-drive mysql連線的實現

golang go-sql-drive mysql連線池的實現 golang內部自帶了連線池功能,剛開始接觸golang的時候不瞭解這個,還自己搞了一個 sql.Open的物件管理池,真的非常囧啊。 sql.Open函式實際上是返回

基於SWOOLE的MYSQL資料庫連線,php mysql 連線

swoole_mysqlpool 使用Swoole的\Swoole\Coroutine\MySQL建立連線,通過靜態類和靜態成員屬性維護連線池,不同協程可以共享該連線池。 排隊機制(先進先出)使用協程的特殊功能實現: \Swoole\Coroutine::resume(

swoole4-swoole建立Mysql連線

一 .什麼是mysql連線池 場景:每秒同時有1000個併發,但是這個mysql同時只能處理400個連線,mysql會宕機。 解決方案:連線池,這個連線池建立了200個和mysql的連線,這1000個併發就有順序的共享這連線池中的200個連線。 這個連線池能夠帶來額外的效能提升,因為這

深入解析Node.js使用MySQL連線

這篇文章主要介紹了Node.js使用MySQL連線池的方法,結合具體例項形式分析了nodejs操作mysql連線池的相關模組安裝、連線、查詢等使用技巧,寫的十分的全面細緻,具有一定的參考價值,對此有需要的朋友可以參考學習下。如有不足之處,歡迎批評指正。 Nodej

Hibernate使用Tomcat配置的Mysql連線

一個tomcat下的Hibernate程式`總是用不了幾天就掛`` 就試著做個連線池用``` 下面是我的步驟`: 1: 為Tomcat裝administration tools`` 第一步,確認你的Tomcat 中是否已安裝了Administration We

c3p0+mysql連線超時問題

java.sql.SQLException: Communications link failure 今天發現一個非常有趣的問題,當應用啟動之後,如果在一段時間內沒有任何操作,當再次操作的時候就會報一個Communications link failure異常,這個問題是什

python mysql 連線 + pymysqlpool

1、連線池元件選擇:這裡使用 pymysqlpool 建立連線池,專案地址:https://github.com/0xE8551CCB/pymysqlpool之所以使用該連線池元件,主要是因為:支援python3,基於pymysql,非常輕量化還有一個庫叫 PyMysqlPo

Node.js使用MySQL連線示例

下面是一個封裝好的工具類: var fs = require('fs'); var mysql = require('mysql'); var pool = mysql.createPool({ host : "localhost", user : "roo

Go中使用MySQL連線

使用MySQL的連結池可能存在如下問題:在客戶端連線池中的一條空閒連結,可能是一條已經被MySQL服務端關閉掉的連結。 下面是beego中的設定MySQL連線池的方法: err = orm.RegisterDataBase("default", "mys

JavaEE開發使用MySQL連線原理及好處

以下為自己綜合N多 視訊/部落格 資料之後的理解: 1. 基於最原始的JDBC及JDBC-MySQL 驅動來使用MySQL資料庫時經常會使用以下程式碼: //1.驅動註冊程式 Class.forName("com.mysql.jdbc.Driver");

golang go-sql-drive mysql連線的實現

golang內部自帶了連線池功能,剛開始接觸golang的時候不瞭解這個,還自己搞了一個 sql.Open的物件管理池,真的非常囧啊。 sql.Open函式實際上是返回一個連線池物件,不是單個連線。在open的時候並沒有去連線資料庫,只有在執行query、e

Mysql連線問題

17/03/29 09:07:23 WARN resourcepool.BasicResourcePool: com.mchange.v2.resourcepool.BasicResourcePool@67d8bcd1 -- an attempt to chec

java mysql連線【初學】

為什麼要用連線池 資料庫連線池負責分配、管理和釋放資料庫連線,它允許應用程式重複使用一個現有的資料庫連線,而不是再重新建立一個;釋放空閒時間超過最大空閒時間的資料庫連線來避免因為沒有釋放資料庫連線而引起的資料庫連線遺漏。這項技術能明顯提高對資料庫操作的效能。

基於express框架下Node.js+MySQL連線的資料庫增添操作

題記: 這幾天一直在學習Node以及關係型資料庫的知識,剛剛接觸到了express框架,就想利用express框架,實現一個通過ajax操作來向資料庫內增添資料的功能。 正文: 話不多說,現在我們就來一起看看吧!我們需要了解哪些知識,做哪些基本工作!

Java Mysql連線配置和案例分析--超時異常和處理

前言:   最近在開發服務的時候, 發現服務只要一段時間不用, 下次首次訪問總是失敗. 該問題影響雖不大, 但終究影響使用者體驗. 觀察日誌後發現, mysql連線因長時間空閒而被關閉, 使用時沒有死鏈檢測機制, 導致sql執行失敗.   問題的表層根源, 看似簡單, 但實際解決之路, 卻顯得有些曲折坎坷

使用mysql連線提高效能

對於訪問資料庫來說,建立連線的代價比較昂貴,因此,我們有必要建立"連線池"以提高訪問的效能。我們可以把連線當作物件或者裝置,池中又有許多已經建立的連線,訪問本來需要與資料庫的連線的地方,都改為和池相

C 語言實現MySQL連線

原始碼:連結:https://pan.baidu.com/s/1y0F3YrFfsZgDRe6g6r4RMg 密碼:vg2m 引言:資料庫連線池負責分配、管理和釋放資料庫連線,它允許應用程式重複使用一個現有的資料庫連線,而不是再重新建立一個; 連線池技術大多運

spring-hibernate配置多個mysql連線

<?xml version="1.0" encoding="UTF-8"?> <beans:beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns

簡單的MySQL連線,支援高併發。

/** * 連線池類 */ package com.junones.test; import java.sql.Connection; import java.sql.SQLException; import java.util.HashMap; import java.util.Map; imp