成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

Mysql數(shù)據(jù)庫中的自動重連機制怎么利用JDBC實現(xiàn)

這篇文章將為大家詳細講解有關(guān)MySQL數(shù)據(jù)庫中的自動重連機制怎么利用JDBC實現(xiàn),文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關(guān)知識有一定的了解。

創(chuàng)新互聯(lián)主要從事成都網(wǎng)站制作、網(wǎng)站設(shè)計、網(wǎng)頁設(shè)計、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)吳江,十余年網(wǎng)站建設(shè)經(jīng)驗,價格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):18982081108

日志:using the Connector/J connection property 'autoReconnect=true' to avoid this problem

com.mysql.jdbc.CommunicationsException: The last packet successfully received from the server was58129 seconds ago.The last packet sent successfully to the server was 58129 seconds ago, which is longer than the server configured value of 'wait_timeout'. You should consider either expiring and/or testing connection validity before use in your application, increasing the server configured values for client timeouts, or using the Connector/J connection property 'autoReconnect=true' to avoid this problem.

查了一下,原來是MySQL超時設(shè)置的問題

如果連接閑置8小時 (8小時內(nèi)沒有進行數(shù)據(jù)庫操作), mysql就會自動斷開連接, 要重啟tomcat.

解決辦法:

第一種:如果不用hibernate的話, 則在 connection url中加參數(shù): autoReconnect=true

 jdbc.url=jdbc:mysql://ipaddress:3306/database?autoReconnect=true&autoReconnectForPools=true

第二種:用hibernate的話, 加如下屬性:

 <property name="connection.autoReconnect">true</property>
 <property name="connection.autoReconnectForPools">true</property>
 <property name="connection.is-connection-validation-required">true</property>

第三種:要是還用c3p0連接池:

 <property name="hibernate.c3p0.acquire_increment">1</property> 
 <property name="hibernate.c3p0.idle_test_period">0</property> 
 <property name="hibernate.c3p0.timeout">0</property>
 <property name="hibernate.c3p0.validate">true</property>

第四種:最不好的解決方案

使用Connector/J連接MySQL數(shù)據(jù)庫,程序運行較長時間后就會報以下錯誤:

Communications link failure,The last packet successfully received from the server was *** millisecond ago.The last packet successfully sent to the server was ***  millisecond ago。

其中錯誤還會提示你修改wait_timeout或是使用Connector/J的autoReconnect屬性避免該錯誤。

后來查了一些資料,才發(fā)現(xiàn)遇到這個問題的人還真不少,大部分都是使用連接池方式時才會出現(xiàn)這個問題,短連接應(yīng)該很難出現(xiàn)這個問題。

這個問題的原因:

MySQL服務(wù)器默認的“wait_timeout”是28800秒即8小時,意味著如果一個連接的空閑時間超過8個小時,MySQL將自動斷開該 連接,而連接池卻認為該連接還是有效的(因為并未校驗連接的有效性),當(dāng)應(yīng)用申請使用該連接時,就會導(dǎo)致上面的報錯。

⑴.按照錯誤的提示,可以在JDBC URL中使用autoReconnect屬性,實際測試時使用了autoReconnect=true& failOverReadOnly=false,不過并未起作用,使用的是5.1版本,可能真像網(wǎng)上所說的只對4之前的版本有效。

⑵.沒辦法,只能修改MySQL的參數(shù)了,wait_timeout最大為31536000即1年,在my.cnf中加入:

[mysqld]

wait_timeout=31536000

interactive_timeout=31536000

重啟生效,需要同時修改這兩個參數(shù)。

關(guān)于Mysql數(shù)據(jù)庫中的自動重連機制怎么利用JDBC實現(xiàn)就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

網(wǎng)頁標題:Mysql數(shù)據(jù)庫中的自動重連機制怎么利用JDBC實現(xiàn)
瀏覽地址:http://jinyejixie.com/article30/psippo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供用戶體驗、服務(wù)器托管、網(wǎng)站建設(shè)品牌網(wǎng)站設(shè)計、網(wǎng)站導(dǎo)航、網(wǎng)站制作

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都做網(wǎng)站
扶绥县| 永德县| 永丰县| 泰安市| 专栏| 拜城县| 利辛县| 尼木县| 西安市| 宽城| 始兴县| 鱼台县| 株洲市| 微山县| 阜康市| 冷水江市| 永兴县| 阜宁县| 武胜县| 陈巴尔虎旗| 上蔡县| 咸阳市| 巴林右旗| 米林县| 灵石县| 崇仁县| 连州市| 呈贡县| 峨眉山市| 台州市| 台州市| 南靖县| 鄢陵县| 芜湖县| 准格尔旗| 齐齐哈尔市| 梓潼县| 宜州市| 封开县| 益阳市| 鸡泽县|