测试环境介绍

1、ORACLEServer  

Database version:10.2.0

IP:192.168.1.5

ORACLE_HOME:D:\oracle\product\10.2.0\db_1

2、Oracle transparent Gateway Server

Version:10.2.0

IP:192.168.1.15

安装目录 D:\oracle\product\10.2.0\tg_1

3、MS sql server

Sqlserver Version:2008R2

IP:192.168.1.25

原有oracle数据库,sqlserver数据库都已经在用了,需要导一些数据到oracle数据库中。

Step1:安装ORACLE gateways 略……  在安装透明网关过程中会询问你需要为那些数据库配置,选择里面的for sqlserver 就行

Step2:配置透明网关下的相关文件;  接下来的服务器,数据库可以不填;现在我们要做的是复制 D:\oracle\product\10.2.0\tg_1\tg4msql\admin下的 inittg4msql.ora文件,并修改成名字为init<sid>.

ora我这里测试连接GSLIMSDB_NingBo库,为配置方便改名为G5,所以就是initG5.ora内容为:

Oracle中使用透明网关链接到Sqlserver
测试环境介绍
1、ORACLEServer 
Database version:10.2.0  IP:192.168.1.5
ORACLE_HOME:D:\oracle\product\10.2.0\db_1 2、Oracle transparent Gateway Server Version:10.2.0  IP:192.168.1.15
安装目录 D:\oracle\product\10.2.0\tg_1 3、MS sql server
Sqlserver Version:2008R2 IP:192.168.1.25 
原有oracle数据库,sqlserver数据库都已经在用了,需要导一些数据到oracle数据库中。
Step1:安装ORACLE gateways 略……
在安装透明网关过程中会询问你需要为那些数据库配置,选择里面的for sqlserver 就行
Step2:配置透明网关下的相关文件;
接下来的服务器,数据库可以不填;现在我们要做的是复制
D:\oracle\product\10.2.0\tg_1\tg4msql\admin下的 inittg4msql.ora文件,并修改成名字为init<sid>.

ora我这里测试连接GSLIMSDB_NingBo库,为配置方便改名为G5,所以就是initG5.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=192.168.1.25;DATABASE=G5" HS_FDS_TRACE_LEVEL=OFF
HS_FDS_RECOVERY_ACCOUNT=RECOVER
HS_FDS_RECOVERY_PWD=RECOVER
====================================================================== 
如果在安装时配置的话生成的HS_FDS_CONNECT_INFO=192.168.1.25.G5连接会出问题, HS_FDS_CONNECT_INFO的设置有多种格式,如:
HS_FDS_CONNECT_INFO=server_name.db_name,但这种写法server_name不能为IP,且端口必须为默认的1433,如:
HS_FDS_CONNECT_INFO=sqlserverhostname.G5

接下来是配置D:\oracle\product\10.2.0\tg_1\network\admin下的listener.ora文件

=========================脚===本===如===下============================
# listener.ora Network Configuration File: D:\oracle\product\10.2.0\tg_1\network\admin\listener.ora

# Generated by Oracle configuration tools.

SID_LIST_LISTENER =

  (SID_LIST =

     (SID_DESC =
          (SID_NAME = PLSExtProc)
            (ORACLE_HOME = D:\oracle\product\10.2.0\tg_1)

           (PROGRAM = extproc)     )
    (SID_DESC =
        (SID_NAME = G5)
          (ORACLE_HOME = D:\oracle\product\10.2.0\tg_1)

         (PROGRAM = tg4msql)     )   )

LISTENER =
    (DESCRIPTION_LIST =

     (DESCRIPTION =
            (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
            (ADDRESS = (PROTOCOL = TCP)(HOST = rdserver2)(PORT = 1521))

     )

  )
======================================================================

这里的红色部分是新配置上去的,别的都是默认的,然后再配置 
D:\oracle\product\10.2.0\tg_1\network\admin下的tnsnames.ora文件:


=========================脚===本===如===下============================
# tnsnames.ora Network Configuration File: D:\oracle\product\10.2.0\tg_1\network\admin\tnsnames.ora
# Generated by Oracle configuration tools. 
EXTPROC_CONNECTION_DATA =

   (DESCRIPTION =

     (ADDRESS_LIST =
          (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))

     )
       (CONNECT_DATA =
            (SID = PLSExtProc)

          (PRESENTATION = RO)

      )

     )

G5= 
    (DESCRIPTION=

      (ADDRESS= 
              (PROTOCOL=TCP)(HOST=192.168.1.25)(PORT=1521))

                  (CONNECT_DATA=

                      (SID=G5)

        ) 
       (HS=OK)

        ) 
======================================================================

Step3:启动或重新加载监听
 
查看监听状态

Step4:在oracle数据库上创建dblink 连接 sqlserver2008
=========================脚===本===如===下============================
create public database link con_mssql connect to "sa" identified by "password"

using '(DESCRIPTION=

        (ADDRESS=
              (PROTOCOL=TCP)(HOST=192.168.1.15)(PORT=1521))

                  (CONNECT_DATA=

                       (SID=G5)

       ) 
   (HS=OK)

)';
====================================================================== 
然后就可以测试: 
=========================脚===本===如===下============================

