Oracle通过Gateways透明网关连接到SQL Server数据库(dblink)
Tags: GatewaysMySQLOracleSQL Server透明网关
简介
在企业里,通常可能有多种数据源,并且他们是异构的。所谓的异构就是说他们是不同的产品,例如: Oracle Database, MS SQL Server, IBM DB2, Sybase ASE, MySQL, Postgre SQL, Excel, XML, Txt或者CSV等用于存放数据的产品或者文件。
oracle 透明网关(Transparent gateways)是Oracle连接异构数据库提供的一种技术。通过Gateway,可以在Oracle里透明的访问其他不同的数据库,如SQL Server, DB2, Sybase等等,就像远程Oracle数据库一样。因此透明网关也是Oracle数据仓库和数据迁移中的一个重要组成部分。透明网关的体系结构也很简单,在ORACLE和SQL SERVER之间使用ORACLE透明网关服务器实现互连互通,其中透明网关服务器可以与ORACLE或SQL SERVER数据库在同一台主机上,也可以是在独立的一台主机上。
配置后的sql查询的处理流程如下:
下载
安装包和数据库的安装包在一块,最新的软件下载:https://www.oracle.com/database/technologies/oracle-database-software-downloads.html
历史版本下载:https://edelivery.oracle.com
历史版本下载需要登录Oracle账号,这个不需要mos即可,自己注册一个就行。
然后搜索“12.2.0.1 gateway”,
然后点击找到的项目,加入下载目录,然后点击Continue:
由于安装网关需要有数据库作为基础,所以这里带出来2个软件,但是我DB已经安装过了,所以,这里只下载Gateways就行:
点击Download会下载如下的下载管理器:
打开即可:
下一步会自动下载:
还能看到下载性能:
还能设置限速:
等待下载完成即可。
安装
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | useradd -g oinstall -G oinstall,dba gateway && echo "lhr" | passwd gateway --stdin cat >> /home/gateway/.bash_profile <<"EOF" export ORACLE_HOME=/u01/app/gateway export TNS_ADMIN=$ORACLE_HOME/dg4msql/admin export PATH=$ORACLE_HOME/bin:$PATH export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH EOF echo xfce4-session > /home/gateway/.xsession chmod +x /home/gateway/.xsession service xrdp restart unzip LINUX.X64_12.2.0.1_gateways.zip cd gateways |
Oracle 21c 通过gateway 连接 postgresql研究过没。我这正常配置,总是报错:
ORA-28500: 连接 ORACLE 到非 Oracle 系统时返回此信息:
connection to server on socket "/tmp/.s.PGSQL.5432" failed: No such file or directory
Is the server running locally and accepting connections on that socket?
{08001,NativeErr = 101}
ORA-02063: 紧接着 4 lines (起自 HGDB)
你这个报错看着像是PG连接的问题,可以生成trace来详细分析,参考:https://www.xmmup.com/zaioraclezhongtongguodblinkfangwenpgshujuku.html
同样的配置Oracle11g、12c,直到19c都可以用,就到了21c不行了。不知道是不是对odbc驱动要求高,最新的psqlodbc13.2是不是不能满足了,得等postgresql方出对应的odbc驱动。
若Oracle是21c,那网关的配置文件中应该去掉参数:HS_NLS_NCHAR和HS_LANGUAGE就可以了
Oracle 21c连接PG可以参考:https://www.xmmup.com/zaioraclezhongtongguodblinkfangwenpgshujuku.html