oracle 10g 连接 sqlserver---透明网关
来源:互联网 发布:pdf修改器mac版 编辑:程序博客网 时间:2024/05/21 08:54
需求:通过oracle访问sqlserver 数据库。
1.环境:sqlserver2000 与 oracle 10g 安装在同一台电脑上,且透明网关也安装在同一台电脑上。
sqlserver 数据库:yltrq 用户为:admin
2.工具:oracle 透明网关,下载地址:http://download.oracle.com/otn/nt/oracle10g/10201/10201_gateways_win32.zip
3. 接下来是实现步骤:
a、 安装透明网关:点击安装上面下载的透明网关,选择sqlserver的网关安装,在配置监听器的时候为了为了避免和oracle数据库监听器同名,修改监听器名称为TG4MSQL,且监听端口为1522 或其他本机未使用端口。在配置连接数据库时,sqlserver 服务器为本机电脑名或ip地址,数据库为你你需要连接的数据库。
b、安装完成后进行透明网关配置:
a.1: 删除环境变量path中所有关于透明网关的环境变量。
因为此环境是数据库和透明网关在一台机机器上,二者的目录下都有LSNRCTL程序,所以为了防止混淆,在环境变量PATH中去掉了透明网关的条目。
这里把路径名及监听名写上是为了防止使用系统的环境变量,造成错误。
a.2:修改透明网关安装目录下....\tg4msql\admin\inittg4msql.ora文件
即假设%GATEWAY_HOME% = D:\oracle\product\10.2.0\tg_1
修改%GATEWAY_HOME%\tg4msql\admin\inittg4msql.ora
HS_FDS_CONNECT_INFO="SERVER=10.0.1.12;DATABASE=hist"
HS_FDS_TRACE_LEVEL=OFF
HS_FDS_RECOVERY_ACCOUNT=RECOVER
HS_FDS_RECOVERY_PWD=RECOVER
修改之后,修改文件名为inittg4.ora (init<sid>.ora).若前面设置正确的,则只需要修改文件名,若需要连接到其他数据库也可以在次修改。
a.3:修改透明网关的监听器配置:%GATEWAY_HOME%\network\admin\listener.ora 如下:
TG4MSQL =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = HOSTNAME)(PORT = 1522)) #注意这里的端口
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
)
)
SID_LIST_TG4MSQL =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = D:\oracle\product\10.2.0\tg_1)
(PROGRAM = extproc)
)
(SID_DESC =
(SID_NAME = tg4) #透明网关的SID
(ORACLE_HOME = D:\oracle\product\10.2.0\tg_1)
(PROGRAM = tg4msql) #这里是固定的
)
a.4:修改透明网关的%GATEWAY_HOME%\network\admin\tnsname.ora文件,增加Sid的配置:
TG4 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = HOSTNAME)(PORT = 1522)) #注意这里的端口
(CONNECT_DATA =
(SERVICE_NAME = tg4) #这里的SID必须与透明网关的SID
)
(HS = OK) #这里必须写
)
a.5:重启透明网关服务,启动时可能遇到启动监听之后自动停止了:
解决:
1.在透明网关中NET MANAGERZ中的服务命名中的tg4的配置的地址写成主机名或127.0.0.1 ,应该与配置文件中相同。
2..在tnsnames.ora 文件%GATEWAY_HOME%\network\admin\tnsname.ora中的
EXTPROC_CONNECTION_DATA 配置位置在 TG4 配置之前,如果在之后,可能会出错。(本人这样出过错)3.仔细检查这两个位置。其他的错误暂时还没发现,等发现了补上。
a.6:修改数据库的tnsnames.ora ,新增tg4的配置:
TG4 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = HOSTNAME)(PORT = 1522)) #端口
(CONNECT_DATA =
(SERVICE_NAME = tg4) #这里的SID必须与透明网关的SID
)
(HS = OK) #这里必须写
)
a7:验证网关是否通:cmd---> tnsping tg4
a8:创建数据库连接
create public database link tglk connect to admin identified by admin using 'tg4'
a9: 测试是否成功:select sysdate from dual@tglk;
- oracle 10g 连接 sqlserver---透明网关
- Oracle 11g透明网关连接Sqlserver
- oracle 10g透明网关访问sqlserver
- Oracle 11g透明网关连接Sqlserver 2000
- Oracle 11g透明网关连接Sqlserver 2000
- Oracle 11g透明网关连接Sqlserver 2000
- oracle 10g透明网关访问sqlserver的心得
- oracle 10g透明网关访问sqlserver的心得
- oracle 10g透明网关访问sqlserver的心得
- Oracle 11g透明网关连接sybase及sqlserver数据库(网关数据库分开)
- 10g透明网关访问sqlserver
- 10g透明网关访问sqlserver
- oracle 11g 透明网关(oracle --> sqlserver)
- oracle 11g透明网关访问ms sqlserver的心得
- oracle 11g透明网关访问ms sqlserver的心得
- oracle 10g透明网关访问sqlserver2000
- oracle 10g 透明网关设置步骤
- oracle 10g透明网关访问sqlserver2000
- short_open_tag 必须打开 .
- iReport自动伸展,自适应高度
- hdu 2039
- LINQ to SQL语句(6)之Group By/Having
- Thrift工具的设计介绍
- oracle 10g 连接 sqlserver---透明网关
- eclipse中代码格式化
- 关于andriod sdk无法下载安装的处理方法
- LINQ to SQL语句(7)之Exists/In/Any/All/Contains
- 设计模式之组合
- 【转载】Post与get传输的九大秘密
- Va_list
- Android NDK static shared library
- 自动从svn log中逐一分析是否修改过某字符串