本機資料庫資料庫鏈無法訪問遠端資料庫
在筆記本的本地資料庫中建立資料庫鏈,訪問遠端資料庫,出現ORA-12170訪問超時錯誤。
由於訪問超時,首先檢查網路,確認遠端伺服器是可以訪問的:
C:Userslenovo>ping
192.168.0.56
正在 Ping 192.168.0.56 具有 32 位元組的資料:
來自 192.168.0.56 的回覆: 位元組=32 時間<1ms TTL=64
來自 192.168.0.56 的回覆: 位元組=32 時間<1ms TTL=64
來自 192.168.0.56 的回覆: 位元組=32 時間<1ms TTL=64
來自 192.168.0.56 的回覆: 位元組=32 時間<1ms TTL=64
192.168.0.56 的 Ping 統計資訊:
資料包: 已傳送 = 4,已接收 = 4,丟失 = 0
(0% 丟失),
往返行程的估計時間(以毫秒為單位):
最短 = 0ms,最長 = 0ms,平均 = 0ms
顯然遠端節點是可以訪問的,嘗試透過tnsping進行測試:
C:Userslenovo>tnsping
192.168.0.56/enmo10
TNS Ping Utility for 32-bit
Windows: Version 10.2.0.5.0 - Production on 24-10月 -
2012 15:39:59
Copyright (c) 1997, 2010, Oracle.
All rights reserved.
已使用的引數檔案:
d:oracleproduct10.2.0networkadminsqlnet.ora
已使用 HOSTNAME 介面卡來解析別名
Attempting to contact
(DESCRIPTION=(CONNECT_DATA=(SERVICE_NAME=enmo10))(ADDRESS=
(PROTOCOL=TCP)(HOST=192.168.0.56)(PORT=1521)))
OK (20 毫秒)
同樣tnsping連線測試正常。登入目標資料庫伺服器,檢查監聽狀態同樣正常。
這說明遠端資料庫是可以訪問的,看來問題多半出在本地設定上。透過本地SQLPLUS客戶端直接連線遠端資料庫,同樣無法連線:
SQL> conn test/test@192.168.0.56/enmo10
ERROR:
ORA-12170: TNS: 連線超時
警告: 您不再連線到 ORACLE。
看來可能是本地防火牆導致了網路連線被阻止。找到防火牆設定介面,將sqlplus工具新增到允許程式訪問列表中,透過sqlplus連線遠端資料庫成功,但是透過dblink訪問問題依舊:
SQL> conn
test/test@192.168.0.56/enmo10
已連線。
SQL> conn test/test
已連線。
SQL> create database link enmo10 connect to test identified by test using
'192.168.0.56/enmo10';
資料庫連結已建立。
SQL> select * from
tab@enmo10;
select * from tab@enmo10
*
第 1 行出現錯誤:
ORA-12170: TNS: 連線超時
表面上看似乎是一個很詭異的問題,其實如果瞭解資料庫鏈的工作原理就很清楚,在透過資料庫鏈訪問遠端資料庫時,訪問遠端站點的程式並不是sqlplus而是本地的oracle.exe程式。
將oracle新增到防火牆的允許訪問列表中,問題解決:
SQL> select * from
tab@enmo10;
TNAME TABTYPE CLUSTERID
------------------------------ ------- ----------
T_CHAR TABLE
T TABLE
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/4227/viewspace-1060617/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Oracle資料鏈+同義詞+訪問遠端資料庫Oracle資料庫
- plsql本機不安裝資料庫連線遠端資料庫SQL資料庫
- 遠端資料庫的訪問 (轉)資料庫
- 資料庫VIP地址無法訪問(二)資料庫
- 資料庫VIP地址無法訪問(一)資料庫
- 本機生成遠端資料庫AWR報告資料庫
- Mysql資料庫的遠端訪問設定MySql資料庫
- 資料庫無法建立資料庫檢視資料庫
- derby 資料庫 伺服器模式 無法訪問資料庫伺服器模式
- 請教高手門:如何遠端訪問Access資料庫?資料庫
- oracle資料庫遠端不落地匯入本地資料庫Oracle資料庫
- JDBC資料庫訪問JDBC資料庫
- iis網站資料庫無法連線資料庫網站資料庫
- 資料庫無法update資料庫
- 遠端資料庫恢復資料庫
- phpstudy設定允許遠端訪問mysql資料庫PHPMySql資料庫
- DB2訪問遠端資料庫通訊錯誤DB2資料庫
- PUBLIC資料庫鏈無法刪除的問題(二)資料庫
- PUBLIC資料庫鏈無法刪除的問題(一)資料庫
- 【資料庫資料恢復】SqlServer資料庫無法讀取的資料恢復案例資料庫資料恢復SQLServer
- 資料庫如何處理大資料訪問資料庫大資料
- Oracle資料庫訪問控制Oracle資料庫
- 異構資料庫訪問資料庫
- Mysq無法建立資料庫資料庫
- 遠端連線mysql資料庫MySql資料庫
- DUPLICATE遠端複製資料庫資料庫
- IMPDP匯入遠端資料庫資料庫
- 插入遠端資料庫資料遇到分割槽表bug資料庫
- 連線資料之遠端呼叫Access資料庫(轉)資料庫
- 資料庫資料恢復-oracle資料庫報錯無法開啟的如何恢復資料?資料庫資料恢復Oracle
- 【磐維資料庫】透過python訪問磐維資料庫資料庫Python
- 【YashanDB資料庫】PHP無法透過ODBC連線到資料庫資料庫PHP
- 包含DOMAIN的資料庫建立資料庫鏈到不包含DOMAIN的資料庫AI資料庫
- 客戶端無法連線資料庫的小問題客戶端資料庫
- 外網訪問MySQL資料庫MySql資料庫
- Oracle資料庫限制訪問IPOracle資料庫
- C#訪問MySQL資料庫C#MySql資料庫
- C#訪問SQLite資料庫C#SQLite資料庫