Anda di halaman 1dari 6

STREAM CONFIGURATION STEPS

High level Steps:


1. Configure Database Parameters
2. Stream User Configuration
3. Configure Logminer
4. Configure dblink
5. Configure Parameters
6. Creating Standby log
7. Queue creation
8. Apply Process Creation
9. Add Apply Parameters
10. Capture Process Creation
11. Add Capture Parameters
12. Add Capture Schema Rules
13. Copy schema
14. Disable the error
15. Start the Apply process
16. Start the Capture process.

Low Level Steps
i) Configure Database Parameter

Both at Source and DownStream.

Alter system set global_names=true;
Alter system set streams_pool_size=1g;

ii) Stream User Configuration:
Source/ DownStream Site:

sqlplus /nolog
Connect / as sysdba
SQL> create user STRMADMIN identified by STRMADMIN;

SQL> ALTER USER strmadmin IDENTIFIED BY strmadmin
DEFAULT TABLESPACE stream_tbs
QUOTA UNLIMITED ON stream_tbs;

SQL> GRANT CONNECT, RESOURCE, AQ_ADMINISTRATOR_ROLE,DBA
to STRMADMIN;

SQL> execute
DBMS_STREAMS_AUTH.GRANT_ADMIN_PRIVILEGE('STRMADMIN');




iii) Configure Logminner for Convertion:
DownStream Site:
conn /as sysdba

exec DBMS_LOGMNR_D.SET_TABLESPACE ('stream_tbs');


iv) Configure the DB LInk:
DownStream Site:
sqlplus /nolog
Connect STRMADMIN/STRMADMIN
create database link POREM connect to STRMADMIN
identified by STRMADMIN using 'POREM';

v) Configure the Parameters:
Source Site:
ALTER SYSTEM SET
LOG_ARCHIVE_CONFIG='DG_CONFIG=(POREM,OSTBY,TOREM)'
SCOPE=BOTH;

ALTER SYSTEM SET LOG_ARCHIVE_DEST_STATE_3=ENABLE
SCOPE=BOTH;

ALTER SYSTEM SET LOG_ARCHIVE_DEST_3='SERVICE=TOREM LGWR
SYNC NOREGISTER
VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE)
DB_UNIQUE_NAME=TOREM'
SCOPE=BOTH;

ALTER SYSTEM SET log_archive_format =
'POREM_%t_%s_%r.arc' SCOPE=BOTH;

DownStream Site:

alter system set log_archive_dest_1 =
'LOCATION=/home/oracle/app/oracle/product/11.2.0/db_1/dbs
/arch/TOREM mandatory reopen=5 valid_for=(online_logfile,
primary_role)' scope=both

alter system set log_archive_dest_state_1 = enable
scope=both

alter system set log_archive_format =
'TOREM_%t_%s_%r.dbf' scope=both


vi) Create Standby log:
DownStream Site:


ALTER DATABASE ADD STANDBY LOGFILE GROUP 4
('/home/oracle/app/oracle/oradata/TOREM/slog4.rdo') SIZE
50M;

ALTER DATABASE ADD STANDBY LOGFILE GROUP 5
('/home/oracle/app/oracle/oradata/TOREM/slog5.rdo') SIZE
50M;

ALTER DATABASE ADD STANDBY LOGFILE GROUP 6
('/home/oracle/app/oracle/oradata/TOREM/slog6.rdo') SIZE
50M;

ALTER DATABASE ADD STANDBY LOGFILE GROUP 7
('/home/oracle/app/oracle/oradata/TOREM/slog7.rdo') SIZE
50M;

vii) Queue Creation:
DownStream Site:
sqlplus /nolog
conn strmadmin/strmadmin

SQL> BEGIN
DBMS_STREAMS_ADM.SET_UP_QUEUE(
queue_table => 'strmadmin.CORE_Q_TABLE',
queue_name => 'strmadmin.CORE_Q',
queue_user => 'STRMADMIN');
END;
/

viii) Apply Process Creation:
DownStream Site:
sqlplus /nolog
conn strmadmin/strmadmin

SQL> BEGIN
DBMS_APPLY_ADM.CREATE_APPLY(
queue_name => 'strmadmin.CORE_Q',
apply_name => 'CORE_APPLY',
apply_captured => TRUE
);
END;
/
ix) Add Apply Parameters:
DownStream Site:

exec
dbms_apply_adm.set_parameter('CORE_APPLY','allow_duplicat
e_rows','Y');

x) Capture Process Creation:
DownStream Site:

sqlplus /nolog
conn strmadmin/strmadmin
BEGIN
DBMS_CAPTURE_ADM.CREATE_CAPTURE(
queue_name => 'strmadmin.CORE_Q',
capture_name => 'CORE_CAPTURE',
rule_set_name => NULL,
start_scn => NULL,
source_database => 'POREM',
use_database_link => true, -- For administrative
purposes.
first_scn => NULL,
logfile_assignment => 'implicit'); -- capture process
accepts redo data implicitly from Source.
END;
/

xi) Add Capture Parameters:
DownStream Site:

sqlplus /nolog
Connect STRADMIN/STRADMIN
SQL> BEGIN
DBMS_CAPTURE_ADM.SET_PARAMETER(
capture_name => 'CORE_CAPTURE',
parameter => '
downstream_real_time_mine',
value => 'y');
END;
/

xii) Add Capture Schema Rules:
DownStream Site:
sqlplus /nolog
Connect STRADMIN/STRADMIN
SQL > BEGIN
DBMS_STREAMS_ADM.ADD_SCHEMA_RULES(
schema_name => 'SYSADM',
streams_type => 'capture',
streams_name => 'CORE_capture',
queue_name => 'strmadmin.CORE_q',
include_dml => true,
include_ddl => true,
include_tagged_lcr => false,
source_database =>POREM,
inclusion_rule => TRUE);
END;
/

xiii) Copy Schema:
Source:
$ exp SYSADM/sysadm file=sysadm_str.dmp
log=sysadm_str.log object_consistent=y owner=sysadm
STATISTICS=NONE

Target:
$ imp sysadm/sysadm fromuser=sysadm touser=sysadm
file=sysadm_str.dmp log=sysadm_imp.log
streams_instantiation=Y ignore=Y commit=Y

xiv) Disable the error:

DownStream Site:
sqlplus /nolog
Connect STRADMIN/STRADMIN
SQL> BEGIN
DBMS_APPLY_ADM.SET_PARAMETER(
apply_name => 'CORE_APPLY',
parameter => 'disable_on_error',
value => 'n');
END;
/
xv) Start APPLY Process:
DownStream Site:
sqlplus /nolog
Connect STRMADMIN/STRMADMIN
SQL> begin
DBMS_APPLY_ADM.START_APPLY(apply_name => 'CORE_APPLY');
end;
/

xvi) Start Capture Process:
DownStream Site:
sqlplus /nolog
Connect STRMADMIN/STRMADMIN
SQL> begin
DBMS_CAPTURE_ADM.START_CAPTURE(capture_name =>
'CORE_CAPTURE');
end;
/

Anda mungkin juga menyukai