1.prepkreadonly表結構如下:---位於MYTEST01上
CREATE TABLE WISON.prepkreadonly
(
ID INTEGER NOT NULL,
NAME VARCHAR2(20 BYTE)
)
TABLESPACE USERS
PCTUSED 0
PCTFREE 10
INITRANS 1
MAXTRANS 255
STORAGE (
INITIAL 64K
MINEXTENTS 1
MAXEXTENTS UNLIMITED
PCTINCREASE 0
BUFFER_POOL DEFAULT
)
LOGGING
NOCOMPRESS
NOCACHE
NOPARALLEL
MONITORING;
CREATE UNIQUE INDEX WISON.prepkreadonly_PK ON WISON.prepkreadonly
(ID)
LOGGING
TABLESPACE USERS
PCTFREE 10
INITRANS 2
MAXTRANS 255
STORAGE (
INITIAL 64K
MINEXTENTS 1
MAXEXTENTS UNLIMITED
PCTINCREASE 0
BUFFER_POOL DEFAULT
)
NOPARALLEL;
ALTER TABLE WISON.prepkreadonly ADD (
CONSTRAINT prepkreadonly_PK
PRIMARY KEY
(ID)
USING INDEX
TABLESPACE USERS
PCTFREE 10
INITRANS 2
MAXTRANS 255
STORAGE (
INITIAL 64K
MINEXTENTS 1
MAXEXTENTS UNLIMITED
PCTINCREASE 0
));
2. 先建立物化視圖日誌.---如果存在多個需要同步,則建立多個. ---在MYTEST01上建立
CREATE MATERIALIZED VIEW LOG ON WISON.prepkreadonly
TABLESPACE USERS
PCTUSED 0
PCTFREE 60
INITRANS 2
MAXTRANS 255
STORAGE (
INITIAL 64K
MINEXTENTS 1
MAXEXTENTS UNLIMITED
PCTINCREASE 0
BUFFER_POOL DEFAULT
)
NOCACHE
LOGGING
NOPARALLEL
WITH PRIMARY KEY
EXCLUDING NEW VALUES;
3.在物化視圖站點上預先創建與物化視圖同名的表 ----可以不創建PK和PK對應的索引
CREATE TABLE WISON.prepkreadonly
(
ID INTEGER NOT NULL,
NAME VARCHAR2(20 BYTE)
)
TABLESPACE USERS
PCTUSED 0
PCTFREE 10
INITRANS 1
MAXTRANS 255
STORAGE (
INITIAL 64K
MINEXTENTS 1
MAXEXTENTS UNLIMITED
PCTINCREASE 0
BUFFER_POOL DEFAULT
)
LOGGING
NOCOMPRESS
NOCACHE
NOPARALLEL
MONITORING;
CREATE UNIQUE INDEX WISON.prepkreadonly_PK ON WISON.prepkreadonly
(ID)
LOGGING
TABLESPACE USERS
PCTFREE 10
INITRANS 2
MAXTRANS 255
STORAGE (
INITIAL 64K
MINEXTENTS 1
MAXEXTENTS UNLIMITED
PCTINCREASE 0
BUFFER_POOL DEFAULT
)
NOPARALLEL;
ALTER TABLE WISON.prepkreadonly ADD (
CONSTRAINT prepkreadonly_PK
PRIMARY KEY
(ID)
USING INDEX
TABLESPACE USERS
PCTFREE 10
INITRANS 2
MAXTRANS 255
STORAGE (
INITIAL 64K
MINEXTENTS 1
MAXEXTENTS UNLIMITED
PCTINCREASE 0
));
4.建立物化視圖---在目的數據庫上創建 在目的數據庫上創建DBLINK MYTEST 連接到MYTEST01
CREATE MATERIALIZED VIEW WISON.prepkreadonly
ON PREBUILT TABLE
REFRESH FAST
AS
SELECT prepkreadonly.ID ID,
prepkreadonly.NAME NAME
FROM WISON.prepkreadonly@MYTEST
5. 創建刷新組---在目的數據庫上創建
DECLARE
SNAPARRAY SYS.DBMS_UTILITY.UNCL_ARRAY;
BEGIN
SNAPARRAY(1) := 'WISON.prepkreadonly';
SNAPARRAY(2) := NULL;
SYS.DBMS_REFRESH.MAKE (
NAME => 'WISON.prepkreadonly'
,TAB => SNAPARRAY
,NEXT_DATE => TO_DATE('10/19/2010 20:00:00', 'MM/DD/YYYY HH24:MI:SS')
,INTERVAL => 'SYSDATE + 6/1440 '
,IMPLICIT_DESTROY => TRUE
,LAX => TRUE
,JOB => 0
,ROLLBACK_SEG => NULL
,PUSH_DEFERRED_RPC => TRUE
,REFRESH_AFTER_ERRORS => FALSE
,PURGE_OPTION => 1
,PARALLELISM => 0
,HEAP_SIZE => 0
);
COMMIT;
END;
/
6. 之後每6分鐘就會開始進行兩邊數據同步(會自動創建同步的JOB)
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/16754036/viewspace-678229/
,如需转载,请注明出处,否则将追究法律责任。