使用場景:當你需要從ORACLE數據庫上訪問另一台SqlServer數據庫的數據時,Oracle提供了一個工具:gateways。通過這個工具,你可以創建dblink來連接sqlserver或其他不同公司的數據庫----取決於你安裝時的選項。
安裝GATEWAYS后,使用下列2種方式可創建DBLINK
方式A:
create database link bslink
connect to "username" identified by "password"
using '( DESCRIPTION =
( ADDRESS = ( PROTOCOL = TCP )( HOST = remoteIP )( PORT = 1433 ))
( CONNECT_DATA = (
SID = SQLSERVER數據庫名 ) ) ( HS=OK ) ) '
這種方式是不需要配置initdg4msql.ora和tnsnames.
方式B:
1. 在$ORACLE_HOME/dg4msql/admin/initdg4msql ----這步可省略 使用方式A替代
配置initdg4msql.ora,以我的例子,如下: ******************************
# This is a customized agent init file that contains the HS parameters # that are needed for the Database Gateway for Microsoft SQL Server # # HS init parameters # HS_FDS_CONNECT_INFO=[192.168.101.4]//bsdata ----只需要修改這個IP//數據庫名 HS_FDS_TRACE_LEVEL=OFF HS_FDS_RECOVERY_ACCOUNT=RECOVER HS_FDS_RECOVERY_PWD=RECOVER
2. 配置Oracle主目錄下network\admin目錄下的listener.ora。以我的例子,如下:
******************************
# LISTENER.ORA Network Configuration File: C:\oracle\ora92\network\admin\listener.ora
# Generated by Oracle configuration tools.
LISTENER = ----此處LISTENER名為LISTENER
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.180)(PORT = 1521))
)
)
)
SID_LIST_LISTENER = -----此處SID_LIST_LINTENER名 同上為LISTENER
(SID_LIST =
(SID_DESC =
(SID_NAME = dg4msql)
(ORACLE_HOME = D:\app\oracle\product\11.2.0\dbhome_1)
(PROGRAM = dg4msql) ----此處PROGRAM對應TNSNAMES中的dg4msql
)
)
3.配置Oracle主目錄下network\admin目錄下的tnsnames.ora,以我的例子,如下:
******************************
dg4msql = ---同上對應
(DESCRIPTION=
(ADDRESS=(PROTOCOL=tcp)(HOST=localhost)(PORT=1521))
(CONNECT_DATA=(SID=dg4msql))
(HS=OK)
)
******************************
