配置透明网关主要涉及到5个文件,分别是:
1、~/tg_1:(1)dg4msql/admin/initdg4msql.ora;(2)newwork/admin/listener.ora;(3)newwork/admin/tnsname.ora;2、~/dbhome_1:(1)newwork/admin/listener.ora;(2)newwork/admin/tnsname.ora;4.1 配置GateWays4.1.1 initdg4msql.ora文件目录:~/tg_1/dg4msql/admin/initdg4msql.ora;
原始内容:HS_FDS_CONNECT_INFO=[1.1.11.9]//EISDOC_NCHS_FDS_TRACE_LEVEL=OFFHS_FDS_RECOVERY_ACCOUNT=RECOVERHS_FDS_RECOVERY_PWD=RECOVER
配置后内容:
HS_FDS_CONNECT_INFO="1.1.11.9;DATABASE=EISDOC_NC" # 此处ip为连接指向的SQLSERVER服务器的IP地址或服务器名,, # eisdoc_nc为连接指向的SQLSERVER的数据库名HS_FDS_TRACE_LEVEL=OFFHS_FDS_RECOVERY_ACCOUNT=sa # SQL库登录账户HS_FDS_RECOVERY_PWD=sa # SQL库登录密码
注:HS_FDS_CONNECT_INFO的属性值格式:原始和修改后的两种格式均可。PS.透明网关的SID_NAME解析:系统生成的initdg4msql.ora文件其命名格式为“init+SID_NAME”。即SID_NAME为dg4msql。 4.1.2 listener.ora文件目录:~/tg_1/dg4msql/admin/listener.ora原始内容:LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = WWXT-SERVER)(PORT = 1523)) (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1523)) ) )ADR_BASE_LISTENER = D:/product/11.2.0/tg_1配置后内容:(新增方框内信息)SID_LIST_LISTENER = (SID_LIST = (SID_DESC = (SID_NAME = PLSExtProc ) (Oracle_HOME = D:/app/Administrator/product/11.2.0/dbhome_1)# 此路径指向Oracle服务器安装目录(PROGRAM = extproc) ) (SID_DESC = (SID_NAME = dg4msql) # 此dg4msql为透明网关的SID_NAME (ORACLE_HOME = D:/product/11.2.0/tg_1) # 此路径为透明网关的安装路径 (PROGRAM = dg4msql) # 此dg4msql固定不变 ))LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = WWXT-SERVER)(PORT = 1523)) (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1523)) ) )PLSExtProc特别说明:
Oracle默认安装时,会安装一个PL/SQL外部程序(ExtProc)条目在listener.ora中,
是oracle为调用外部程序默认配置的监听,它的名字通常是ExtProc或PLSExtProc。ADR_BASE_LISTENER = D:/product/11.2.0/tg_1PS.SID_LIST_LISTENER和LISTENER:1、SID_LIST_LISTENER部分和LISTENER部分的键入顺序:SID_LIST_LISTENER必须在 LISTENER之前。2、LISTENER不需要做任何修改。 4.1.3 tnsname.ora文件目录:~/tg_1/dg4msql/admin/tnsname.ora原始内容:FCDB = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 1.1.9.111)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = FCDB) ) )注:在配置tnsname.ora文件之前,需要将~/dbhome_1/newwork/admin目录下tnsname.ora的非注释内容拷贝到~/tg_1/dg4msql/admin目录下tnsname.ora文本中(此次测试~/dbhome_1/newwork/admin/tnsname.ora内无内容)。配置后内容:(新增方框内信息)DG4MSQL = # 此DG4MSQL为配置的数据库服务名,可自定义 (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 1.1.9.111)(PORT = 1523))# 1.1.9.111:安装配置透明网关的主机HOST地址# 1523:安装GateWays透明网关时配置的端口 ) (CONNECT_DATA = (SID = dg4msql)# 此dg4msql为透明网关的SID_NAME ) (HS = OK) # 这一句非常重要,必须要有,加了才支持异构的数据库 )PS.FCDB消失:在安装GateWays配置tnsnames信息时有叙述,初始配置的tnsnames信息可以任意输入,其目的就是为了生成tnsnames的配置文件。 4.1.4 重启透明网关监听1、进入~/tg_1/bin目录,找到“LSNRCTL.EXE”应用程序,并执行。2、停止服务:键入命令stop,停止监听。 3、启动服务:键入命令start,启动监听。如下显示正常。 4.2 配置Oracle4.2.1 listener.ora文件目录:~/dbhome_1/newwork/admin/listener.ora更新内容与~/tg_1/newwork/admin/listener.ora中更新的部一致。 4.2.2 tnsname.ora文件目录:~/dbhome_1/newwork/admin/tnsname.ora将~/tg_1/newwork/admin目录下的tnsname.ora拷贝到~/dbhome _1/newwork/admin目录下,覆盖原来的tnsname.ora。 4.2.3 重启Oracle监听1、进入~/dbhome_1/bin目录,找到“LSNRCTL.EXE”应用程序,并执行。2、停止服务:键入命令stop,停止监听。如下显示正常。 3、启动服务:键入命令start,启动监听。如下显示正常。 4.3 验证所有监听服务主要在Windows服务列表查看OracleOraGtw11g_home1TNSListener和OracleOraDb11g_home1TNSListener的运行状态。如果处于“正在运行”,则表示正常;反之异常。 5 验证测试使用PL/SQL登录Oracle数据库,创建DataBase Links,创建成功后再进行测试。5.1 创建DataBase Links创建SQL语句:create public database link EISDOC connect to sa identified by sa using 'DG4MSQL'; EISDOC:database link别名sa:SQL Server用户登录名称sa:SQL Server用户登录密码DG4MSQL:透明网关创建数据库服务名。即~/tg_1/dg4msql/admin/tnsname.ora中配置的“DG4MSQL”。执行结果,创建成功: 5.2 查询测试查询SQL语句:SELECT COUNT(1) FROM OperaTION@EISDOCOPERATION@EISDOC:SQL Server中的数据表名@Database Link别名执行结果,查询成功: 6 创建失败集锦1、各处该用的SID_NAME是否统一。2、listener.ora中的各个路径是否正确。3、listener.ora和tnsname.ora中的各个HOST和PORT是否正确。4、如果是SQL Server 2005,则要检查远程连接是否已经更改过来,默认安装下的设置是没有打开的.通过进入环境设置界面,改成允许远程连接即可。5、如果是SQL Server2000,则有可能没有安装sp3补丁,下载一个安装上就好。6、如果是SQL Server2000,还有一个地方需要注意的就是,进入SQLSERVER的属性,将安全性配置成如下: 7、创建DataBase Links和配置~/tg_1/dg4msql/admin/initdg4msql.ora中的SQL Server用户登录名称和用户登录密码时,是否严格遵守英文字母的大小写。新闻热点
疑难解答