配置透明網關主要涉及到5個文件,分別是:
1、~/tg_1:(1)dg4msql/admin/initdg4msql.ora;(2)newwork/admin/listener.ora;(3)newwork/admin/tnsname.ora;2、~/dbhome_1:(1)newwork/admin/listener.ora;(2)newwork/admin/tnsname.ora;4.1 配置GateWays4.1.1 initdg4msql.ora文件目錄:~/tg_1/dg4msql/admin/initdg4msql.ora;
原始內容:HS_FDS_CONNECT_INFO=[1.1.11.9]//EISDOC_NCHS_FDS_TRACE_LEVEL=OFFHS_FDS_RECOVERY_ACCOUNT=RECOVERHS_FDS_RECOVERY_PWD=RECOVER
配置后內容:
HS_FDS_CONNECT_INFO="1.1.11.9;DATABASE=EISDOC_NC" # 此處ip為連接指向的SQLSERVER服務器的IP地址或服務器名,, # eisdoc_nc為連接指向的SQLSERVER的數據庫名HS_FDS_TRACE_LEVEL=OFFHS_FDS_RECOVERY_ACCOUNT=sa # SQL庫登錄賬戶HS_FDS_RECOVERY_PWD=sa # SQL庫登錄密碼
注:HS_FDS_CONNECT_INFO的屬性值格式:原始和修改后的兩種格式均可。PS.透明網關的SID_NAME解析:系統生成的initdg4msql.ora文件其命名格式為“init+SID_NAME”。即SID_NAME為dg4msql。
4.1.2 listener.ora文件目錄:~/tg_1/dg4msql/admin/listener.ora原始內容:LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = WWXT-SERVER)(PORT = 1523)) (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1523)) ) )ADR_BASE_LISTENER = D:/product/11.2.0/tg_1配置后內容:(新增方框內信息)SID_LIST_LISTENER = (SID_LIST = (SID_DESC = (SID_NAME = PLSExtProc ) (Oracle_HOME = D:/app/Administrator/product/11.2.0/dbhome_1)# 此路徑指向Oracle服務器安裝目錄(PROGRAM = extproc) ) (SID_DESC = (SID_NAME = dg4msql) # 此dg4msql為透明網關的SID_NAME (ORACLE_HOME = D:/product/11.2.0/tg_1) # 此路徑為透明網關的安裝路徑 (PROGRAM = dg4msql) # 此dg4msql固定不變 ))LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = WWXT-SERVER)(PORT = 1523)) (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1523)) ) )PLSExtProc特別說明:
Oracle默認安裝時,會安裝一個PL/SQL外部程序(ExtProc)條目在listener.ora中,
是oracle為調用外部程序默認配置的監聽,它的名字通常是ExtProc或PLSExtProc。ADR_BASE_LISTENER = D:/product/11.2.0/tg_1PS.SID_LIST_LISTENER和LISTENER:1、SID_LIST_LISTENER部分和LISTENER部分的鍵入順序:SID_LIST_LISTENER必須在 LISTENER之前。2、LISTENER不需要做任何修改。
4.1.3 tnsname.ora文件目錄:~/tg_1/dg4msql/admin/tnsname.ora原始內容:FCDB = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 1.1.9.111)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = FCDB) ) )注:在配置tnsname.ora文件之前,需要將~/dbhome_1/newwork/admin目錄下tnsname.ora的非注釋內容拷貝到~/tg_1/dg4msql/admin目錄下tnsname.ora文本中(此次測試~/dbhome_1/newwork/admin/tnsname.ora內無內容)。配置后內容:(新增方框內信息)DG4MSQL = # 此DG4MSQL為配置的數據庫服務名,可自定義 (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 1.1.9.111)(PORT = 1523))# 1.1.9.111:安裝配置透明網關的主機HOST地址# 1523:安裝GateWays透明網關時配置的端口 ) (CONNECT_DATA = (SID = dg4msql)# 此dg4msql為透明網關的SID_NAME ) (HS = OK) # 這一句非常重要,必須要有,加了才支持異構的數據庫 )PS.FCDB消失:在安裝GateWays配置tnsnames信息時有敘述,初始配置的tnsnames信息可以任意輸入,其目的就是為了生成tnsnames的配置文件。
4.1.4 重啟透明網關監聽1、進入~/tg_1/bin目錄,找到“LSNRCTL.EXE”應用程序,并執行。2、停止服務:鍵入命令stop,停止監聽。
3、啟動服務:鍵入命令start,啟動監聽。如下顯示正常。
4.2 配置Oracle4.2.1 listener.ora文件目錄:~/dbhome_1/newwork/admin/listener.ora更新內容與~/tg_1/newwork/admin/listener.ora中更新的部一致。
4.2.2 tnsname.ora文件目錄:~/dbhome_1/newwork/admin/tnsname.ora將~/tg_1/newwork/admin目錄下的tnsname.ora拷貝到~/dbhome _1/newwork/admin目錄下,覆蓋原來的tnsname.ora。
4.2.3 重啟Oracle監聽1、進入~/dbhome_1/bin目錄,找到“LSNRCTL.EXE”應用程序,并執行。2、停止服務:鍵入命令stop,停止監聽。如下顯示正常。
3、啟動服務:鍵入命令start,啟動監聽。如下顯示正常。
4.3 驗證所有監聽服務主要在Windows服務列表查看OracleOraGtw11g_home1TNSListener和OracleOraDb11g_home1TNSListener的運行狀態。如果處于“正在運行”,則表示正常;反之異常。
5 驗證測試使用PL/SQL登錄Oracle數據庫,創建DataBase Links,創建成功后再進行測試。5.1 創建DataBase Links創建SQL語句:create public database link EISDOC connect to sa identified by sa using 'DG4MSQL'; EISDOC:database link別名sa:SQL Server用戶登錄名稱sa:SQL Server用戶登錄密碼DG4MSQL:透明網關創建數據庫服務名。即~/tg_1/dg4msql/admin/tnsname.ora中配置的“DG4MSQL”。執行結果,創建成功:
5.2 查詢測試查詢SQL語句:SELECT COUNT(1) FROM OperaTION@EISDOCOPERATION@EISDOC:SQL Server中的數據表名@Database Link別名執行結果,查詢成功:
6 創建失敗集錦1、各處該用的SID_NAME是否統一。2、listener.ora中的各個路徑是否正確。3、listener.ora和tnsname.ora中的各個HOST和PORT是否正確。4、如果是SQL Server 2005,則要檢查遠程連接是否已經更改過來,默認安裝下的設置是沒有打開的.通過進入環境設置界面,改成允許遠程連接即可。5、如果是SQL Server2000,則有可能沒有安裝sp3補丁,下載一個安裝上就好。6、如果是SQL Server2000,還有一個地方需要注意的就是,進入SQLSERVER的屬性,將安全性配置成如下:
7、創建DataBase Links和配置~/tg_1/dg4msql/admin/initdg4msql.ora中的SQL Server用戶登錄名稱和用戶登錄密碼時,是否嚴格遵守英文字母的大小寫。 新聞熱點
疑難解答