新聞中心
問:怎樣才能解決mysql 8小時空閑后連接超時的問題?

目前創(chuàng)新互聯(lián)公司已為超過千家的企業(yè)提供了網(wǎng)站建設(shè)、域名、網(wǎng)頁空間、網(wǎng)站托管、服務(wù)器托管、企業(yè)網(wǎng)站設(shè)計、常州網(wǎng)站維護(hù)等服務(wù),公司將堅持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。
答:當(dāng)應(yīng)用程序和數(shù)據(jù)庫建立連接時,如果超過了8個小時,應(yīng)用程序句不會去訪問數(shù)據(jù)庫,數(shù)據(jù)庫就會出現(xiàn)斷掉連接的現(xiàn)象 。這時再次訪問就會拋出異常,異常如下:
以下為引用的內(nèi)容:
Communications link failure due to
underlying exception:
** BEGIN NESTED EXCEPTION **
java.io.EOFException
STACKTRACE:
java.io.EOFException
at com.mysql.jdbc.MysqlIO.readFully(MysqlIO.java:1913)
at com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:2304)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2803)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1573)
...
一般的解決方法大多是在數(shù)據(jù)庫連接字符串中增加“autoReconnect=true ”選項。但是這只對mysql4以前的版本有效。在最新的mysql中是無效的。其實要解決這個問題也有一個簡單的方法,就是修改mysql的啟動參數(shù)。缺省情況下mysql的timeout時間是28800秒,正好是8小時,增加一個0就可以了。
同理也可以在" my.ini"文件中增加此參數(shù)。
mysqld-nt --default-table-type=innodb --interactive_timeout=288000
用了以上的方法,就能夠很好的解決連接超時的問題,提高了mysql數(shù)據(jù)庫的工作效率,大家何樂而不為呢?
網(wǎng)站題目:mysql8小時空閑后連接超時的問題
本文地址:http://m.fisionsoft.com.cn/article/cdeecco.html


咨詢
建站咨詢
