Oracle Advanced Replication Best Practice(三)
MARY KEY FOR UPDATE
AS SELECT * FROM hr.employees@PROD.ORACLE.COM;
BEGIN
DBMS_REPCAT.CREATE_MVIEW_REPOBJECT (
gname => 'hr_repg',
sname => 'hr',
oname => 'employees_mv1',
type => 'SNAPSHOT',
min_communication => TRUE);
END;
/
BEGIN
DBMS_REFRESH.ADD (
name => 'mviewadmin.hr_refg',
list => 'hr.employees_mv1',
lax => TRUE);
END;
/
7,在PROD上
SQL> conn hr/hr
Connected.
SQL> update employees set salary=88888 where employee_id=107;
1 row updated.
SQL> commit;
Commit complete.
SQL> select salary from employees where employee_id=107;
SALARY
----------
88888
8,在EMR上
SQL> select salary from employees_mv1 where employee_id=107;
SALARY
----------
88888
从上面可以看出PROD库上的hr.employees表被更新后,EMR库的物化视图employees_mv1 在一分钟后更新过来了。