从Oracle 9i连接SQL Server2000,需要用透明网关(Transparent Gateway),通过它,我们可以 sqlplus 操纵其他数据库,如 ms sqlserver 、 sybase 、 infomix 等,实现数据库的异构服务。
在Oracle 8i中没有透明网关,9i自带,但是默认不安装。
环境:
Oracle 服务器:
OS: Windows 2000 (SP4)
IP: 10.153.24.136
PORT: 1521
SQL 服务器:
OS: Windows 2000
IP: 10.153.24.100
Database Server Name: szdb01
Database Name: WUC
通过hsodbc连接:
1. 在ODBC中建立SQL Server连接的System DSN,我用名字hsodbc。
2. 在Oracle主目录下hs\admin的目录下,拷贝inithsodbc.ora并改名为init
内容如下:
*HS_FDS_CONNECT_INFO后面是数据源名称。
******************************
# This is a sample agent init file that contains the HS parameters that are
# needed for an ODBC Agent.
#
# HS init parameters
#
HS_FDS_CONNECT_INFO = hsodbc
HS_FDS_TRACE_LEVEL = OFF
#
# Environment variables required for the non-Oracle system
#
#set
******************************
3. 配置listener.ora,这次加入下面一段:
******************************
(SID_DESC=
(ORACLE_HOME = C:\oracle\ora92)
(SID_NAME= hsodbc)
(PROGRAM=hsodbc)
)
4. 配置tnsnames.ora,如下:
******************************
hsodbc.ip-in-house.com =
(DESCRIPTION=
(ADDRESS=(PROTOCOL=tcp)(HOST=10.153.24.136)(PORT=1521))
(CONNECT_DATA= (SID= hsodbc))
(HS=OK)
)
******************************
.ip-in-house.com is demain name
5. 重起listener并建立连接。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/8111049/viewspace-586891/ ,如需转载,请注明出处,否则将追究法律责任。