实际生产过程中,通常会遇到不同数据库之间进行数据交换的问题,有同构的也有异构的。ORacle提供了dblink支持不同数据库之间的数据交换。异构数据库连接配置比较麻烦,这里只谈以下如何实现oracle与oracle之间的同构实现。dblink和数据库中的view差不多,建dblink的时候需要知道待读取数据库的ip地址,ssid以及数据库用户名和密码。
环境:127.0.0.1安装了oracle10服务器,192.168.0.66上同样部署一台oracle db(用户kjj_shenbao_bak2),两者的sid都是OANET。
目标:在本地oracle中可以直接访问66上的kjj_shenbao_bak2用户表
创建可以采用两种方式:
1、已经配置本地服务
在cmd中执行
sqlplus system/123456@oanet_127.0.0.1;
提示连接成功后,输入创建命令
create public database link ORACLE66_LINK connect to kjj_shenbao_bak2 identified by 123456 using 'oracle66';
或者
create database link ORACLE66_LINK connect to kjj_shenbao_bak2 identified by 123456 using 'oracle66';
命令说明:
CREATE [PUBLIC] DATABASE LINK 数据库链接名(此处为ORACLE66_LINK) CONNECT TO 用户名 IDENTIFIED BY 密码 USING ‘本地配置的数据联接字符串(此处为oracle66)’;
如果建立成功,会提示:Database link created.
此时就可以使用了:
select cos(1) from kjj_shenbao_bak1.sys_user@oracle66_link;
表名必须是<表所有者>.<表名>@<dblink name>
2、本地尚未配置命名服务
打开oracle_db\db_1\NETWORK\ADMIN\tnsnames.ora添加如下内容
oracle66 =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.66)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = oanet)
)
)
然后再按照第一种情况执行即可。
3、删除dblink:
DROP PUBLIC DATABASE LINK ‘dblink名称’;
或者
DROP DATABASE LINK ‘dblink名称’;
(以上操作都是在127.0.0.1上进行)
PS:
a、本地DB需要支持Advanced replication功能,是否支持,可用如下SQL查看:
select * from v$option where PARAMETER='Advanced replication';
如果是返回True就表示支持。
b、如果创建全局dblink,必须使用systm或sys用户,在database前加public。
分享到:
相关推荐
Linux下ORACLE 使用dblink连接mysql_lijilinjy的专栏-CSDN博客.mhtml
oracle通过DBlink连接mysql搭建过程
本周由于公司一个系统的oracle数据库需要采集另一个系统mysql数据库的数据,于是对oracle通过dblink连接mysql进行了研究,测试环境是单实例oracle 10g 64位,折腾了半天搞定了,但是生产环境是10g rac,原本以为会很...
Oracle之dblink的配置 Oracle之dblink的配置 Oracle之dblink的配置 Oracle之dblink的配置
oracle 使用dblink方式 连接远程数据库,内有详细描述,亲测可以
oracle 存储过程 函数 dblink 绝对对工作和平时学习有价值的资料。针对个人具体情况做修改即可使用
本文详细描述了在oracle10g或11g中使用dblink访问sql server,使用oracle的透明网关来访问异构的数据库,方便一些习惯使用oracle的开发人员操作sql server数据库
在oracle中创建dblink可以连接其它的oracle数据库。对其它的oracle数据库进行操作。
oracle通过dblink连接mysql,主要参考了网上的文章,由于本人oracle服务端是32位,MySQL是64,附件中包含32位驱动 mysql-connector-odbc-5.2.4-ansi-win32.msi
依赖包:mysql-connector-odbc-5.3.6-1.el6.x86_64.rpm和unixODBC,前置条件:Oracle和MySQL字符集需要一致,否则Oracle查询出来的数据是乱码。
通过dblink连接oracle和mysql,将数据从oracle传输到mysql,详细记录了搭建过程和创建报错
oracle通过ODBC建立dblink访问SqlServer数据库配置
Oracle创建DBlink连接MYSQL数据库
oracle,oracle_dblink详解
oracle 创建dblink的详细步骤,以及使用oracle快照快速的刷新,保持本地与远程数据库的同步
oracle数据库用DBLINK连接另一个数据库的两种方法.txt
oracle使用dblink在两个数据库中比对数据库表的行数是否一致
不同数据库之间进行互访的话建立的连接
oracle通过odbc方式,连接到sqlserver数据库。比透明网关方式更加简单
以迁移scott用户下所有的表为例演示Oracle使用dblink导用户下的所有表数据