Project

General

Profile

Database Mirroring (DB2) on remote site » History » Revision 9

Revision 8 (chin-yeh, 03/22/2012 09:07 AM) → Revision 9/23 (chin-yeh, 03/22/2012 09:09 AM)

{{toc}} 

 h1. Database Mirroring on remote site 

 h2. Introduction 

 To mirror production database(s) to remote site, there are a number of approaches: 
 # Use <code>(full)</code> database backup 
 # Use <code>(full + incremental)</code> database backup 
 # Use <code>(full + delta)</code> database backup 
 # Use <code>(full + incremental + delta)</code> database backup - _not recommended because it is too complex_ 
 # Use <code>(full database backup + transaction logs)</code> 

 > the approach 1-4 are described in "Using DB2 incremental backup":http://www.ibm.com/developerworks/data/library/techarticle/dm-0910db2incrementalbackup/ 

 The following sections will describe how the last approach actually works. Before that, let's do a compare: 

 !database_mirroring_approach.png! 

 h2. Full Database Backup + Transaction Logs 

 Below diagram describes how this approach works: 

 !full_transaction_logs_approach.png! 

 _Sample steps:_ 
 # Like any other approaches, you must perform a full database backup _(either offline or online)_ 
 ** e.g.: 
 <pre>$ db2 backup db prod_db online</pre> 
 # Use the <code>rsync</code> command to do an one way incremental sync from remote (production) site to standby site. 
 ** e.g.: 
 <pre>$ rsync -var --delete db2inst1@db-prod:/home/db2inst1/db2inst1/NODE0000/SQL00001/SQLOGDIR/ /home/db2inst1/db2inst1/NODE0000/SQL00001/SQLOGDIR</pre> 
 # Execute the <code>rollfoward</code> on the standby database: (*do not* include the *complete* option) 
 ** e.g.: 
 <pre>$ db2 rollforward db prod_db to end of logs</pre> 
 # If want to bring up the standby database, just execute this command (_change the database alias_): 
 <pre>$ db2 rollforward db prod_db complete</pre> 

 The biggest advantage main selling points of this approach is there's little or no need to revise current backup strategies, however, the mirror database cannot be used until the <code>rollforward</code> process is terminated.  

 

 h2. Test Tools