Using the Standby Database

A standby database can be used to create the target database to ensure that the data is same as the source database before the replication starts. 

The standby database can be created using RMAN or by using Dbvisit Standby. 

A point in time is chosen to activate the standby database so that this becomes a regular READ-WRITE database. 

In the setup wizard the option "resetlogs" is chosen as the instantiation method for both replication pairs:

Lock and copy the data initially one-by-one or at a single SCN?
(one-by-one/single-scn/ddl-only/resetlogs) [single-scn] resetlogs
What data copy script to create?
(dp_networklink/dp_exp/exp/ddl_file/ddl_run/none) [none]

 

The resetlogs setting will obtain the resetlogs_change# from v$database in the target database. This will be the point at which the replication will start from. 

With 2-way replication there is an additional step that must be done to set the correct SCN number for the second replication.

 

1. Obtain the resetlogs SCN from the target database:

SQL> select resetlogs_change# from v$database;
RESETLOGS_CHANGE#
-----------------
10892654

 

2. Edit the *.dbvrep script and change the word "RESETLOGS" to the actual SCN from the above SQL for the APPLY1 process by hand. 

SET APPLY1.INSTANTIATE_SCN 10892654

 

3. Run the Run *all.sh script as per normal and follow the instructions in the Nextsteps.txt

 

Example of using a standby database with 2-way replication

1. Create the standby database using RMAN or Dbvisit Standby.

 

2. Activate the standby database using the Dbvisit Standby activate command or with manual command:

SQL> alter database activate standby database;

 

3. Run the setup wizard as follows:
In this example the source and target databases are both called d112f. The source TNS alias is d112f_dbvisit210 and the target TNS alias is d112f_dbvisit230. The source server is called dbvisit210 and the target server is called dbvisit230. 

