我们在Oracle DB Server上配置了一下,可以直接从Oracle DB里访问SQL Server的表:
************************************************************
show parameter global_name
alter system set global_names=false;
如果global_name為flase的情況下,如下步驟:
1.配置listener
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME =sid1)
(ORACLE_HOME = D:\oracle\ora10g)
(SID_NAME = sid1)
)
(SID_DESC =
(PROGRAM =hsodbc)
(SID_NAME = SQL Server_SID)
(ORACLE_HOME = d:\oracle\ora10g)
)
)
LISTENER =
/*
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))
)
*/有可能要這段
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
)
注意紅色的與藍色的地方;
2.配置tnsnames.ora:
增加如下的一個tnsname:
test01 =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = SQL Server_SID)
)
(HS = OK)
)
注意紅色的地方;
3.增加初始化文件:
在%oracle_home%\hs\admin\下,創建一個以init.ora文件,內容如下:
如果global_name為true的情況下要加以下兩句:
HS_DB_NAME = =SQL Server_name
HS_DB_DOMAIN =域名
否則隻要以下兩句:
HS_FDS_CONNECT_INFO=SQL Server_SID
HS_FDS_TRACE_LEVEL=OFF
4.重新啟動listener
5.create public database link link_name connect to user identified by ****** using 'test01';
6.這樣就可以了。
說明:
(1). SQL Server_SID為創建的訪問SQL Server的odbc的名稱;
(2). listener中的program為什麼要用hsodbc,還沒有分析出來;
(3).其他的與9i的基本上沒有什麼區別
本文作者:网友 来源:网络http://space.itpub.net/11969955/viewspace-364791
CIO之家 www.ciozj.com 微信公众号:imciow