oracle透明网关访问antdb,oracle通过透明网关,创建dblink,访问ms sql server和其他数据库 -......
oracle通过透明网关(Oracle Transparent Geteways),访问ms sql server和其他数据库
环境:
1、在安装有oracle服务器端,ms sql server的客户端,通过oracle的透明网关访问ms sql server数据库
2、在ms sql server服务器上创建用户conn_ora,并且要能访问ms sql server数据库msdb
安装Oracle Transparent Geteways:
1、'开始'菜单的'Oracle Installation Products'下的'Universal Installer'
\\192.168.0.8\e$\数据工具\oracle9.2\ORANT920\ORA92_1\NT\I386\stage\products.jar
下一步-
2、选择安装类型:
自定义,下一步
3、选择可用产品组件:
将 'Oracle Transparent Geteways 9.2.0.1.0'下的'Oracle Transparent Geteways for Microsoft SQL Server 9.2.0.1.0'选中;
将 'Oracle Transparent Geteways 9.2.0.1.0'下的'Oracle Transparent Geteways for Sybase 9.2.0.1.0'选中;
下一步;
4、设置Sybase路径
选择你的'SYBASE的完整安装路径';
下一步
5、设置数据库服务器名 和数据库名称???
Microsoft SQL Server:192.168.0.111
Microsoft SQL 数据库:msdb
服务器名称或者ip地址,数据库名字
6、继续安装:
\\192.168.0.8\e$\数据工具\oracle9.2\ORANT920\ORA92_2\NT\I386\stage
\\192.168.0.8\e$\数据工具\oracle9.2\ORANT920\ORA92_3\NT\I386\stage
7、安装完成:
此时,oracle安装主目录下有了'tg4msql'目录
C:\oracle\ora92\tg4msql
设置环境参数,创建dblink:
1、C:\oracle\ora92\tg4msql\admin下的inittg4msql.ora文件
文件内容:
# This is a sample agent init file that contains the HS parameters that are
# needed for the Transparent Gateway for SQL Server
#
# HS init parameters
#
HS_FDS_CONNECT_INFO="SERVER=ZZL;DATABASE=MSDB"
HS_FDS_TRACE_LEVEL=OFF
HS_FDS_RECOVERY_ACCOUNT=RECOVER
HS_FDS_RECOVERY_PWD=RECOVER
说明:
HS_FDS_CONNECT_INFO=ZZL.MSDB和
HS_FDS_CONNECT_INFO="SERVER=ZZL;DATABASE=MSDB"和
HS_FDS_CONNECT_INFO="SERVER=192.168.0.111;DATABASE=MSDB"
都可以,两种写法,其中‘SERVER’是服务器名称或者ip,DATABASE是数据库名称,
当然,如果在192.168.0.111这台服务器上,有两个sql server实例,则使用‘服务器名\实例名’的方式设置上面的SERVER值,
如:HS_FDS_CONNECT_INFO="SERVER=ZZL\MSSQLSERVER;DATABASE=MSDB"
2、设置listener.ora文件
位置:C:\oracle\ora92\network\admin
文件内容:
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = C:\oracle\ora92)
(PROGRAM = extproc)
)
(SID_DESC =
(GLOBAL_DBNAME = orademo)
(PROGRAM = orademo)
(ORACLE_HOME = C:\oracle\ora92)
(SID_NAME = orademo)
)
(SID_DESC =
(PROGRAM = tg4msql)
(ORACLE_HOME = C:\oracle\ora92)
(SID_NAME = tg4msql)
)
)
其中新增:
(SID_DESC =
(PROGRAM = tg4msql)
(ORACLE_HOME = C:\oracle\ora92) #oracle的主目录
(SID_NAME = tg4msql)
)
3、配置tnsnames.ora文件
位置:C:\oracle\ora92\network\admin
文件内容:
# TNSNAMES.ORA Network Configuration File: C:\oracle\ora92\network\admin\tnsnames.ora
# Generated by Oracle configuration tools.
SDLGDB =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.8)(PORT = 1521))
)
(CONNECT_DATA =
(SID = SSTORA)
(SERVER = DEDICATED)
)
)
ORADEMO =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = zzl)(PORT = 1521))
)
(CONNECT_DATA =
(SID = orademo)
(SERVER = DEDICATED)
)
)
zzl_sql200 = #数据库连接名称,任意命名
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.111)(PORT = 1521)) #'192.168.0.111'为 oracle服务器的机器名
)
(CONNECT_DATA =
(SID = tg4msql)
)
(HS=OK) #Oracle Server要调用异构服务来处理
)
其中新增:
zzl_sql200 = #数据库连接名称,任意命名
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.111)(PORT = 1521)) #'192.168.0.111'为 oracle服务器的机器名
)
(CONNECT_DATA =
(SID = tg4msql)
)
(HS=OK) #Oracle Server要调用异构服务来处理
)
4、配置init.ora.1115200612231
位置:C:\oracle\admin\orademo\pfile
将global_names设置为真值,及global_names=true
5、重新启动服务:
在window的开始的运行中执行:
net stop OracleOraHome92TNSListener
net stop OracleServiceORADEMO
net start OracleOraHome92TNSListener
net start OracleServiceORADEMO
说明:OracleOraHome92TNSListener 是监听服务,OracleServiceORADEMO是实例服务
6、创建dblink:
以普通用户登录oracle:如cs/cs@orademo
--drop DATABASE LINK link_zhaozhenlong;
CREATE DATABASE LINK link_zhaozhenlong CONNECT TO "sa" IDENTIFIED BY "xxb" USING 'zzl_sql200';
说明:ms sql server的用户名和密码必须小写,而且要加双引号,
否则会报如下错误:
错误信息:
ORA-28500: connection from ORACLE to a non-Oracle system returned this messsage:
[Transparent gateway from MSSQL][Microsoft][ODBC SQL Server Driver][SQL Server]??
'sa'????? (SQL State:28000; SQL Code: 18456)
ORA-02063: preceding 2 lines from LINK_ZZL
错误原因:
在CREATE DATABASE LINK LINK_ZZL的连接字符串中,ms sql server的用户名和密码必须小写,而且要加双引号
7、在pl/sql中执行:
select * from sysobjects@link_zhaozhenlong where rownum <=5;
结果如下:
1 sysrowsetcolumns 4 S 4 0 0 0 0 0 2005-10-14 1:36:15
2 sysrowsets 5 S 4 0 0 0 0 0 2005-10-14 1:36:15
3 sysallocunits 7 S 4 0 0 0 0 0 2005-10-14 1:36:15
4 sysfiles1 8 S 4 0 0 0 0 0 2003-4-8 9:13:38
5 syshobtcolumns 13 S 4 0 0 0 0 0 2005-10-14 1:36:15
访问dblink时说明:
这是基于网关的方式,因此不能在断开网络的情况下本地的oracle连接本地的ms sql server
否则会报如下错误:
ORA-28545: error diagnosed by Net8 when connecting to an agent
NCRO: Failed to make RSLV connection
ORA-02063: preceding 2 lines from LINK_ZZL
oracle透明网关访问antdb,oracle通过透明网关,创建dblink,访问ms sql server和其他数据库 -......相关推荐
- sql server配置连接oracle数据库,MS SQL Server连接Oracle
MS SQL Server连接Oracle 1. 安装oracle 10G客户端 要访问oracle数据库必须安装oracle客户端.安装oracle客户端有两种方式,即完整安装和立即安装,这两种方 ...
- Oracle 9i与MS SQL Server 2000之比较连载五.zz
http://kb.cnblogs.com/a/1153156 Oracle 9i与MS SQL Server 2000之比较连载五 2008-04-14 18:13 四.Oracle中新的数据库对象 ...
- Oracle\MS SQL Server的数据库多表关联更新UPDATE与多表更新
一条Update更新语句是不能更新多张表的,除非使用触发器隐含更新.而表的更新操作中,在很多情况下需要在表达式中引用要更新的表以外的数据.我们先来讨论根据其他表数据更新你要更新的表 一.MS S ...
- sql oracle 自增长字段,在Oracle、MySQL、MS SQL Server中创设自动增长字段
在Oracle.MySQL.MS SQL Server中创建自动增长字段 好吧,今天面试有道题,要各个数据库怎么建立自增长字段,顺便复习一下吧,最近面试很多数据库问题... 一:Oracle Orac ...
- iBatis自动生成的主键 (Oracle,MS Sql Server,MySQL)【转】
iBatis的sqlMap配置文件的selectKey元素有个type属性,可以指定pre或者post表示前生成(pre)还是后生成(post). Oracle设置 Xml代码 <!-- O ...
- oracle忘记实例名,Oracle的安装和MS SQL Server实例名
Oracle 初始密码: internal/oracle sys/change_on_install system/manager scott/tiger sysman/oem_temp 最后一个用户 ...
- ibatis中主键自动增长(Oracle,Ms sql server ,mysql)
http://morning2008.iteye.com/blog/611528 iBatis的sqlMap配置文件的selectKey元素有个type属性,可以指定pre或者post表示前生成(pr ...
- Oracle 数据库、Microsoft SQL Server、MySQL 数据库三种常见数据库的区别深度剖析
文章目录 前言 一.ORACLE 数据库 二.Microsoft SQL Server 数据库 三.MySQL 数据库 总结 前言 Oracle 数据库.Microsoft SQL Server.My ...
- MS SQL Server和Oracle对数据库事务处理的差异性
背景 在吉日嘎拉的软件编程走火入魔之:数据库事务处理入门(适合初学者阅读)文章中关于MS SQL Server和Oracle对数据库事务处理的差异性引起一些争论,因此记录我对数据库事务处理的想法. 简 ...
最新文章
- 内存管理[6]测试堆的内存占用情况
- Centos 安装 Solr
- Windows 08 R2_创建AD DS域服务(图文详解)
- 关于JSON的简介及取值以及常见面试题
- key位置 win10生成的ssh_Git实现ssh免密登录
- javaScript学习笔记之typeof, null, 和 undefined之间的对比
- Find the Kth number(找第K大数)
- 减去字符串_从文本字符串中提取指定值的6个超级技巧解读
- 化妆品行业组合解决方案
- 赛事+内容IP齐发力,汽车之家打破Z世代次元壁
- Latex插入文献--利用谷歌学术
- 中央电视台最常用的 100 首经典背景乐曲(视频制作音乐推荐) 2009-05-12 17:31:47
- Pale Moon 15.3 - Firefox“苍月”优化版发布
- 郑捷《机器学习算法原理与编程实践》学习笔记(第五章 梯度寻优)5.2 Logistic梯度下降法...
- 贝叶斯分类器,什么是朴素贝叶斯,后续为使用贝叶斯实现海量数据的邮件筛选。带源码数据集和解决思路
- Qt 自定义控件 标尺控件 QLsRuler
- Cron表达式范例:每隔5秒执行一次:*/5 * * * * ?
- 【每日论文】GenCo: Generative Co-training for Generative Adversarial Networks with Limited Data
- 【读点论文】Detect Faces Efficiently: A Survey and Evaluations,关于人脸检测的思考,综述型文章
- 蓝桥杯python组——猜生日
热门文章
- “工二代”烧了毕业证后
- 久等啦!MWC现场精华回顾,正式出炉!
- pywinauto实例图文详解,放心不是记事本
- Jenkins+Maven+Git+Tomcat搭建持续集成环境,自动打包部署详细教程
- python四分位数怎么算_四分位数计算以及使用pandas计算
- 公积金房贷取消多项费用 楼市酝酿第三波救市
- 【愚公系列】2021年12月 Python教学课程 07-字典Dict
- matlab标题显示在下方
- bfs算法 c语言,基于BFS算法的贪吃蛇(一)----基本架构
- latex公式 换行