使用例7: ソースPDBからターゲットPDBへのスイッチオーバー

スイッチオーバーにより、指定したPDBの間でソース・ロールとターゲット・ロールが交換されます。これは通常、計画的なロール遷移です。また、両方のPDBがオンラインでありアクセス可能であるため、データ損失はありません。スイッチオーバーは、ロード・バランシングや、計画的なメンテナンス操作に役立ちます。この例のDG PDB構成では、bostonコンテナ・データベースでbos_sales PDBに対するPDBレベルのスタンバイREDOログの追加を容易にするために、スイッチオーバーを使用しています。

PDBレベルのSRLを現在のソースPDB bos_salesに追加するには、まずこのPDBをターゲット・ロールにする必要があります。これを行うには、ターゲットPDB nyc_salesへのスイッチオーバーを実行してから、PDBレベルのSRLを新しいスタンバイPDB bos_salesに追加します。
DGMGRL> SWITCHOVER TO PLUGGABLE DATABASE nyc_sales AT NEWYORK; 
Verifying conditions for Switchover... 
  Source pluggable database is 'BOS_SALES' at database 'boston' 
Performing switchover NOW, please wait... 
  Closing pluggable database 'BOS_SALES'... 
  Switching 'BOS_SALES' to standby role... 
  Waiting for 'NYC_SALES' to recover all redo data... 
  Stopping recovery at 'NYC_SALES'... 
  Converting 'NYC_SALES' to primary role... 
  Opening new primary 'NYC_SALES'... 
  Waiting for redo data from new primary 'NYC_SALES'... 
  Starting recovery at new standby 'BOS_SALES'... 
Switchover succeeded, new primary is "NYC_SALES" 

DGMGRL> SHOW CONFIGURATION; 
Configuration - Boston 
  Protection Mode: MaxPerformance   
  Members: 
  boston - Primary database 
    newyork - Primary database in NewYork configuration 
Data Guard for PDB: Enabled in TARGET role 
Configuration Status: 
SUCCESS (status updated 29 seconds ago)
PDB bos_salesのスタンバイREDOログを作成するには、まずREDO Applyを停止します:
DGMGRL> EDIT PLUGGABLE DATABASE bos_sales AT boston SET STATE='APPLY-OFF'; 
Succeeded. 
次に、新しいターゲットCDB bostonにSYSDBAとして接続し、次のSQLコマンドを発行してPDBレベルのSRLを追加します:
SQL> ALTER SESSION SET CONTAINER=bos_sales; 
Session altered. 

SQL> ALTER DATABASE ADD STANDBY LOGFILE thread 1 
  2 group 4 ('$ORACLE_BASE/fast_recovery_area/BOSTON/onlinelog/standby_redo04.log') size 200M, 
  3 group 5 ('$ORACLE_BASE/fast_recovery_area/BOSTON/onlinelog/standby_redo05.log') size 200M, 
  4 group 6 ('$ORACLE_BASE/fast_recovery_area/BOSTON/onlinelog/standby_redo06.log') size 200M,   
  5 group 7 ('$ORACLE_BASE/fast_recovery_area/BOSTON/onlinelog/standby_redo07.log') size 200M; 
Database altered.
VALIDATE PLUGGABLE DATABASEコマンドを使用して、PDBレベルのスタンバイREDOログ・ファイルが正常に作成されていることを確認します:
DGMGRL> VALIDATE PLUGGABLE DATABASE bos_sales AT boston; 
   Ready for Switchover:      NO    
   Data Guard Role:           Physical Standby 
   Apply State:               Not Running 
   Standby Redo Log Files:    4 
   Source:                    NYC_SALES (con_id 3) at newyork
最後に、DGMGRLを使用してREDO Applyを再起動し、DG PDB構成がSUCCESS状態になっておりソースPDBより遅れていないことを確認します。
DGMGRL> EDIT PLUGGABLE DATABASE bos_sales AT boston SET STATE='APPLY-ON'; 
Succeeded. 

DGMGRL> SHOW CONFIGURATION; 
Configuration - Boston 
  Protection Mode: MaxPerformance   
  Members: 
  boston - Primary database   
    newyork - Primary database in NewYork configuration 
Data Guard for PDB: Enabled in TARGET role 
Configuration Status: SUCCESS (status updated 58 seconds ago) 

DGMGRL> SHOW PLUGGABLE DATABASE bos_sales AT boston; 
Pluggable database - BOS_SALES at boston 
  Data Guard Role: Physical Standby   
  Con_ID: 3 
  Source: con_id 3 at newyork 
  Transport Lag: (unknown) 
  Apply Lag: (unknown) 
  Intended State: APPLY-ON 
  Apply State: Running  
  Apply Instance: boston 
  Average Apply Rate: (unknown) 
  Real Time Query: OFF 
Pluggable Database Status: 
SUCCESS
ターゲットPDB bos_salesの転送ラグと適用ラグの状態が(unknown)であることに注目してください。ソース・データベースnewyorkにSYSDBAとして接続し、現在のログ・ファイルを数回アーカイブして、新しく作成されたスタンバイREDOログ・ファイルへのREDO転送を開始します:
SQL> ALTER SYSTEM ARCHIVE LOG CURRENT; 
System altered. 

SQL> ALTER SYSTEM ARCHIVE LOG CURRENT; 
System altered.
REDOがスタンバイREDOログ・ファイルに送信され、スタンバイREDOログ・ファイルから適用されるようになると、ターゲットPDBがソースPDBと同期されます。
 DGMGRL> SHOW PLUGGABLE DATABASE bos_sales AT boston; 
Pluggable database - BOS_SALES at boston 
   Data Guard Role:        Physical Standby 
   Con_ID:                 3 
   Source:                 con_id 3 at newyork 
   Transport Lag:          0 seconds (computed 2 seconds ago) 
   Apply Lag:              0 seconds (computed 2 seconds ago) 
   Intended State:         APPLY-ON 
   Apply State:            Running 
   Apply Instance:         boston 
   Average Apply Rate:     27 KByte/s 
   Real Time Query:        OFF 
Pluggable Database Status: 
SUCCESS