dm.jdbc.driver.DMException網(wǎng)絡(luò)通信異常的解決過(guò)程
問(wèn)題重述:
IDEA中項(xiàng)目啟動(dòng)不成功,達(dá)夢(mèng)數(shù)據(jù)庫(kù)連接不上,報(bào)網(wǎng)絡(luò)通信異常與連接超時(shí)錯(cuò)誤
報(bào)錯(cuò):
1.dm.jdbc.driver.DMException: 網(wǎng)絡(luò)通信異常
2.Caused by: java.net.SocketTimeoutException: connect timed out
3.ERROR : create connection SQLException, url: jdbc:dm://這里是我的Url, errorCode 6001, state 08S01
數(shù)據(jù)庫(kù)中的錯(cuò)誤
項(xiàng)目啟動(dòng)中的錯(cuò)誤
問(wèn)題背景:
今天讓跑一個(gè)項(xiàng)目,跑不出來(lái),一直報(bào)上述的錯(cuò)誤,數(shù)據(jù)庫(kù)網(wǎng)絡(luò)通信異常以及連接超時(shí)。由于這個(gè)數(shù)據(jù)庫(kù)是布置在對(duì)方的,連接得使用vpn,所以我單獨(dú)在達(dá)夢(mèng)數(shù)據(jù)庫(kù)中測(cè)試數(shù)據(jù)庫(kù)是否能跑通,結(jié)果可想而知,還是網(wǎng)絡(luò)通信異常報(bào)6001.這時(shí)我又試試在dbeaver中能否跑通,結(jié)果還是跑不通,在搜索了相關(guān)博客,找到了一篇相對(duì)能解決問(wèn)題的,在此感謝這位大佬登錄EasyConnect后無(wú)法通過(guò)jdbc訪問(wèn)服務(wù)器數(shù)據(jù)庫(kù)問(wèn)題解決
用了大佬的方式。dbeaver 連接遠(yuǎn)程數(shù)據(jù)庫(kù)成功了。在dbeaver上跑成功了,那在項(xiàng)目代碼中因該就不會(huì)出現(xiàn)這個(gè)問(wèn)題了。結(jié)果我重新啟動(dòng)項(xiàng)目報(bào)一樣的錯(cuò)誤。給孩子整絕望了,最后在我導(dǎo)的幫助下終于解決了
嘗試解決過(guò)程:
1.首先排除了由于數(shù)據(jù)等輸入錯(cuò)誤的相關(guān)信息
2.使用達(dá)夢(mèng)數(shù)據(jù)庫(kù)驗(yàn)證是否能連接成功數(shù)據(jù)庫(kù)-----》連接不成功,排除項(xiàng)目中的錯(cuò)誤
3.使用上述博客方法,加入代碼
-Djava.net.preferIPv4Stack=true
-------------------------------------------------------------------------------------------------------------------------------
4.查看程序代碼的驅(qū)動(dòng)包是否不兼容以及dbeaver和達(dá)夢(mèng)的驅(qū)動(dòng)包兼容----》兼容
5..在項(xiàng)目控制端使用telnet ip 端口號(hào)---》 驗(yàn)證網(wǎng)絡(luò)通信是否正常
6.使用ping 命令驗(yàn)證網(wǎng)絡(luò)是否通暢
7..因?yàn)閿?shù)據(jù)庫(kù)網(wǎng)絡(luò)通信異常,嘗試將遠(yuǎn)程的數(shù)據(jù)庫(kù)換成本地的數(shù)據(jù)庫(kù)-----》換成本地?cái)?shù)據(jù)庫(kù)跑成功;
8.嘗試換一個(gè)環(huán)境重新運(yùn)行,結(jié)果失敗-----》驗(yàn)證了不是環(huán)境的問(wèn)題
------》綜上得出是達(dá)夢(mèng)數(shù)據(jù)庫(kù)的問(wèn)題
---------------------------------------------------------------------------------------------------------------------------------
9.查看操作系統(tǒng)是否兼容(自己沒(méi)嘗試)
10.嘗試用xshell訪問(wèn)對(duì)面的服務(wù)器地址(這里查看了后端項(xiàng)目部署的環(huán)境,確定是用的所需要的部署配置yml文件),訪問(wèn)成功----》排除了vpn的錯(cuò)誤
11.嘗試用xshell訪問(wèn)連接數(shù)據(jù)庫(kù)(沒(méi)來(lái)的急嘗試)
最終解決方法:
參考上述博客,(上述博客僅在dbeaver中配置了語(yǔ)句)在項(xiàng)目中也應(yīng)該配置這種語(yǔ)句,具體操作如下
配置完成后在啟動(dòng)成功解決上述報(bào)錯(cuò)
歸納原因:
在項(xiàng)目中,由于是通過(guò)vpn進(jìn)行數(shù)據(jù)庫(kù)訪問(wèn)的,所以會(huì)出現(xiàn)網(wǎng)絡(luò)通信異常以及連接超時(shí)的問(wèn)題。歸結(jié)其原因是jdbc連接數(shù)據(jù)庫(kù)與vpn訪問(wèn)之間的沖突
為什么要在dbeaver中配置了還得在idea中配置?
dbeaver本質(zhì)是java程序,可以將其想象為虛擬機(jī)
springboot本質(zhì)也是java程序,可以將其想象為虛擬機(jī)
添加話語(yǔ):-Djava.net.preferIPv4Stack=true類似于在虛擬機(jī)上配置環(huán)境變量,保證虛擬機(jī)能正常運(yùn)行
在項(xiàng)目vm option中配置,這里的VM就是指虛擬機(jī)
總結(jié)與強(qiáng)調(diào):
在項(xiàng)目vm option在選項(xiàng)中配置一句-Djava.net.preferIPv4Stack=true 連接后就可以了。這句話配置不僅要在數(shù)據(jù)庫(kù)中配置,還要在跑項(xiàng)目的環(huán)境中配置
到此這篇關(guān)于dm.jdbc.driver.DMException網(wǎng)絡(luò)通信異常的解決過(guò)程的文章就介紹到這了,更多相關(guān)dm.jdbc.driver.DMException網(wǎng)絡(luò)通信異常內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
JavaWeb實(shí)現(xiàn)學(xué)生信息管理系統(tǒng)(1)
這篇文章主要為大家詳細(xì)介紹了JavaWeb實(shí)現(xiàn)學(xué)生信息管理系統(tǒng)第一篇,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-08-08SpringBoot 項(xiàng)目添加 MDC 日志鏈路追蹤的執(zhí)行流程
日志鏈路追蹤就是將一個(gè)標(biāo)志跨線程進(jìn)行傳遞,在一般的小項(xiàng)目中也就是在你新起一個(gè)線程的時(shí)候,或者使用線程池執(zhí)行任務(wù)的時(shí)候會(huì)用到,比如追蹤一個(gè)用戶請(qǐng)求的完整執(zhí)行流程,本文給大家介紹SpringBoot MDC 日志鏈路追蹤的代碼,感興趣的朋友一起看看吧2021-06-06SpringBoot+TestNG單元測(cè)試的實(shí)現(xiàn)
本文主要介紹了SpringBoot+TestNG單元測(cè)試的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-07-07基于ElasticSearch Analyzer的使用規(guī)則詳解
這篇文章主要介紹了基于ElasticSearch Analyzer的使用規(guī)則,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-07-07