成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

您的位置:首頁技術(shù)文章
文章詳情頁

MySQL數(shù)據(jù)庫連接異常匯總(值得收藏)

瀏覽:124日期:2023-10-13 09:25:19

在Centos上部署項目發(fā)現(xiàn)一個奇怪的問題,數(shù)據(jù)庫連接一直拋異常。于是花了兩個小時搜了各種數(shù)據(jù)庫連接異常導(dǎo)致的原因,最終問題得以解決。同時,把解決過程中搜集到的異常信息匯總一下,當(dāng)大家遇到類似的問題時,給大家以思路。必須珍藏。

問題現(xiàn)象

先來說說我遇到的問題。項目中遇到的問題很奇怪,在Centos上安裝了Mysql數(shù)據(jù)庫,項目使用的是Spring Boot。

項目在本地啟動連接服務(wù)器數(shù)據(jù)庫正常、本地數(shù)據(jù)庫客戶端連接服務(wù)器數(shù)據(jù)庫正常、服務(wù)器本地連接client連接數(shù)據(jù)庫正常。唯獨(dú)把項目部署到服務(wù)器上啟動時拋出異常。

異常信息大概(當(dāng)時未保留異常信息)如下:

com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server. at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) at java.lang.reflect.Constructor.newInstance(Unknown Source) at com.mysql.jdbc.Util.handleNewInstance(Util.java:425) at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:989) at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:341) at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2196) at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2229) at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2024) at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:779) at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:47) at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) at java.lang.reflect.Constructor.newInstance(Unknown Source) at com.mysql.jdbc.Util.handleNewInstance(Util.java:425) at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:389) at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:330) at java.sql.DriverManager.getConnection(Unknown Source) at java.sql.DriverManager.getConnection(Unknown Source) at com.ad.MysqlDemo.main(MysqlDemo.java:32)Caused by: java.net.ConnectException: Connection refused: connect at java.net.DualStackPlainSocketImpl.connect0(Native Method) at java.net.DualStackPlainSocketImpl.socketConnect(Unknown Source) at java.net.AbstractPlainSocketImpl.doConnect(Unknown Source) at java.net.AbstractPlainSocketImpl.connectToAddress(Unknown Source) at java.net.AbstractPlainSocketImpl.connect(Unknown Source) at java.net.PlainSocketImpl.connect(Unknown Source) at java.net.SocksSocketImpl.connect(Unknown Source) at java.net.Socket.connect(Unknown Source) at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:211) at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:300) ... 15 more

異常原因

幾乎嘗試了網(wǎng)絡(luò)上所有的解決方案均無效。漸漸開始懷疑是JDK在作怪。本地使用的JDK版本是1.8.0_151,服務(wù)器使用的是1.8.0.242,理論上是沒有影響的。

于是把服務(wù)器上的jdk卸載,從官網(wǎng)下載了安裝包重新安裝了1.8.0_241,數(shù)據(jù)庫連接的問題消失了。

后來仔細(xì)一想,不是小版本號的問題,而是安裝JDK的版本問題,本機(jī)安裝的JDK是從Oracle官網(wǎng)下載的,而服務(wù)器上存儲為了省事直接使用yum命令安裝的。而centos上默認(rèn)給安裝了OpenJDK。我們知道,從jdk7之后,JDK和OpenJDK屬于兩個不同授權(quán)協(xié)議的版本,而OpenJDK源代碼不完整、OpenIDK只包含最精簡的JDK。

下面分享一下搜索上述異常過程中發(fā)現(xiàn)的其他原因?qū)е骂愃频漠惓5那闆r及解決方案。

sock路徑問題

問題現(xiàn)象與上述一樣,除了服務(wù)器部署應(yīng)用無法連接服務(wù)器之外,其他方式都可以連接數(shù)據(jù)庫。

導(dǎo)致問題的原因是:服務(wù)器有兩塊磁盤,中間執(zhí)行過mv命令,將數(shù)據(jù)庫的存儲內(nèi)容進(jìn)行了移動操作,同時修改了datadir指向新的目錄。

結(jié)果:用JAVA程序本地連接失敗,拋出org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (Communications link failure 異常。

解決方案:修改了datadir相應(yīng)配置之后,要核查一下mysql.sock文件路徑的配置。默認(rèn)會在/var/lib/mysql/mysql.sock或/temp/mysql.sock。然后,統(tǒng)一修改所有的端([client]、[mysql]、[mysqld]等)均使用統(tǒng)一路徑。

SSL連接問題

如果一次信息中還出現(xiàn)如下異常信息:

javax.net.ssl.SSLHandshakeException: No appropriate protocol (protocol is disabled or cipher suites are inappropriate) at sun.security.ssl.Handshaker.activate(Handshaker.java:529) at sun.security.ssl.SSLSocketImpl.kickstartHandshake(SSLSocketImpl.java:1492) at sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1361) at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1413) at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1397)

則有可能是SSL連接的問題。網(wǎng)絡(luò)是有朋友升級到j(luò)dk1.8之后出現(xiàn)上述異常。

