Oracle DBLinke+实体化视图 同步两个数据库的数据

      项目的新需求是同步两个Oracle数据库的部分个,在实验环境现试通了几种方法,今天先把DbLink 加 实体化视图 同步数据的方法记录一下。 数据库

一、配置tnsnames.ora文件
指定到主数据库的网络名,实验环境为169db

网络

二、在从数据库端给用户赋值相应的权限
grant create database link to repadmin; --建立dblink的权限。
grant create materialized view to repadmin; --建立物化视图的权限。 ide

三、以repadmin身份登陆从数据库。
connect repadmin/xxxx
--建立dblink
create database link 169dbLink connect to repadmin identified by xxxx using '169db';
--测试是否建立成功
select * from global_name@169dbLink; 测试

四、在主数据库的表上建立物化视图日志,这个日志记录了主表的变化。
create materialized view log on pdata; 
--若是Pdata个没有主键,能够用rowid做为为主键。
create materialized view log on pdata with rowid; spa

五、在从数据库中建立物化视图。
create materialized view test refresh fast with primary key start with sysdate next sysdate+1/1440 as select * from pdata@169dblink;
--这里用的是fast自动刷新。 sysdate +1/1440 为每分钟刷新一次。 日志

六、完成。
能够在主数据库对pdata表进行Insert或Update,从数据库中的物化视图会自动更新。 同步

相关文章
相关标签/搜索