oracle dblink 查詢 tns:無法解析指定的連接標識符


問題情景是這樣的:我在數據庫服務器(windows server 2008r2 ,64bit)oracle(11gr2,64bit)中通過dblink連接到另外一台服務器(hp-ux)的oracle(10g,64bit),應用系統好多年了,一直這樣用沒有出現過問題。但昨天臨近下班時大樓突然斷電(機房ups供電),第二天上午恢復通電之后發現,凡是系統中通過dblink連接遠程數據庫的,都用不起來。

什么都沒動,怎么突然就不行了呢?

我先在本地通過plsql建立dblink進行測試,發現本地沒有問題,可以查詢hp-ux的oracle中的表。首先可以排除是遠程服務器的問題。

然后我通過測試發現,只要通過我的windows server的oracle連hp-ux就有問題。因此可以鎖定是我的數據庫服務器的問題。

首先我通過任務管理器發現,cpu占用很高,於是把數據庫服務器重啟了一下,重啟后還是不行。

這時,我回到問題本身:“oracle dblink 查詢 tns:無法解析指定的連接標識符”。應該是建立dblink時,tns配置的不匹配。於是百度了一下建立dblink的sql代碼,用如下語句建立dblink,之后恢復可用。

create public database link 名稱
connect to 賬號 identified by 密碼
using '(DESCRIPTION=
(ADDRESS_LIST=
(ADDRESS=(PROTOCOL=TCP)(HOST=10.77.137.40)(PORT=1521))
)
(CONNECT_DATA=(SERVER=DEDICATED)
(SERVICE_NAME=orcl))
)'

說明:如果賬號和密碼有特殊字符,則需要加上雙引號。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM