DM7中網路通訊異常的排查方法
在大家剛剛接觸達夢資料庫的時候,經常會碰到的一個問題就是網路通訊異常。跟據使用的連接工具不同,問題具體可能表現為網路通訊異常或者socket連接失敗。
Mananger下的報錯
Disql下的報錯
當遇到此類報錯的時候,我們該如何排查問題呢,本文就將給大家介紹幾種可能的錯誤原因以及排查辦法。
一、達夢資料庫的服務沒有啟動
1)linux伺服器執行 ps -ef|grep dmserver,查看進程是否存在;
2)windows伺服器,使用達夢服務查看器(dmdbms ooldmservice.exe查看達夢資料庫實例服務)檢查服務是否啟動,或者用windows自帶的服務查看器(cmd運行services.msc),查看達夢資料庫實例服務狀態;
二、遠程訪問被防火牆攔截
如果服務在本地連接正常,但是使用遠程連接時提示網路異常,一般情況下是防火牆引發的問題。此時需要檢查防火牆相關設置,一般生產系統是不允許直接關閉防火牆的,那麼就需要在資料庫伺服器上開啟對應埠遠程訪問的許可權(默認為5236)。
此處已Linux下為例:
直接編輯/etc/sysconfig/iptables文件
1.編輯/etc/sysconfig/iptables文件:vi /etc/sysconfig/iptables
加入內容並保存:-A RH-Firewall-1-INPUT -m state--state NEW -m tcp -p tcp --dport 5236 -j ACCEPT
2.重啟服務:/etc/init.d/iptablesrestart
3.查看埠是否開放:/sbin/iptables-L -n
三、埠號不對
達夢資料庫默認埠號為5236,使用達夢管理工具或jdbc等其他介面訪問資料庫,若未單獨指定埠號,則默認使用5236埠;
埠號相關設置默認在dmdbms/data/DAMENG目錄下的dm.ini文件中搜索PORT_NUM,確認埠號後,再使用正確的埠號訪問
參數說明:
PORT_NUM 伺服器通訊埠號, 有效值範圍(1024~65534),默認值5236
四、達到最大會話數限制,無法建立新的連接
解決方法:
1)先確定是否達到最大會話數限制
在dmdbms/log目錄下,查看當月日誌,例如,本月(8月)的日誌名為:dm_DMSERVER_201808.log 若日誌中有reach the maxsession limit的提示,則說明達到最大會話數限制。
2)確認是由此原因導致無法訪問資料庫,則需要進行以下兩個方面的排查
a. 應用連接池配置,連接池最大會話數要進行合理的設置
b. dm.ini文件中,MAX_SESSIONS參數,默認為100,可根據實際需要調整
參數說明:
MAX_SESSIONS 系統允許同時連接的最大數,同時還受到LICENSE的限制,取二者中較小的值,有效值範圍(1~65000)
3)若應用連接池設置的最大連接數設置為500,且lincense為正式企業版、測試企業版,則需要修改dm.ini中MAX_SESSION參數>500
在資料庫中執行SP_SET_PARA_VALUE(2,"MAX_SESSIONS",600);
4)參數修改完成後,需要重啟資料庫服務生效;
TAG:武漢達夢資料庫 |