oracle配置透明网关连接sql,oracle 11g透明网关配置(访问ms sqlserver2008)

背景:

最近有sql server 2008中表的数据要导到oracle 11g中,无奈数据量太大,手工录入太费时,写程序转换数据又觉得麻烦,所以就鼓弄鼓弄oracle 的透明网关。oracle 透明网关是oracle 连接异构数据库提供的一种技术。

环境:

1. oracle 11g透明网关

2. sql server 2008数据库

3. oracle 11g数据库

注:以上3个软件都安装在同一机子上(当然你也可以安装到不同的机子上)。

方法:

1. 安装透明网关

安装很简单,这里就不截图了;在安装完后,要求配置监听,这里我们不配置,在下面的介绍中我们会手动配置。

2.透明网关安装配置

打开透明网关的安装目录,我安装的目录是F:\product\11.2.0\tg_1,然后进入到F:\product\11.2.0\tg_1\dg4msql\admin目录下,打开文件initdg4msql.ora文件。

该文件的格式是init.ora,这里的SID在后面需要用到,系统默认的是dg4msql,一般情况这样就可以了。

如果改名,在之后使用这个修改后地名字即可,配合使用Test,则文件名变成initTest.ora。

该文件是Gateway的初始参数文件,描述连接的是哪个SQL Server数据库。文件内容如下:

HS_FDS_CONNECT_INFO=localhost:1433//DATABASE_NAME

HS_FDS_TRACE_LEVEL=OFF

HS_FDS_RECOVERY_ACCOUNT=RECOVER

HS_FDS_RECOVERY_PWD=RECOVER

3. 配置监听(F:\product\11.2.0\tg_1\NETWORK\ADMIN)

在listener.ora文件中加入如下内容

LISTENER =

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = tcp)(HOST = localhost)(PORT = 1523))

)

SID_LIST_LISTENER =

(SID_LIST =

(SID_DESC =

(SID_NAME = dg4msql)  # 前面定义的SID

(ORACLE_HOME = F:\product\11.2.0\tg_1)     #Oracle的安装目录

(PROGRAM = dg4msql)   # 配置目录,不能变

)

)

4. 配置tnsnames.ora文件(F:\product\11.2.0\tg_1\NETWORK\ADMIN)

在tnsnames.ora文件中加入如下内容

dg4msql=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost)(PORT=1523)))(CONNECT_DATA=(SID=dg4msql))(HS=OK))

5. 创建连接服务器即DBLink

create database link DG4MSQL connect to sa identified by Aa123456  using 'dg4msql';--这里的dg4msql 对应tnsname.ora文件里的服务名。

连接:SELECT * FROM ORGS@DG4MSQL;

配置完成后,查询组织表,却始终报连接“无法解析指定的连接表示符”。

当我把它换成如下形式后,发现可以连接了,

create database link dg4msql2 connect to sa identified by Aa123456

using '(DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1523))

)

(CONNECT_DATA =

(SID = dg4msql)

)

(HS = OK)

)';

SELECT * FROM ORGS@dg4msql2;

令人感到迷惑!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值