selectcount(*) from gs_t_ApplicationForm@con_mssql; 
====================================================================== 
执行后不会出错,有结果那么透明网管配置完成;

Oracle中使用透明网关链接到Sqlserver(转)的更多相关文章

  1. Oracle中使用透明网关链接到Sqlserver[Z]

    Oracle中使用透明网关链接到Sqlserver 在最近项目中需要从Oracle中访问SQL Server数据库, 自然想到了透明网关. 因为Oracle数据库是Linux上的, 而Linux上的O ...

  2. SharePoint 2010 中创建超链接到Pop-Up对话框

    SharePoint 2010 中创建超链接到Pop-Up对话框         SharePoint 2010 推出了新式的带有阴影的弹出对话框,你感觉怎么样?我感觉倒是挺酷的.这样少打开了一个页面 ...

  3. SSH开发中 使用超链接到action 其excute方法会被执行两次 actual row count: 0; expected: 1

    由于执行两次excute,所以在做删除操作的时候会出现 Batch update returned unexpected row count from update [0]; actual row c ...

  4. 配置Oracle透明网关用以连接 SQLServer经验总结

    一.情景介绍   业务中设计两个不同的系统,系统1和系统2,两个系统分别使用的是Oracle和SQLServer数据库.现需要在系统1的数据库中直接查询系统2数据库的数据.即在Oracle中执行SQL ...

  5. sqlserver和oracle中对全半角的转换

    oracle中对全半角的转换 to_single_byte(c)转换成半角 to_multi_byte(c)转换成全角 SELECT To_single_byte('881898?71') FROM ...

  6. 转 update关联更新在sqlserver和oracle中的实现

    sqlserver和oracle中实现update关联更新的语法不同,都可以通过inline view(内嵌视图)来实现,总的来说sqlserver更简单些. 测试例子如下: create table ...

  7. ABP框架使用Oracle数据库,并实现从SQLServer中进行数据迁移的处理

    ABP框架的数据访问底层是基于EFCore(Entity Framework Core)的,是微软标志性且成熟的ORM,因此它本身是支持多种主流数据库MySQL,SqlServer,Oracle,SQ ...

  8. oracle 通过透明网关gateway 连接sqlserver

    真实配置如下: 1.安装gateway 在一台单独的机器上,ip:172.30.40.29 2.配置listener.ora如下: 路径:  D:\product\11.2.0\tg_1\NETWOR ...

  9. SQLServer中的top、MySql中的limit、Oracle中的rownum

    (1)在SQL Server中,我们使用 select top N * from tablename来查询tablename表中前N条记录. (2)在MySQL中,我们使用select * from ...

随机推荐

  1. hdu4190 二分答案

    /*二分答案即可*/ #include<bits/stdc++.h> #define maxn 500005 #define ll long long #define INF 500000 ...

  2. python+selenium一:对浏览器的操作

    # 1.打开Firefox浏览器from selenium import webdriverdriver = webdriver.Firefox()driver.get("https://w ...

  3. python 全栈开发,Day87(ajax登录示例,CSRF跨站请求伪造,Django的中间件,自定义分页)

    一.ajax登录示例 新建项目login_ajax 修改urls.py,增加路径 from app01 import views urlpatterns = [ path('admin/', admi ...

  4. MVC开发中的常见错误-03-System.Data.Entity.Validation.DbEntityValidationException: 对一个或多个实体的验证失败。有关详细信息,请参见“EntityValidationErrors”属性。

    return Db.SaveChanges()>0; return CurrentDBSession.SaveChanges(); RoleInfoService.EditEntity(role ...

  5. android系统属性获取及设置

    系统属性获取及设置中的设置值 data/data/com.android.providers.settings/databases/settings.db 1.系统属性获取及设置 android.os ...

  6. A. 【UNR #2】UOJ拯救计划

    题解: 感觉多了解一些npc问题是很有用的.. 就不会像我一样完全不考虑模数的性质 前面60分大概是送分 后面主要考虑一下%6带来的影响 平常都是那么大的模数,突然这么小??? 考虑正好使用k种颜色的 ...

  7. hdu 1542

    链接:http://acm.hdu.edu.cn/showproblem.php?pid=1542 题意: 求所给矩形的覆盖面积 题解: 利用扫描线的思想,先将坐标离散化,之后以y轴分成多个矩形求解, ...

  8. json转成java对象

    avro生成的代码里,String是CharSequence,不能通过Gson反序列化,于是有了下面的代码,ParseArray里还不完善: static <T> List<T> ...

  9. Codeforces Round #319 (Div. 2) D - Invariance of Tree

    Invariance of Tree 题目大意:给你一个有1-n组成的序列p,让你构造一棵树,如果节点a和b之间有一条边,则p[a]和p[b]之间也有一条边. 思路:没啥思路,看了题解菜爆. 我们可以 ...

  10. HDU1711 Number Sequence KMP

    欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 题目传送门 - HDU1711 题意概括 给T组数据,每组有长度为n和m的母串和模式串.判断模式串是否是母串的子串,如果是输出 ...