$dbvrep
Initializing......done
Dbvisit Replicate version 2.x.xx.
Copyright (C) Dbvisit Software Limited. All rights reserved.
No DDC file loaded.
Run "setup wizard" to start the configuration wizard or try "help" to see all commands available.
dbvrep> setup wizard 
This wizard configures Dbvisit Replicate to start a replication process.
The setup wizard creates configuration scripts, which need to be run after the wizard ends. No changes to the databases are made before that.
The progress is saved every time a list of databases, replications, etc. is shown. It will be re-read if wizard is restarted and the same DDC
name and script path is selected.
Run the wizard now? [yes] 
Accept end-user license agreement? (view/yes/no) [view] yes
Before starting the actual configuration, some basic information is needed. The DDC name and script path determines where all files created
by the wizard go (and where to reread them if wizard is rerun) and the license key determines which options are available for this
configuration.
(DDC_NAME) - Please enter a name for this replication (suggestion: use the name of the source database): [] d112f 
(LICENSE_KEY) - Please enter your license key (or just enter "(trial)"): [(trial)] 
(SETUP_SCRIPT_PATH) - Please enter a directory for location of configuration scripts on this machine: [/home/oracle/d112f]
Network configuration files were detected on this system in these locations:
/u01/app/oracle/product/11.1.0/db_1/network/admin
/u03/app/oragrid/product/11.2.0/grid/network/admin
/u01/app/oracle/product/11.2.0/xe/network/admin
/u03/app/oracle/product/11.2.0.3/dbhome_4/network/admin
(TNS_ADMIN) - Please enter TNS configuration directory for this machine: [/u01/app/oracle/product/11.1.0/db_1/network/admin]
Step 1 - Describe databases
========================================
The first step is to describe databases used in the replication. There are usually two of them (source and target); however, there can be
just one (when source and target is the same) or more than two (one-to-many or other complex configurations.)
Let's configure the database, describing it's type, connectivity, user names etc.
What type of database is this? (Oracle/MySQL/MSSQL): [Oracle] 
Please enter database TNS alias: [] d112f_dbvisit210 
Please enter SYSDBA user name: [SYS] 
Please enter password for this user: [change_on_install] ******
Please enter user with DBA role: [SYSTEM] 
Please enter password for this user: [manager] ******
Connecting to database d112f_dbvisit210 as SYSTEM to query list of tablespaces and to detect ASM (by looking whether any redo logs or
archived logs are stored in ASM).
Enter the Dbvisit Replicate owner and apply user (this user will be created by this script): [dbvrep] 
Please enter password for this user: [dbvpasswd]
Permanent tablespaces detected on the database: USERS.
Please enter default permanent tablespace for this user: [USERS]
Temporary tablespaces detected on the database: TEMP.
Please enter default temporary tablespace for this user: [TEMP]
Following databases are now configured:
1: Oracle d112f_dbvisit210, SYS/***, SYSTEM/***, dbvrep/***, USERS/TEMP, dbvrep/, ASM:NO, TZ: +00:00
Enter number of database to modify it, or "add", or "done": [add] 
Let's configure the database, describing it's type, connectivity, user names etc.
What type of database is this? (Oracle/MySQL/MSSQL): [Oracle] 
Please enter database TNS alias: [] d112f_dbvisit230 
Please enter SYSDBA user name: [SYS] 
Please enter password for this user: [change_on_install] ******
Please enter user with DBA role: [SYSTEM] 
Please enter password for this user: [manager] ******
Connecting to database d112f_dbvisit230 as SYSTEM to query list of tablespaces and to detect ASM (by looking whether any redo logs or
archived logs are stored in ASM).
Enter the Dbvisit Replicate owner and apply user (this user will be created by this script): [dbvrep] 
Please enter password for this user: [dbvpasswd]
Permanent tablespaces detected on the database: USERS.
Please enter default permanent tablespace for this user: [USERS]
Temporary tablespaces detected on the database: TEMP.
Please enter default temporary tablespace for this user: [TEMP]
Following databases are now configured:
1: Oracle d112f_dbvisit210, SYS/***, SYSTEM/***, dbvrep/***, USERS/TEMP, dbvrep/, ASM:NO, TZ: +00:00
2: Oracle d112f_dbvisit230, SYS/***, SYSTEM/***, dbvrep/***, USERS/TEMP, dbvrep/, ASM:NO, TZ: +00:00
Enter number of database to modify it, or "add", or "done": [done]
Step 2 - Replication pairs
========================================
The second step is to set source and targets for each replication pair. This is usually just choosing the first database as source and the
second one as target, but many more configurations are possible.
Let's configure the replication pair, selecting source and target.
Following databases are described:
1: d112f_dbvisit210 (Oracle) 
2: d112f_dbvisit230 (Oracle) 
Select source database: [1] 
Select target database: [2] 
Will be DDL replication enabled? (If YES, the script will grant more privileges to the Dbvisit Replicate users and enable database-wide supplemental logging): [yes] no 
Use fetcher to offload the mining to a different server? (yes/no) [no] 
Would you like to encrypt the data across the network (yes or no) [no]
Would you like to compress the data across the network (yes or no) [no]
How long do you want to set the network timeouts.
Recommended range between 60-300 seconds [60]
Lock and copy the data initially one-by-one or at a single SCN? (one-by-one/single-scn/ddl-only/resetlogs) [single-scn] resetlogs 
What data copy script to create? (dp_networklink/dp_exp/exp/ddl_file/ddl_run/none) [none]
Following replication pairs are now configured:
1: d112f_dbvisit210 (Oracle) ==> d112f_dbvisit230 (Oracle), DDL: NO, fetcher: no, process suffix: (no suffix), compression: no, encryption: no,
network timeout: 60, prepare type:resetlogs, data load: none
Enter number of replication pair to modify it, or "add", or "done": [done] add 
Let's configure the replication pair, selecting source and target.
Following databases are described:
1: d112f_dbvisit210 (Oracle) 
2: d112f_dbvisit230 (Oracle) 
Select source database: [1] 2 
Select target database: [2] 1 
Will be DDL replication enabled? (If YES, the script will grant more privileges to the Dbvisit Replicate users and enable database-wide supplemental logging): [yes] no 
Use fetcher to offload the mining to a different server? (yes/no) [no] 
Would you like to encrypt the data across the network (yes or no) [no]
Would you like to compress the data across the network (yes or no) [no]
How long do you want to set the network timeouts.
Recommended range between 60-300 seconds [60]
Lock and copy the data initially one-by-one or at a single SCN? (one-by-one/single-scn/ddl-only/resetlogs) [single-scn] resetlogs 
What data copy script to create? (dp_networklink/dp_exp/exp/ddl_file/ddl_run/none) [none]
Following replication pairs are now configured:
1: d112f_dbvisit210 (Oracle) ==> d112f_dbvisit230 (Oracle), DDL: NO, fetcher: no, process suffix: (no suffix), compression: no, encryption: no,
network timeout: 60, prepare type:resetlogs, data load: none
2: d112f_dbvisit230 (Oracle) ==> d112f_dbvisit210 (Oracle), DDL: NO, fetcher: no, process suffix: 1, compression: no, encryption: no,
network timeout: 60, prepare type: resetlogs, data load: none
Enter number of replication pair to modify it, or "add", or "done": [done]
Step 3 - Replicated tables
========================================
The third step is to choose the schemas and tables to be replicated. If the databases are reachable, the tables are checked for existence,
datatype support, etc., schemas are queried for tables. Note that all messages are merely hints/warnings and may be ignored if issues are
rectified before the scripts are actually executed.
Note the following assumptions are made in this wizard - which can be modified by editing the resulting script:
1. All replicated tables have a primary key defined.
2. All columns of the tables and all tables of the specified schemas are replicated, and if DDL support is enabled, whenever a new
column/table is added, this should be replicate as well.
3. If an apply conflict arises, the default option is to try again repeatedly, until a different option is given or the underlying issue is
resolved. 
4. If an apply conflict arises, no more data will be replicated until the issue is resolved or ignored.
You can also specify some advanced options:
1. Rename schemas or tables.
2. Specify filtering conditions.
3. (Tables only) Configure Change Data Capture; this does not maintain a copy of the source table, but logs all operations as separate
entries. This is useful for ETL or as an audit trail. This usually requires adding of new columns (timestamps, old/new values etc.) to the
target table. Dbvisit Replicate can create the target table with the additional columns during setup by selecting "ddl_run" in the data copy
section of Step 2.
Following tables are defined for replication pairs:
1: d112f_dbvisit210 (Oracle) ==> d112f_dbvisit230 (Oracle), DDL: NO, suffix: (no suffix), prepare: resetlogs
 No tables defined.
2: d112f_dbvisit230 (Oracle) ==> d112f_dbvisit210 (Oracle), DDL: NO, suffix: 1, prepare: resetlogs
 No tables defined.
Enter number of replication pair to modify it, or "done": [1]
Please enter list of all individual tables to be replicated. Enter schema name(s) only to replicate all tables in that schema. Use comma or
space to delimit the entries.
Enter the tables and schemas: [] scott.avi_objects 
Selected tables: SCOTT.AVI_OBJECTS
Add more tables or schemas? (YES/NO) [NO]
To replicate changes of PL/SQL objects in schema(s), please enter the schemas to be replicated. Note that specifying any entry will cause
additional privileges to be granted to dbvrep. Enter through a comma or space-delimited list.
Enter the list of schemas (PL/SQL): [] 
Specify rename name, filter condition, CDC/Audit/ETL for any of the specified tables (yes/no): [no]
Following tables are defined for replication pairs:
1: d112f_dbvisit210 (Oracle) ==> d112f_dbvisit230 (Oracle), DDL: NO, suffix: (no suffix), prepare: resetlogs
 SCOTT.AVI_OBJECTS
2: d112f_dbvisit230 (Oracle) ==> d112f_dbvisit210 (Oracle), DDL: NO, suffix: 1, prepare: resetlogs
 No tables defined.
Enter number of replication pair to modify it, or "done": [2]
Please enter list of all individual tables to be replicated. Enter schema name(s) only to replicate all tables in that schema. Use comma or
space to delimit the entries.
Enter the tables and schemas: [] scott.avi_objects 
Selected tables: SCOTT.AVI_OBJECTS
Add more tables or schemas? (YES/NO) [NO]
To replicate changes of PL/SQL objects in schema(s), please enter the schemas to be replicated. Note that specifying any entry will cause
additional privileges to be granted to dbvrep. Enter through a comma or space-delimited list.
Enter the list of schemas (PL/SQL): [] 
Specify rename name, filter condition, CDC/Audit/ETL for any of the specified tables (yes/no): [no]
Following tables are defined for replication pairs:
1: d112f_dbvisit210 (Oracle) ==> d112f_dbvisit230 (Oracle), DDL: NO, suffix: (no suffix), prepare: resetlogs
 SCOTT.AVI_OBJECTS
2: d112f_dbvisit230 (Oracle) ==> d112f_dbvisit210 (Oracle), DDL: NO, suffix: 1, prepare: resetlogs
 SCOTT.AVI_OBJECTS
Enter number of replication pair to modify it, or "done": [done]
Step 4 - Process configuration
========================================
The fourth step is to configure the replication processes for each replication. Although most options have reasonable defaults, manual input
is required.
Following processes are defined:
1: MINE on d112f_dbvisit210
 Not configured.
2: APPLY on d112f_dbvisit230
 Not configured.
3: MINE1 on d112f_dbvisit230
 Not configured.
4: APPLY1 on d112f_dbvisit210
 Not configured.
Enter number of process to modify it, or "done": [1] 
Fully qualified name of the server for the process (usually co-located with the database, unless mine is offloaded using fetcher): [dbvisit210.avisit.co.nz] 
Server type (Windows/Linux/Unix): [Linux] 
Enable email notifications about problems (yes/no)? [YES] no 
Enable SNMP traps/notifications about problems (yes/no)? [NO] 
Directory with DDC file and default where to create log files etc. (recommended: same as global setting, if possible)? [/home/oracle/d112f]
Following settings were pre-filled with defaults or your reloaded settings:
----------------------------------------
[MINE_REMOTE_INTERFACE]: Network remote interface: dbvisit210.avisit.co.nz:7901
[MINE_DATABASE]: Database TNS: d112f_dbvisit210 
[TNS_ADMIN]: tnsnames.ora path: /u01/app/oracle/product/11.1.0/db_1/network/admin 
[MINE_USER]: Dbvisit Replicate database username: dbvrep 
[MINE_PASSWORD]: Dbvisit Replicate database password: ********* 
[MINE_PLOG]: Filemask for generated plogs: /home/oracle/d112f/mine/%S.%E (%S is sequence, %T thread, %F original filename (stripped
extension), %P process type, %N process name, %E default extension)
[LOG_FILE]: General log file: /home/oracle/d112f/log/dbvrep_%N_%D.%E 
[LOG_FILE_TRACE]: Error traces: /home/oracle/d112f/log/trace/dbvrep_%N_%D_%I_%U.%E
Checking that these settings are valid...
Do you want change any of the settings? [no]
Following processes are defined:
1: MINE on d112f_dbvisit210
 Host: dbvisit210.avisit.co.nz, SMTP: NO, SNMP: NO
2: APPLY on d112f_dbvisit230
 Not configured.
3: MINE1 on d112f_dbvisit230
 Not configured.
4: APPLY1 on d112f_dbvisit210
 Not configured.
Enter number of process to modify it, or "done": [2] 
Fully qualified name of the server for the process (usually co-located with the database, unless mine is offloaded using fetcher): [dbvisit230.avisit.co.nz] 
Server type (Windows/Linux/Unix): [Linux] 
Enable email notifications about problems (yes/no)? [YES] no 
Enable SNMP traps/notifications about problems (yes/no)? [NO] 
Directory with DDC file and default where to create log files etc. (recommended: same as global setting, if possible)? [/home/oracle/d112f]
Following settings were pre-filled with defaults or your reloaded settings:
----------------------------------------
[APPLY_REMOTE_INTERFACE]: Network remote interface: dbvisit230.avisit.co.nz:7902
[APPLY_DATABASE]: Database TNS: d112f_dbvisit230 
[TNS_ADMIN]: tnsnames.ora path: /u01/app/oracle/product/11.1.0/db_1/network/admin 
[APPLY_USER]: Dbvisit Replicate database username: dbvrep 
[APPLY_PASSWORD]: Dbvisit Replicate database password: ********* 
[APPLY_STAGING_DIR]: Directory for received plogs: /home/oracle/d112f/apply 
[LOG_FILE]: General log file: /home/oracle/d112f/log/dbvrep_%N_%D.%E 
[LOG_FILE_TRACE]: Error traces: /home/oracle/d112f/log/trace/dbvrep_%N_%D_%I_%U.%E
Checking that these settings are valid...
Do you want change any of the settings? [no]
Following processes are defined:
1: MINE on d112f_dbvisit210
 Host: dbvisit210.avisit.co.nz, SMTP: NO, SNMP: NO
2: APPLY on d112f_dbvisit230
 Host: dbvisit230.avisit.co.nz, SMTP: NO, SNMP: NO
3: MINE1 on d112f_dbvisit230
 Not configured.
4: APPLY1 on d112f_dbvisit210
 Not configured.
Enter number of process to modify it, or "done": [3] 
Fully qualified name of the server for the process (usually co-located with the database, unless mine is offloaded using fetcher): [dbvisit230.avisit.co.nz] 
Server type (Windows/Linux/Unix): [Linux] 
Enable email notifications about problems (yes/no)? [YES] no 
Enable SNMP traps/notifications about problems (yes/no)? [NO] 
Directory with DDC file and default where to create log files etc. (recommended: same as global setting, if possible)? [/home/oracle/d112f]
Following settings were pre-filled with defaults or your reloaded settings:
----------------------------------------
[MINE_REMOTE_INTERFACE]: Network remote interface: dbvisit230.avisit.co.nz:7903
[MINE_DATABASE]: Database TNS: d112f_dbvisit230 
[TNS_ADMIN]: tnsnames.ora path: /u01/app/oracle/product/11.1.0/db_1/network/admin 
[MINE_USER]: Dbvisit Replicate database username: dbvrep 
[MINE_PASSWORD]: Dbvisit Replicate database password: ********* 
[MINE_PLOG]: Filemask for generated plogs: /home/oracle/d112f/mine1/%S.%E (%S is sequence, %T thread, %F original filename (stripped
extension), %P process type, %N process name, %E default extension)
[LOG_FILE]: General log file: /home/oracle/d112f/log/dbvrep_%N_%D.%E 
[LOG_FILE_TRACE]: Error traces: /home/oracle/d112f/log/trace/dbvrep_%N_%D_%I_%U.%E
Checking that these settings are valid...
Do you want change any of the settings? [no]
Following processes are defined:
1: MINE on d112f_dbvisit210
 Host: dbvisit210.avisit.co.nz, SMTP: NO, SNMP: NO
2: APPLY on d112f_dbvisit230
 Host: dbvisit230.avisit.co.nz, SMTP: NO, SNMP: NO
3: MINE1 on d112f_dbvisit230
 Host: dbvisit230.avisit.co.nz, SMTP: NO, SNMP: NO
4: APPLY1 on d112f_dbvisit210
 Not configured.
Enter number of process to modify it, or "done": [4] 
Fully qualified name of the server for the process (usually co-located with the database, unless mine is offloaded using fetcher): [dbvisit210.avisit.co.nz] 
Server type (Windows/Linux/Unix): [Linux] 
Enable email notifications about problems (yes/no)? [YES] no 
Enable SNMP traps/notifications about problems (yes/no)? [NO] 
Directory with DDC file and default where to create log files etc. (recommended: same as global setting, if possible)? [/home/oracle/d112f]
Following settings were pre-filled with defaults or your reloaded settings:
----------------------------------------
[APPLY_REMOTE_INTERFACE]: Network remote interface: dbvisit210.avisit.co.nz:7904
[APPLY_DATABASE]: Database TNS: d112f_dbvisit210 
[TNS_ADMIN]: tnsnames.ora path: /u01/app/oracle/product/11.1.0/db_1/network/admin 
[APPLY_USER]: Dbvisit Replicate database username: dbvrep 
[APPLY_PASSWORD]: Dbvisit Replicate database password: ********* 
[APPLY_STAGING_DIR]: Directory for received plogs: /home/oracle/d112f/apply1 
[LOG_FILE]: General log file: /home/oracle/d112f/log/dbvrep_%N_%D.%E 
[LOG_FILE_TRACE]: Error traces: /home/oracle/d112f/log/trace/dbvrep_%N_%D_%I_%U.%E
Checking that these settings are valid...
Do you want change any of the settings? [no]
Following processes are defined:
1: MINE on d112f_dbvisit210
 Host: dbvisit210.avisit.co.nz, SMTP: NO, SNMP: NO
2: APPLY on d112f_dbvisit230
 Host: dbvisit230.avisit.co.nz, SMTP: NO, SNMP: NO
3: MINE1 on d112f_dbvisit230
 Host: dbvisit230.avisit.co.nz, SMTP: NO, SNMP: NO
4: APPLY1 on d112f_dbvisit210
 Host: dbvisit210.avisit.co.nz, SMTP: NO, SNMP: NO
Enter number of process to modify it, or "done": [done]
Select database to hold the DDC settings:
1: d112f_dbvisit210
2: d112f_dbvisit230
Enter database number: [1] 
Created file /home/oracle/d112f/d112f-APPLY.ddc.
Created file /home/oracle/d112f/d112f-APPLY1.ddc.
Created file /home/oracle/d112f/d112f-MINE.ddc.
Created file /home/oracle/d112f/d112f-MINE1.ddc.
Created file /home/oracle/d112f/d112f-setup.dbvrep.
Created file /home/oracle/d112f/d112f-dbsetup_d112f_dbvisit210.sql.
Created file /home/oracle/d112f/d112f-dbsetup_d112f_dbvisit230.sql.
Created file /home/oracle/d112f/d112f-grants_d112f_dbvisit210.sql.
Created file /home/oracle/d112f/d112f-grants_d112f_dbvisit230.sql.
Created file /home/oracle/d112f/d112f-onetime.ddc.
Created file /home/oracle/d112f/start-console.sh.
Created file /home/oracle/d112f/d112f-run-dbvisit210.avisit.co.nz.sh.
Created file /home/oracle/d112f/d112f-run-dbvisit230.avisit.co.nz.sh.
Created file /home/oracle/d112f/Nextsteps.txt.
Created file /home/oracle/d112f/d112f-all.sh.
============================================================================================================================================
Dbvisit Replicate wizard completed
Script /home/oracle/d112f/d112f-all.sh created. This runs all the above created scripts. Please exit out of dbvrep, review and run script as
current user to setup and start Dbvisit Replicate.
============================================================================================================================================
Optionally, the script can be invoked now by this wizard.
Run this script now? (yes/no) [NO]
dbvrep> exit

 

4. Change directory into the Replication directory /home/oracle/d112f/

 

5. On the target database (activated standby database) obtain the resetlogs_change#:

SQL> select resetlogs_change# from v$database;
RESETLOGS_CHANGE#
-----------------
10892654

 

6. Edit the setup script vi d112f-setup.dbvrep and change "SET APPLY1.INSTANTIATE_SCN RESETLOGS" to "SET APPLY1.INSTANTIATE_SCN 10892654"

 

7. Run *all.sh script

$ ./d112f-all.sh
Setting up Dbvisit Replicate configuration
Configure database d112f_dbvisit210...
Configure database d112f_dbvisit230...
Object grants for database d112f_dbvisit210...
Object grants for database d112f_dbvisit230...
Setting up the configuration
Initializing......done
WARN-1850: No DDC DB available, dictionary table does not exist.
DDC loaded from database (0 variables).
Dbvisit Replicate version 2.x.x.x
Copyright (C) Dbvisit Software Limited. All rights reserved.
DDC file /home/oracle/d112f/d112f-onetime.ddc loaded.
MINE: Cannot determine Dbvisit Replicate dictionary version. (no dictionary exists)
APPLY: Cannot determine Dbvisit Replicate dictionary version. (no dictionary exists)
dbvrep> set ON_WARNING SKIP
Variable ON_WARNING set to SKIP for process *.
dbvrep> set ON_ERROR EXIT
Variable ON_ERROR set to EXIT for process *.
dbvrep> ENGINE SETUP MINE DROP DICTIONARY
0 dictionary objects dropped.
dbvrep> ENGINE SETUP MINE CREATE DICTIONARY
dbvrep> ENGINE SETUP MINE LOAD DICTIONARY
Supplemental logging on database set.
Loading dictionary table DBRSCOL$
Loading dictionary table DBRSOBJ$
Loading dictionary table DBRSTAB$
Loading dictionary table DBRSUSER$
Loading dictionary table DBRSV_$DATABASE
dbvrep> ENGINE SETUP APPLY DROP DICTIONARY
0 dictionary objects dropped.
dbvrep> ENGINE SETUP APPLY CREATE DICTIONARY
dbvrep> ENGINE SETUP APPLY LOAD DICTIONARY
dbvrep> ENGINE PREPARE_DP SETUP CLEAR
dbvrep> ENGINE SETUP PAIR MINE AND APPLY
ID of mine proces is 8C6E0D00-DBC5-11E1-8FF4-61D68DA50EF3. If not using DDC in database, set MINE_UNIQUE_ID to this value.
1 applier SCN set.
dbvrep> 
dbvrep> #set to v$database.resetlogs or change manually to any fixed SCN
dbvrep> SET APPLY.INSTANTIATE_SCN RESETLOGS
Variable INSTANTIATE_SCN set to RESETLOGS for process APPLY.
dbvrep> ENGINE SUPPLEMENTAL LOGGING TABLE SCOTT.AVI_OBJECTS ENABLE PRIMARY KEY
dbvrep> ENGINE SWITCH_REDOLOG
dbvrep> 
dbvrep> #prepare the tables (we use OFFLINE as neither MINE not APPLY is running; with OFFLINE we won't wait on network timeout)
dbvrep> PREPARE OFFLINE TABLE SCOTT.AVI_OBJECTS NODDL
Requested SCN is before the dictionary SCN; extending dictionary validity back to SCN 10892654. This expects that no DDL changes were done to
the replicated tables since then.
Table SCOTT.AVI_OBJECTS instantiated at SCN 10892654
1 applier SCN set.
WARN-9009: Setting apply SCN further back to 10892654.
dbvrep> ENGINE SWITCH_REDOLOG
dbvrep> #prepare script for instantiation
dbvrep> ENGINE PREPARE_DP WRITE DP_NETWORKLINK DIRECTORY DATA_PUMP_DIR FILE /home/oracle/d112f/APPLY.sh DBLINK d112f_dbvisit210 USERID
SYSTEM/oracle@d112f_dbvisit230
Created Data Pump script /home/oracle/d112f/APPLY.sh, using network import.
dbvrep> 
dbvrep> # Configuring non-default processes
dbvrep> choose process MINE1
Process type MINE set to: MINE1.
dbvrep> choose process APPLY1
Process type APPLY set to: APPLY1.
dbvrep> ENGINE SETUP MINE LOAD DICTIONARY
Supplemental logging on database set.
Loading dictionary table DBRSCOL$
Loading dictionary table DBRSOBJ$
Loading dictionary table DBRSTAB$
Loading dictionary table DBRSUSER$
Loading dictionary table DBRSV_$DATABASE
dbvrep> ENGINE SETUP APPLY LOAD DICTIONARY
dbvrep> ENGINE PREPARE_DP SETUP CLEAR
dbvrep> ENGINE SETUP PAIR MINE AND APPLY
ID of mine proces is 9BCFA286-DBC5-11E1-8FF4-61D68DA50EF3. If not using DDC in database, set MINE_UNIQUE_ID to this value.
1 applier SCN set.
dbvrep> 
dbvrep> #set to v$database.resetlogs or change manually to any fixed SCN
dbvrep> SET APPLY1.INSTANTIATE_SCN 10892654 
Variable INSTANTIATE_SCN set to 10892654 for process APPLY1.
dbvrep> ENGINE SUPPLEMENTAL LOGGING TABLE SCOTT.AVI_OBJECTS ENABLE PRIMARY KEY
dbvrep> ENGINE SWITCH_REDOLOG
dbvrep> 
dbvrep> #prepare the tables (we use OFFLINE as neither MINE not APPLY is running; with OFFLINE we won't wait on network timeout)
dbvrep> PREPARE OFFLINE TABLE SCOTT.AVI_OBJECTS NODDL
Table SCOTT.AVI_OBJECTS instantiated at SCN 10892654
1 applier SCN set.
WARN-9009: Setting apply SCN further back to 10892654.
dbvrep> ENGINE SWITCH_REDOLOG
dbvrep> #prepare script for instantiation
dbvrep> ENGINE PREPARE_DP WRITE DP_NETWORKLINK DIRECTORY DATA_PUMP_DIR FILE /home/oracle/d112f/APPLY1.sh DBLINK d112f_dbvisit230 USERID
SYSTEM/oracle@d112f_dbvisit210
Created Data Pump script /home/oracle/d112f/APPLY1.sh, using network import.
dbvrep> create ddcdb from ddcfile
DDC loaded into database (224 variables).
dbvrep> set ON_WARNING SKIP
Variable ON_WARNING set to SKIP for process *.
dbvrep> set ON_ERROR SKIP
Variable ON_ERROR set to SKIP for process *.
OK-0: Completed successfully.
These steps are required after the d112f-all.sh script runs:
1) Create the necessary directory(ies) on the servers:
dbvisit230.avisit.co.nz: /home/oracle/d112f
2) Copy the DDC files to the server(s) where the processes will run:
dbvisit230.avisit.co.nz: /home/oracle/d112f/d112f-APPLY.ddc
dbvisit210.avisit.co.nz: /home/oracle/d112f/d112f-APPLY1.ddc
dbvisit210.avisit.co.nz: /home/oracle/d112f/d112f-MINE.ddc
dbvisit230.avisit.co.nz: /home/oracle/d112f/d112f-MINE1.ddc
3) Review that path to dbvrep executable is correct in the run scripts:
/home/oracle/d112f/d112f-run-dbvisit210.avisit.co.nz.sh
/home/oracle/d112f/d112f-run-dbvisit230.avisit.co.nz.sh
4) Copy the run script to the server(s) where the processes will run:
/home/oracle/d112f/d112f-run-dbvisit210.avisit.co.nz.sh
/home/oracle/d112f/d112f-run-dbvisit230.avisit.co.nz.sh
5) Ensure firewall is open for listen interfaces 0.0.0.0:7902, 0.0.0.0:7904, 0.0.0.0:7901, 0.0.0.0:7903 used by the processes.
6) Make sure the data on apply are in sync as of time when setup was run.
Scripts for Data Pump/export/DDL were created as requested:
/home/oracle/d112f/APPLY.sh
/home/oracle/d112f/APPLY1.sh
Create referenced database links (if any) before running the scripts.
7) Start the replication processes on all servers:
/home/oracle/d112f/d112f-run-dbvisit210.avisit.co.nz.sh
/home/oracle/d112f/d112f-run-dbvisit230.avisit.co.nz.sh
8) Start the console to monitor the progress:
chmod 0750 /home/oracle/d112f/start-console.sh
/home/oracle/d112f/start-console.sh
The above list is stored in /home/oracle/d112f/Nextsteps.txt.

 

8. Copy the DDC files and run scripts as per above and start the replication.

Â