《2022年Oracle连接sqlserver与反向连接.doc》由会员分享,可在线阅读,更多相关《2022年Oracle连接sqlserver与反向连接.doc(8页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、Oracle 访咨询 sqlserver 透明网关配置说明 编写人:陈命群一简单业务描绘:在现有企业的信息系统中存在着大量的异构数据库,如ORACLE/SQLSERVER等,那么在进展系统之间的数据整合过程中,将不可防止的涉及到异构数据库之间的透明/无逢的数据访咨询。本文章将结合广钢ERP系统的后台ORACLE数据库与检斤系统的后台SQLSERVER数据库的透明网关的配置和访咨询。二简单技术描绘:在ORACLE 中提供了与其他数据库连接的组件,如与SQLSERVER/DB2等,在安装了组件之后将能够通过配置监听器/数据库连接等来完成数据库之间的访咨询。其中主要用到:透明网关代理、异类效劳(He
2、terogeneous Services)数据库效劳器情况:ORACLE 数据库地址:10.1.70.214 数据库SID:LTDDB SQLSERVER 数据库地址:10.1.70.185 数据库名:jjdtest 用户名:SA三详细实现步骤:1 透明网关的安装:留意:(1) 透明网关能够不安装在与ORACLE数据库同台机器上,但是由于它是安装数据库的一部分,因此在安装网关的同时将会安装数据库,因此假如不是特别情况,能够将透明网关安装在数据库效劳器上。(2) 安装过程中能够同时配置远程数据库的地址和数据库名。2 配置网关初始参数文件:留意:(1) 透明网关SID:访咨询异构数据库是一个数据库
3、事例,类似于一个数据库,因此,必须提供一个网关的SID,缺省为:tg4msql。其配置文件将以ini.ora来命名,存放在%ORACLE_HOME%tg4msqladmin下。(2) 假如本人指定SID或者配置多个数据库网关能够直截了当在生成的配置文件中直截了当修正即可,但是必须恪守ini.ora的命名原则。(3) 配置ini.ora的参数:HS_FDS_CONNECT_INFO=SQLSERVER_HOSTNAME.DATABASE_NAME.(4) 举例: HS_FDS_CONNECT_INFO=SERVER=10.1.70.185;DATABASE=jjdtestHS_FDS_TRACE
4、_LEVEL=OFFHS_FDS_RECOVERY_ACCOUNT=RECOVERHS_FDS_RECOVERY_PWD=RECOVER3 为透明网关配置网络监听器:留意:(1) oracle通过tns监听客户端的连接恳求,因此tns监听必须与透明网关配置在同一机器上,因此更加需要网关与数据库安装在同一效劳器上。(2) tns配置文件的位置:ORACLE_HOMENETWORKADMINLISTENER.ORA.(3) 需要参加参数:SID_LIST_LISTENER = (SID_LIST = (SID_DESC = (SID_NAME = GATEWAY_SID) (ORACLE_HOME
5、 = ORACLE_HOME_DIRECTORY) (PROGRAM = tg4msql) ) (4) 举例:LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0) ) (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 10.1.70.214)(PORT = 1521) ) ) )SID_LIST_LISTENER = (SID_LIST = (SID_DESC = (SID_NAME =
6、 tg4msql) (ORACLE_HOME = E:oracleora92) (PROGRAM = tg4msql) ) (SID_DESC = (GLOBAL_DBNAME = rmdb) (ORACLE_HOME = E:oracleora92) (SID_NAME = rmdb) ) )(5) 假如有多个网关,红字部分接着添加。(6) 重启gateway的监听,在效劳中,重启:oracleoraclehome9itnslistener效劳。(凡增加数据库的必须重启)4 配置tnsname.ora配置文件:留意:(1) 本配置文件配置的是:oracle数据库与透明网关的透明访咨询。(2)
7、 必须以手工方式修正配置文件。oracle_homenetworkadmintnsname.ora(3) 参数:connect_descriptor = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = oracle_host_name)(PORT = oracle_port_num) ) (CONNECT_DATA = (sid = gateway_sid) ) (hs=ok) )(4) 举例:tg4msql = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOC
8、OL = TCP)(HOST = 10.1.70.214)(PORT = 1521) ) (CONNECT_DATA = (sid = tg4msql) (hs=ok) )(5) 测试tns:tnsping tg4msql 测试成功将返回连接成功ok。5 建立数据库连接:留意:(1) 在建立了透明网关的连接后,必须建立数据库与透明网关的数据库连接,以后所有访咨询远程数据库的连接都将通过数据库连接进展。(2) 语法:create public database link dblikenameconnect to mssql_database_username identifid by passw
9、ordusing connect_descriptor(3) 例子: create public database link LINKFORMSSQL.US.ORACLE.COM connect to SA using tg4msql;6 访咨询异构数据库:例子:select * from trn_ggmisjjdlinkformssql;留意:假如指定查询的字段则必须在将字段用“”如:select ph from trn_ggmisjjdlinkformssql四总结:在当前的企业信息化建立过程中,企业原有数据库与新建系统数据库之间的数据交换、数据访咨询、数据共享将是一个头痛的咨询题。ORA
10、CLE中提供了与多个异构数据库之间的网关,通过如此的网关到达访咨询异构数据库的目的,将会非常好的处理异构数据库共享的咨询题。SQLServer访咨询Oracle配置1. 同样需要作以上配置2. 指向Oracle的连接假设Oracle数据库的用户名为test,密码为test,在SQL Server数据库所在效劳器上建立的指向Oracle数据库的效劳命名为hisorcl.1). 在SQL Server的企业治理器中的对象资源治理器中,展开“效劳器对象”,在“链接效劳器”上右击,选“新建链接效劳器”。如下列图所示进展配置。通过连接查询Oracle数据库中的数据select*fromopenquery(TEST_ORA,SELECT*FROMBASEMETADATA_DEPARTMENT)使用下面的这个方法会报“为列提供的元数据不一致”的错误信息。SELECT*FROMTEST_ORA.TEST.BASEMETADATA_DEPARTMENT通过连接向Oracle中的表插入数据INSERTOPENQUERY(TEST_ORA,selectDepartmentId,DeptName,DeptCodefromBaseMetaData_Department)selectDepartmentId,DeptName,DeptCodefromBaseMetaData_Department