[分享]怎样在64位的Unix系统上安装DG4MSQL(oracle database gateway for ms sql server)_MySQL, Oracle及数据库讨论区_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linux/Unix技术|hadoop论坛_联动北方技术论坛  
网站首页 | 关于我们 | 服务中心 | 经验交流 | 公司荣誉 | 成功案例 | 合作伙伴 | 联系我们 |
联动北方-国内领先的云技术服务提供商
»  游客             当前位置:  论坛首页 »  自由讨论区 »  MySQL, Oracle及数据库讨论区 »
总帖数
1
每页帖数
101/1页1
返回列表
0
发起投票  发起投票 发新帖子
查看: 4728 | 回复: 0   主题: [分享]怎样在64位的Unix系统上安装DG4MSQL(oracle database gateway for ms sql server)        下一篇 
unknsnow
注册用户
等级:上士
经验:272
发帖:78
精华:0
注册:2012-2-10
状态:离线
发送短消息息给unknsnow 加好友    发送短消息息给unknsnow 发消息
发表于: IP:您无权察看 2012-2-10 9:37:43 | [全部帖] [楼主帖] 楼主

适用于:

Oracle Database Gateway for SQL Server - Version: 11.1.0.6 to 12.0.0.0 - Release: 11.1 to
HP-UX PA-RISC (64-bit)
IBM AIX on POWER Systems (64-bit)
Oracle Solaris on SPARC (64-bit)
HP-UX Itanium
Linux x86-64
Oracle Transparent Gateway for Microsoft SQL Server - Version: 11.1.0.6 to 12.0.0.0


目的:

oracle 11g开始,为在64Unix操作系统上的MS SQL Server提供了数据库网关。

11g的安装步骤与以前发行的的稍微有所不同,并且这里的提示将解释每一步在Linux上如何配置。

这个网关需要认证老的oracle 9.2.0.8发行版本,或者10.2.0.3版本。但是请注意这些让每一个数据库完全工作的关于v11网关的需要的补丁。

使用“我的oracle支持”,在页的顶部的选项“Patch & Updates”,运行简单的查询就能找到补丁。选择“Simple Search”并且在框中输入补丁号码《5965763》,然后在平台或者语言列表中选择适当的平台。

如果在平台上没有可用的可选择的补丁对应你的数据库版本(i.e. 9.2.0.8, 10.1.0.5, or 10.2.0.3),请登陆服务请求,向Oracle Support要求一个对应你的平台的‘unpublishedBug5965763》后台端口。

oracle10.2.0.4以后开始,网关兼容性补丁包含在所有的oracle数据库补丁集中。

解决:

怎样在64Unix操作系统(例如Sparc SolarisAIXHP-UX RISCHP-UX Itanium Linux x86-64bit)上安装DG4MSQLoracle database gateway for ms sql server)。

附注:HP-UX RISC DG4MSQL32位的,并且代替了LD_LIBRARY_PATH  SHLIB_PATH的需要。

Linux平台上MS SQL Server的 Oracle数据库网关来自一个单独的CD。它可以安装在一个已经存在的oracle_home下(请注意,如果oracle_home包含一个已经打好补丁的数据库版本,你必须重新运用这个补丁集,因为网关安装器可能用基础版本覆盖已经存在的补丁库。重新获取正确的环境,已经申请的补丁集需要重新申请)。

安装之后,下列项必须配置:

1) listener 

2) tnsnames 

3) init<SID>.ora 

4) Oracle database

1) The listener needs a new SID entry like the following: 

(SID_NAME=dg4msql)
(ORACLE_HOME=/home/oracle/oracle/product/11.1)
(ENVS=LD_LIBRARY_PATH=/home/oracle/product/11.1/dg4msql/driver/lib:/home/oracle/product/11.1/lib)
(PROGRAM=dg4msql)


请根据你的安装,更正ORACLE_HOME entryENVS entry

我们强烈推荐添加LD_LIBARARY_PATH到监听器配置文件(listener.ora)中,以避免一些和已经存在的ODBC桥管理器发生冲突。

LD_LIBARARY_PATH必须包含全部合格的$ORACLE_HOME/lib和$ORACLE_HOME/dg4msql/driver/lib路径。请不要再ENVS路径中使用$ORACLE_HOME变量。

注意:

1. 在HP-UX平台上安装时请设置SHLIB_PATH 代替LD_LIBRARY_PATH,网关在HP-UX RISC上仍然是32位的,从而需要SHLIB_PATH设置。

2. 对于AIX平台,请使用LIBPATH代替LD_LIBRARY_PATH.

1)监听器文件(listener.ora)是一个监听器,用于监听1511端口,例如:

SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME=dg4msql)
(ORACLE_HOME=/home/oracle/oracle/product/11.1)
(ENVS=LD_LIBRARY_PATH=/home/oracle/product/11.1/dg4msql/driver/lib:/home/oracle/product/11.1/lib)
(PROGRAM=dg4msql)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = <hostname of the Oracle Server>) (PORT = 1511))
)
)
)


在改变监听器文件(listener.ora)之后,这个监听器必须关闭再打开。

2tnsnames.ora文件需要输入DG4MSQL的别名:

dg4msql.de.oracle.com =
(DESCRIPTION=
(ADDRESS=(PROTOCOL=tcp)(HOST=<hostname of the Oracle Server>)(PORT=1511))
(CONNECT_DATA=(SID=dg4msql))
(HS=OK)
)


这个域名(tns别名)可以不同于一个已经使用的域名之上,依赖于sqlnet.ora文件中的参数。

NAMES.DEFAULT_DOMAIN = de.oracle.com

但是重要入口是(HS=OK)关键字。(HS=)只是一个验证入口,但是DBCANetCA只是识别(HS=OK)入口和移除(HS=)入口。

在添加tnsnames别名之后需要重新启动监听器。

可以通过tnsping<alias>来检验连接。

connectivity

需要返回一个成功的信息。

3)网关的init.ora

有一些SID命名的限制(在NET ADMINISTRATORS GUIDE中有详细描述)。

在这里只有一个简短的说明:不要在SID中使用远点,并且保证他比较短。

SID只是和网关的安装文件有关。<SID>.ora文件。在例子中调用initdg4msql.ora

这个文件在$ORACLE_HOME/dg4msql/admin

这需要包含至少得链接细节:

#
HS_FDS_CONNECT_INFO=<SQL Server>:<port>//<database>
# alternate connect format is hostname/serverinstance/databasename
Short explanation of the parameter HS_FDS_CONNECT_INFO:
It can be configured to use a SQL Server port# or to work with instances:
HS_FDS_CONNECT_INFO=<SQL Server>:<port>//<database>
HS_FDS_CONNECT_INFO=<SQL Server>/<instance>/<database>
<SQL Server> is the hostname where the SQL Server resides
<port> is the port number of the SQL Server (default is 1433)
<instance> is the name of a dedicated instance you want to connect to; leave it blank if your SQL Server setup does not use SQL Server instances
<database> is the name of the database DG4MSQL should connect to; for example Northwind


例如:

To connect to a Northwind database on a SQL Server (w2k3) with IP Address 192.168.0.1 using the default instance you can use:
HS_FDS_CONNECT_INFO=x2kx.de.oracle.com:1433//Northwind
or
HS_FDS_CONNECT_INFO=192.168.0.1:1433//Northwind
To connect to a SQL Server 2k5 named instance msql2k5 on this machine listening on port 4025 either use:
HS_FDS_CONNECT_INFO=x2kx.de.oracle.com:4025//Northwind
or
HS_FDS_CONNECT_INFO=192.168.2.1:4025//Northwind
or
HS_FDS_CONNECT_INFO=x2kx.de.oracle.com/MSQL2k5/Northwind
or
HS_FDS_CONNECT_INFO=192.168.2.1/MSQL2k5/Northwind


附注:

链接已经命名的实例或许可能带来麻烦,使用合适的端口号可以解决。

你可以通过链接SQL Server的服务网络实用工具找到端口号,选择你想链接的实例,强调tcp/ip在可用的协议之下,并且点击参数按钮。一个关于端口号的窗口会打开,如果那样实例正在监听。

4)配置oracle数据库

这里唯一需要做的事情就是创建一个数据库链接:

使用username/password连接数据库,需要足够的权限来创建一个数据库链接(即系统)。

语法是:

create [public] database link <name>
connect to <UID> identified by <pwd> using '<tnsalias>';


换句话说,连接MS SQL Server中,配置是最后一步。

语法必须是:

CREATE DATABASE LINK sqlserver
CONNECT TO "sa" IDENTIFIED BY "sa" USING 'dg4msql';


这个数据库链接名字是sqlserver。用户名和密码必须使用双引号,因为用户名和密码在SQL Server情况中是敏感的。‘dg4msql’指的是tnsnames.ora文件中的别名。

如果所有的配置都已经好了,那么对SQL Server中表的查询操作将会成功:

select * from "systables"@sqlserver;


附注:在MS SQL Serversystables表明是小写的。因为在SQL Server对大小写是敏感的,所以表名必须被双引号包起来。




赞(0)    操作        顶端 
总帖数
1
每页帖数
101/1页1
返回列表
发新帖子
请输入验证码: 点击刷新验证码
您需要登录后才可以回帖 登录 | 注册
技术讨论