解決方案:刪掉SSLv3。在JAVA_HOME/jre/lib/security/java.security文件中找到j(luò)dk.tls.disabledAlgorithns=SSLv3,……相關(guān)的配置,刪掉SSLv3部分。刪掉SSLv3就是允許SSL調(diào)用。

針對SSL連接的問題,還有一種情況就是Mysql使用SSL連接。關(guān)于如何配置可參看該文章:https://www.jb51.net/article/100432.htm。

數(shù)據(jù)庫連接超時

這種情況是網(wǎng)上主流的信息,有大量的文章,但往往都沒有說明具體的場景:應(yīng)用程序使用過程中出現(xiàn)類似上述異常,注意這里是使用過程中,而不是啟動拋異常。

導(dǎo)致使用過程中出現(xiàn)異常的原因是:Mysql服務(wù)器默認(rèn)的“wait_timeout”是8小時(28800秒),也就是一個connection空閑(沒有活動)超過8個小時,Mysql將自動斷開該connection。而連接池卻認(rèn)為該連接還是有效的(因為并未校驗連接的有效性),當(dāng)應(yīng)用申請使用該連接時,就會導(dǎo)致上面的報錯。

解決方案:修改my.ini配置,增加超時時間或在連接url中添加“&autoReconnect=true”。

在port=3306下面添加如下配置:

wait_timeout=31536000interactive_timeout=31536000

然后重啟MySQL。

這種情況也有可能是數(shù)據(jù)庫連接池maxIdleTime配置導(dǎo)致的。

<!-- 最大空閑時間,60秒內(nèi)未使用則連接被丟棄。若為0則永不丟棄。Default: 0 --> <property name='maxIdleTime' value='0'></property>

由于mysql的連接空閑超過8個小時就關(guān)閉了,但是連接池卻永不丟棄連接,認(rèn)為該連接還是有效的(因為并未校驗連接的有效性),當(dāng)應(yīng)用申請使用該連接時,就會導(dǎo)致上面的報錯。

解決方法:將value設(shè)置為20。

其他原因

當(dāng)然,關(guān)于MySQL連接出現(xiàn)類似異常還有其他很多原因:

數(shù)據(jù)庫賬戶訪問權(quán)限問題:指定ip和賬戶授權(quán); 網(wǎng)絡(luò)權(quán)限問題:防火墻是否開啟對應(yīng)的訪問權(quán)限; 端口問題:訪問的端口是否正確,端口是否開啟防火墻權(quán)限; 賬戶密碼問題:賬戶密碼錯誤或賬戶沒有指定ip的訪問權(quán)限; 數(shù)據(jù)庫驅(qū)動問題:數(shù)據(jù)庫驅(qū)動與數(shù)據(jù)庫對應(yīng)版本不匹配。 網(wǎng)絡(luò)穩(wěn)定問題:網(wǎng)絡(luò)不穩(wěn)定導(dǎo)致的問題。 數(shù)據(jù)庫連接池問題:數(shù)據(jù)庫連接池配置過大,導(dǎo)致mysql默認(rèn)連接數(shù)不夠的問題。 ipv4與ipv6的問題。

以上就是MySQL數(shù)據(jù)庫連接異常匯總的詳細(xì)內(nèi)容,更多關(guān)于MySQL數(shù)據(jù)庫連接異常的資料請關(guān)注好吧啦網(wǎng)其它相關(guān)文章!

