0% found this document useful (0 votes)
514 views

Oracle Stream - Step by Step Procedure

This document outlines 10 steps to setup schema replication between databases ANK1 and ORCL: 1) Create a STRADM user and grant privileges, 2) Create a database link from STRADM in ANK1 to ORCL, 3) Create a capture queue and table in ANK1, 4) Add capture rules in ANK1 for schema SCOTT, 5) Create an apply queue and table in ORCL, 6) Add apply rules in ORCL for schema SCOTT from ANK1, 7) Add a propagation rule from ANK1 to ORCL, 8) Instantiate schema SCOTT in ORCL from ANK1, 9) Start the apply process in ORCL,

Uploaded by

Ankush Kumar
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
514 views

Oracle Stream - Step by Step Procedure

This document outlines 10 steps to setup schema replication between databases ANK1 and ORCL: 1) Create a STRADM user and grant privileges, 2) Create a database link from STRADM in ANK1 to ORCL, 3) Create a capture queue and table in ANK1, 4) Add capture rules in ANK1 for schema SCOTT, 5) Create an apply queue and table in ORCL, 6) Add apply rules in ORCL for schema SCOTT from ANK1, 7) Add a propagation rule from ANK1 to ORCL, 8) Instantiate schema SCOTT in ORCL from ANK1, 9) Start the apply process in ORCL,

Uploaded by

Ankush Kumar
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 2

STEPS TO SETUP STREAMS FOR SCHEMA REPLICATION

=============================================
DB Names: ANK1 & ORCL
1. Create STRADM user and grant necessary privileges.
2. Create private database link to the destination database from STRADM user.
CREATE DATABASE LINK ANK1.REGRESS.RDBMS.DEV.US.ORACLE.COM CONNECT TO STRADM IDEN
TIFIED BY stradm USING 'ANK1';
3. Create CAPTURE table and queue in SOURCE database (STRADM user).
exec dbms_streams_adm.set_up_queue(queue_table => 'CAPTURE_SCOTT_S',queue_name =
> 'CAPTURE_SCOTT_S_Q',queue_user => 'STRADM');

4. Add rules (Table, Schema or Database level) for CAPTURE process in SOURCE dat
abase (STRADM user).
BEGIN
DBMS_STREAMS_ADM.ADD_SCHEMA_RULES (
SCHEMA_NAME => 'SCOTT',
STREAMS_TYPE => 'CAPTURE',
STREAMS_NAME => 'CAP_STREAM_SCOTT_S',
QUEUE_NAME => 'CAPTURE_SCOTT_S_Q',
INCLUDE_DML => TRUE,
INCLUDE_DDL => TRUE,
INCLUSION_RULE => TRUE);
END;
/
5. Create APPLY table and queue in DESTINATION database (STRADM user).
exec dbms_streams_adm.set_up_queue(queue_table => 'APPLY_SCOTT_S',queue_name =>
'APPLY_SCOTT_S_Q',queue_user => 'STRADM');
6. Add rules (Table, Schema or Database level) for APPLY process in DESTINATION
database (STRADM user).
BEGIN
DBMS_STREAMS_ADM.ADD_SCHEMA_RULES (
SCHEMA_NAME => 'SCOTT',
STREAMS_TYPE => 'APPLY',
STREAMS_NAME => 'APPLY_STR_SCOTT_S',
QUEUE_NAME => 'APPLY_SCOTT_S_Q',
INCLUDE_DML => TRUE,
INCLUDE_DDL => TRUE,
SOURCE_DATABASE => 'ANK1.REGRESS.RDBMS.DEV.US.ORACLE.COM');
END;
/
7. Add PROPAGATION rule at SOURCE database (STRMADM user).
BEGIN
DBMS_STREAMS_ADM.ADD_SCHEMA_PROPAGATION_RULES (
SCHEMA_NAME => 'SCOTT',
STREAMS_NAME => 'ANK1_TO_SAMEER',
SOURCE_QUEUE_NAME => 'CAPTURE_SCOTT_S_Q',
DESTINATION_QUEUE_NAME => '[email protected]'
,
INCLUDE_DML => TRUE,
INCLUDE_DDL => TRUE,
SOURCE_DATABASE => 'ANK1.REGRESS.RDBMS.DEV.US.ORACLE.COM');
END;
/
8. INSTANTIATE the objects (Table, Schema, Database) with the SCN from SOURCE da
tabase (STRADM user).
DECLARE
ISCN NUMBER;
BEGIN
ISCN := DBMS_FLASHBACK.GET_SYSTEM_CHANGE_NUMBER();
DBMS_APPLY_ADM.SET_SCHEMA_INSTANTIATION_SCN@ORCL.REGRESS.RDBMS.DEV.US.ORACLE.COM
(
SOURCE_SCHEMA_NAME => 'SCOTT',
SOURCE_DATABASE_NAME => 'ANK1.REGRESS.RDBMS.DEV.US.ORACLE.COM',
INSTANTIATION_SCN => ISCN,
RECURSIVE => TRUE);
END;
/
9. Start the APPLY process at DESTINATION database.
EXEC DBMS_APPLY_ADM.SET_PARAMETER (APPLY_NAME => 'APPLY_STR_SCOTT_S', PARAMETER
=> 'DISABLE_ON_ERROR', VALUE => 'N');
EXEC DBMS_APPLY_ADM.START_APPLY (APPLY_NAME => 'APPLY_STR_SCOTT_S');
10. Start the CAPTURE process at SOURCE database.
EXEC DBMS_CAPTURE_ADM.START_CAPTURE (CAPTURE_NAME => 'CAP_STREAM_SCOTT_S');

You might also like