oracle11g gateway for sql server2005配置
最近一個專案用到了透明閘道器,這裡把配置過程簡單記錄下來,供大家參考。
oracle的透明閘道器是oracle直接訪問異構資料庫的利器。在9i中,透明閘道器是包含在資料庫安裝程式中的,在安裝資料庫軟體過程中可以選擇;10g和11g中,oracle把透明閘道器獨立出來,需要單獨下載安裝。
本文主要討論在oracle下如何配置透明閘道器去訪問sqlserver資料庫。在11g之前,for sqlserver的透明閘道器只能安裝在windows作業系統上,從11g開始,for sqlserver的透明閘道器也可以安裝在linux/unix系統中。
在本例中,涉及到二個伺服器:
ORACLE DB伺服器: OS: solaris + ORACLE 11060 IP: 10.10.10.1
SQLSERVER伺服器: OS: WINDOWS 2003 + SQLSERVER 2005 IP: 10.10.10.2
[@more@]如果ORACLE DB伺服器作業系統是WINDOWS的話,可以把透明閘道器安裝在ORACLE資料伺服器上。
下面是詳細步驟:
一、透明閘道器連線到一個sqlserver上
1、下載透明閘道器
11g下,透明網管是一個單獨的元件,需要單獨下載安裝。
2、安裝
在10.10.10.1安裝透明閘道器:
解壓後,進入目錄,點選setup.exe,啟動安裝介面,安裝oracle transparent gateway for microsoft sql server;
下一步,輸入sqlserver地址和sqlserver 資料庫名,這裡你可以輸入正確的,也可以隨便輸入,或者留空,我們可以安裝完成後再配置。
安裝完後,會彈出配置監聽介面,因為我們要手工配置,點選取消即可。
3、在10.10.10.1配置透明閘道器引數檔案
預設情況下,安裝透明閘道器時會生成一個預設的引數檔案:initdg4msql.ora,它的sid是tg4mssql,你可以使用這個檔案,也可以新建一個檔案。本例選擇新建檔案。
進入$ORACLE_HOME/dg4msql/admin目錄我這裡是:/oracle/product/11.1.0.6/Db_1/dg4msql/admin
新建這個檔案:initjss.ora,把它理解為oracle的引數檔案就可以,檔案格式為init
# 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= gfyxxstjxt:1433//jss
# alternate connect format is hostname/serverinstance/databasename
HS_FDS_TRACE_LEVEL=OFF
HS_FDS_RECOVERY_ACCOUNT=RECOVER
HS_FDS_RECOVERY_PWD=RECOVER
HS_FDS_CONNECT_INFO的設定有多種格式,如:
HS_FDS_CONNECT_INFO=server_name.db_name,但這種寫法server_name不能為IP,且埠必須為預設的1433,如:
HS_FDS_CONNECT_INFO=sqlserver.jss
注意:這裡面/etc/hosts檔案的內容是
::1 localhost
127.0.0.1 localhost
10.10.10.1 i2dev i2dev.hisense.com loghost
10.10.10.2 gfyxxstjxt
4、在10.10.10.1配置監聽
進入$ORACLE_HOME/network/admin下,編輯listener.ora檔案:
# listener.ora Network Configuration File: /oracle/product/11.1.0.6/Db_1/network/admin/listener.ora
# Generated by Oracle configuration tools.
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = i2dev)(PORT = 1521))
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
)
)
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = Jacktj)
(ORACLE_HOME = /oracle/product/11.1.0.6/Db_1)
(PROGRAM = dg4msql)
)
(SID_DESC =
(SID_NAME = jss)
(ORACLE_HOME = /oracle/product/11.1.0.6/Db_1)
(PROGRAM = dg4msql)
)
)
5、啟動監聽
/oracle/product/11.1.0.6/Db_1/bin/lsnrctl start
/oracle/product/11.1.0.6/Db_1/bin/lsnrctl start
監聽端點概要...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=suk)(PORT=1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=.pipeEXTPROC0ipc)))
服務摘要..
服務 "PLSExtProc" 包含 1 個例程。
例程 "PLSExtProc", 狀態 UNKNOWN, 包含此服務的 1 個處理程式...
服務 "jss" 包含 1 個例程。
例程 "jss", 狀態 UNKNOWN, 包含此服務的 1 個處理程式...
命令執行成功
至此,在透明閘道器上的工作就算完成了。
6、在10.10.10.1上配置tnsname.ora
新增如下內容:
db =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 172.16.41.123)(PORT = 1521))
)
(CONNECT_DATA = (SID = jss))
(HS=OK)
)
7、在10.10.10.1建立資料庫連結
SQL> create database link dbjss connect to 使用者名稱 identified by "密碼" using 'db';
8、在10.10.10.1測試連線
SQL> select * from ;
當從oracle資料庫上發出這個sql時,實際上透過tnsname.ora配置的jss資訊轉到10.10.10.2上,當10.10.10.2的監聽監聽到10.10.10.1的請求時,再次透過initjss.ora配置的HS_FDS_CONNECT_INFO資訊轉到sqlserver資料庫上,最終把使用者需要的資料返回。
如果這個sql有記錄返回,說明透明閘道器沒有問題。
總結一下:
在這次安裝過程中遇到了兩個錯誤:
1.ORA-28500 這個問題是initdg4msql.ora檔案中的HS_FDS_CONNECT_INFO引數要寫成如下格式:
HS_FDS_CONNECT_INFO=
並且埠一定要指定
2.ORA-28545 這個問題是tnsnames.ora和listener.ora中的SID名稱和要和init
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/7490392/viewspace-1030128/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- SQL Server2005使用CTE實現遞迴QCSQLServer遞迴
- gateway配置Gateway
- freeswitch的gateway配置方案Gateway
- Flink Sql Gateway的原理與實踐SQLGateway
- Istio Ingress Gateway中的Envoy配置解析Gateway
- Spring Cloud Gateway + Nacos(1)簡單配置SpringCloudGateway
- nacos配置&gateway配置服務發現一直報500Gateway
- oracle11g啟動過程中載入配置檔案Oracle
- springboot配置sql提示Spring BootSQL
- Spring Cloud Gateway + oauth2 跨域配置實現SpringCloudGatewayOAuth跨域
- WebRTC Gateway Janus入門:從配置到編寫外掛WebGateway
- Spring Cloud Gateway實戰之二:更多路由配置方式SpringCloudGateway路由
- SQL SERVER 2008安全配置SQLServer
- gatewayGateway
- 【Spring】日誌列印sql,日誌配置列印sqlSpringSQL
- C#一次執行多條SQL語句,Oracle11g資料庫C#SQLOracle資料庫
- 【DG】Oracle11g異構平臺之Linux To Windows DataGuard安裝配置--duplicateOracleLinuxWindows
- 39,日誌列印sql 配置SQL
- Oracle Gateway for SQL Server時2PC分散式事務異常處理OracleGatewaySQLServer分散式
- 構建api gateway之 基於etcd實現動態配置同步APIGateway
- gateway predicateGateway
- gateway filterGatewayFilter
- Linux環境安裝Oracle11g(一)——配置檢查及依賴項安裝LinuxOracle
- 在 SAP Fiori Gateway 系統配置一個指向 SAPGUI 事務的 tileGatewayGUI
- Oracle11g解除安裝Oracle
- oracle11g dataguard切換Oracle
- Docker安裝Oracle11gDockerOracle
- SpringCloud之GatewaySpringGCCloudGateway
- Gateway 簡介Gateway
- spark2.2.0 配置spark sql 操作hiveSparkSQLHive
- Linux 上配置 SQL Server Always On Availability GroupLinuxSQLServerAI
- 【AUDIT]Oracle審計配置及常用sqlOracleSQL
- SQL Server如何配置cdc進行ETLSQLServer
- oracle11g RAC新增節點Oracle
- Spring Cloud Gateway 深入SpringCloudGateway
- 閘道器GatewayGateway
- Spring cloud 之GatewaySpringCloudGateway
- springcloud-路由gatewaySpringGCCloud路由Gateway
- gateway 閘道器Gateway