connect system/passwd@SH create user repadmin identified by repadmin; begin dbms_repcat_admin.grant_admin_any_schema( username=>’repadmin’); end; /grant comment any table to REPADMIN; grant lock any table to REPADMIN;
begin dbms_repcat.generate_replication_support( sname=>’SHORACL’, oname=>’ CREDIT_CARD’, type=>’TABLE’, min_communication=>TRUE); end; /
9. 為快速刷新創建實體化視圖日志:
create materialized view log on SHORACL. CREDIT_CARD;
假如是沒有主鍵的表示用一下語句:
create materialized view log on SHORACL. CREDIT_CARD with rowid excluding new values;
10.啟動復制:
begin dbms_repcat.resume_master_activity( name=>’sh_rep’); end; /
二.設置實體化視圖站點。 1.創建復制治理員并授予相應的權限:
disconnect; connect system/passwd@BJ; create user mvadmin identified by mvadmin; begin dbms_repcat_admin. grant_admin_any_schema(username=> ’mvadmin’); end; /grant comment any table to mvadmin; grant lock any table to mvadmin; grant select any dictionary to mvadmin;
2.注冊傳播方:
begin dbms_defer_sys.register_propagator( username => ’mvadmin’); end; /
3.公共數據庫連接。需要每個復制需要創建三個數據庫連接。公共數據庫連接指定數據庫的全局名稱:
create public database link ORACLSH using ’oracle.shanghai. com’;
Using子句后跟的是全局數據庫名或者是連接字符串。
create public database link ORACLSH using ’(description= (address=(protocol=tcp)(host=127.0.0.1)(port=1521)) (connect_data=(service_name=oracl)))’
disconnect; connect system/passwd@BJ; grant alter session to crm; grant create cluster to crm; grant create database link to crm; grant create sequence to crm; grant create session to crm; grant create synonym to crm; grant create table to crm; grant create view to crm; grant create procedure to crm; grant create trigger to crm; grant unlimited tablespace to crm; grant create type to crm; grant create any snapshot to crm; grant alter any snapshot to crm;
8.建立復制方案的數據庫連接:
disconnect; connect SHORACL/SHORACL@BJ; create database link ORACLSH connect to ORACL identified by ORACL;
disconnect; connect mvadmin/mvadmin@BJ; create materialized view SHORACL.CREDIT_CARD refresh fast wit h pr imar y key as sele ct * from ORA CL. CREDIT_CARD@ORACLSH;
@后面是數據庫連接名。假如該表沒有主鍵則使用rowid來刷新
create materialized view SHORACL. CREDIT_CARD refresh fast with rowid as select * from ORACL. CREDIT_CARD@ORACLSH;