標(biāo)簽: MySQL 數(shù)據(jù)庫
相關(guān)文章:
成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久
欧美a级片一区| 自拍偷拍亚洲激情| 中文字幕字幕中文在线中不卡视频| 久久国产视频网| 亚洲专区一区二区三区| 中文av一区二区| 你懂的国产精品永久在线| 日韩一区二区三区四区| 九九九久久久精品| 欧美日韩一区国产| 免费观看成人av| 久久亚洲电影| 三级在线观看一区二区 | 日本成人在线电影网| 久久精品欧美| 日韩国产欧美在线观看| 久久黄色网页| 日韩av中文在线观看| 欧洲精品中文字幕| 蜜桃精品在线观看| 欧美性猛交xxxxxx富婆| 国内精品自线一区二区三区视频| 欧美久久婷婷综合色| 国产精品69毛片高清亚洲| 欧美成人一区二区三区片免费 | 老妇喷水一区二区三区| 偷拍一区二区三区四区| 麻豆成人小视频| 日韩电影免费在线看| 老司机午夜精品视频在线观看| 日韩高清不卡一区二区三区| 欧美婷婷六月丁香综合色| 国产高清无密码一区二区三区| 精品久久久久一区| 韩国久久久久| 亚洲一区二区在线观看视频 | 精品久久久久久久久久久久久久久 | 中文精品一区二区三区 | 中文字幕在线观看不卡| 999在线观看精品免费不卡网站| 亚洲免费在线视频| 国产精品视频久久一区| 午夜不卡在线视频| 欧美日韩一区不卡| 国产99久久久国产精品潘金| 日韩美女在线视频| 色综合中文综合网| 日韩一区二区在线看| 欧美日本一区| 亚洲柠檬福利资源导航| 亚洲在线网站| 久久精品国产秦先生| 欧美一区二区久久| 欧美日韩国产亚洲一区| 亚洲成人动漫精品| 欧美一级在线免费| 欧美日韩大片一区二区三区| 一区二区三区视频在线观看| 欧洲av在线精品| 99久久精品情趣| 亚洲精品午夜久久久| 欧美在线免费播放| 成人精品一区二区三区中文字幕| 欧美激情一区二区在线| 美女精品网站| 大桥未久av一区二区三区中文| 国产日韩成人精品| 久久大逼视频| 成人亚洲精品久久久久软件| 国产精品久久久久久久裸模| 久久蜜桃精品| 成人高清视频在线观看| 亚洲男女一区二区三区| 欧美影视一区在线| 91在线国产福利| 亚洲一区二区在线播放相泽| 欧美丰满美乳xxx高潮www| 欧美日韩精品免费观看视一区二区| 亚洲高清免费视频| 日韩女优电影在线观看| 国产精品美女久久久| 国产精品亚洲а∨天堂免在线| 中文字幕在线一区| 欧美体内she精视频| 国产精品国产精品| 久久精品国产亚洲高清剧情介绍 | 国产综合第一页| 日韩av电影免费观看高清完整版| 欧美精品一区二区久久久| 国产精品美女久久久| 成人国产一区二区三区精品| 亚洲自拍偷拍九九九| 欧美电影免费观看高清完整版| 国产日韩一区二区三区在线播放 | 成人app在线观看| 亚洲国产人成综合网站| 欧美成人伊人久久综合网| 国产日韩1区| 99riav一区二区三区| 日韩av不卡在线观看| 国产精品午夜在线观看| 欧美老女人在线| 国产精品永久| 色综合天天狠狠| 久久超碰97人人做人人爱| 中文字幕中文字幕中文字幕亚洲无线 | 91蝌蚪porny成人天涯| 日本免费在线视频不卡一不卡二 | 337p粉嫩大胆噜噜噜噜噜91av| 媚黑女一区二区| 欧美午夜不卡影院在线观看完整版免费| 久久国内精品视频| 亚洲愉拍自拍另类高清精品| 国产无一区二区| 91麻豆精品国产91久久久使用方法 | 亚洲欧美一区二区三区极速播放| 日韩亚洲欧美综合| 另类国产ts人妖高潮视频| 欧美日韩国产综合在线| 国产成人8x视频一区二区| 亚洲成人免费观看| 国产精品乱码妇女bbbb| 91精品国产综合久久精品| 男女精品网站| 一区二区亚洲| av电影天堂一区二区在线观看| 美国三级日本三级久久99| 欧美日韩福利| 成人午夜看片网址| 毛片av一区二区三区| 亚洲国产成人av网| 国产精品成人一区二区三区夜夜夜| 日韩视频免费观看高清在线视频| 色婷婷av一区| 性色一区二区三区| 国产综合色一区二区三区| 成人动漫一区二区三区| 激情综合色播激情啊| 日本亚洲电影天堂| 亚洲国产精品精华液网站| 一区二区中文字幕在线| 久久新电视剧免费观看| 666欧美在线视频| 欧洲一区二区三区免费视频| 老鸭窝91久久精品色噜噜导演| 亚洲大片在线| 亚洲午夜伦理| 狠狠干综合网| 欧美一区视频| 91在线丨porny丨国产| 国产剧情一区在线| 蜜臀av性久久久久蜜臀aⅴ| 午夜亚洲国产au精品一区二区| 一区二区三区国产豹纹内裤在线| 综合久久久久综合| 亚洲色图欧洲色图婷婷| 中文字幕一区二区日韩精品绯色| 国产欧美日韩久久| 久久久综合网站| 久久综合久久综合九色| 精品裸体舞一区二区三区| 日韩网站在线看片你懂的| 在线电影欧美成精品| 精品视频在线视频| 欧美日韩日本视频| 色狠狠桃花综合| 久久国产日韩| 色哟哟一区二区| 色94色欧美sute亚洲线路二| 色综合久久久久久久| 久久亚洲图片| 在线观看国产日韩| 欧美综合天天夜夜久久| 欧美亚洲一区三区| 欧美人与性动xxxx| 91精品国产综合久久婷婷香蕉 | 亚洲另类在线制服丝袜| 中文字幕亚洲不卡| 亚洲欧洲在线观看av| 国产精品对白交换视频| 国产精品麻豆欧美日韩ww| 中文字幕在线观看不卡视频| 成人免费视频在线观看| 亚洲欧美激情一区二区| 亚洲欧美日韩在线| 一区二区三区蜜桃| 午夜成人免费电影| 久久爱另类一区二区小说| 国产乱子轮精品视频| 成人高清av在线| 99精品在线免费| 欧美午夜国产| 亚洲一区二区三区欧美| 色婷婷久久综合| 欧美主播一区二区三区| 欧美男生操女生| 精品国产三级a在线观看| 国产调教视频一区| 国产欧美一区二区精品婷婷 | 国产精品一区二区你懂的|