Flashback through role transition for physical standby
در این مطلب به تشریح مبحث عدم تغییر نقش انتصابی به پایگاه داده در هنگام وقوع Flashback در Physical Standby به وسیله یک Switchover میپردازیم.
مرور کلی:
– توجه به #SCN کنونی (پیش از Switchover)
– بررسی پیکربندی جاری
pc00sby1 – Primary database
pc00prmy – Physical standby database-
– اجرای Switchover
– بررسی پیکربندی پس از انجام Switchover
pc00prmy – Primary database
pc00sby1 – Physical standby database
– Flashback نمودن پایگاه داده Primary جدید (pc00prmy) به #SCN پیش از انجام Switchover
– حصول اطمینان از آنکه علت خطای موجود در پیکربندی و Standby جاری (pc00sby1) منشعب از پایگاه داده Primary میباشد، همانطور که #SCN پایگاه داده Standby جلوتر از پایگاه داده Primary است.
– به منظور بازگرداندن پایگاه داده Standby به پیکربندی، Flashback نمودن #SCN به پیش از Switchover
– بررسی حفظ و بازگشت نقش جاری در پیکربندی هر دو پایگاه داده پس از Flashback
pc00prmy – Primary database
pc00sby1 – Physical standby database
پیادهسازی:
بررسی پیکربندی جاری
pc00sby1 – Primary database
pc00prmy – Physical standby database
DGMGRL> show configuration;
Configuration – dgconfig1
Protection Mode: MaxPerformance
Databases:
pc00sby1 – Primary database
pc00prmy – Physical standby database
Fast-Start Failover: DISABLED
Configuration Status:
SUCCESS
یافتن #SCN جاری (پیش از Switchover)
SQL> select current_scn from v$database;
CURRENT_SCN
———–
۱۱۰۰۳۵۴
اجرای Switchover
DGMGRL> switchover to pc00prmy;
Performing switchover NOW, please wait…
New primary database “pc00prmy” is opening…
Operation requires shutdown of instance “pc00sby1” on database “pc00sby1”
Shutting down instance “pc00sby1″…
ORA-01109: database not open
Database dismounted.
ORACLE instance shut down.
Operation requires startup of instance “pc00sby1” on database “pc00sby1”
Starting instance “pc00sby1″…
ORACLE instance started.
Database mounted.
Database opened.
Switchover succeeded, new primary is “pc00prmy”
بررسی صحت وقوع Switchover
pc00prmy – Primary database
pc00sby1 – Physical standby database
DGMGRL> show configuration;
Configuration – dgconfig1
Protection Mode: MaxPerformance
Databases:
pc00prmy – Primary database
pc00sby1 – Physical standby database
Fast-Start Failover: DISABLED
Configuration Status:
SUCCESS
PC00SBY1>select database_role from v$database;
DATABASE_ROLE
—————-
PHYSICAL STANDBY
PC00PRMY>select database_role from v$database;
DATABASE_ROLE
—————-
PRIMARY
Flashback نمودن پایگاه داده Primary جدید (pc00prmy) به #SCN پیش از Switchover (1100354)
PC00PRMY>shu immediate;
startup mount;
flashback database to scn 1100354;
alter database open resetlogs;
alter system switch logfile;
حصول اطمینان از آنکه علت خطای موجود در پیکربندی و Standby جاری (pc00sby1) منشعب از پایگاه داده Primary میباشد
DGMGRL> show configuration;
Configuration – dgconfig1
Protection Mode: MaxPerformance
Databases:
pc00prmy – Primary database
pc00sby1 – Physical standby database
Error: ORA-16810: multiple errors or warnings detected for the database
Fast-Start Failover: DISABLED
Configuration Status:
ERROR
DGMGRL> show database pc00sby1;
Database – pc00sby1
Enterprise Manager Name: pc00sby1.us.oracle.com
Role: PHYSICAL STANDBY
Intended State: APPLY-ON
Transport Lag: (unknown)
Apply Lag: 0 seconds
Real Time Query: OFF
Instance(s):
pc00sby1
Database Error(s):
ORA-16700: the standby database has diverged from the primary database
ORA-16766: Redo Apply is stopped
Database Status:
ERROR
علت انشعاب خطا جلوتر بودن #SCN پایگاه داده Standby (1101143) نسبت به پایگاه داده Primary (1100582) است.
PC00PRMY>select current_scn from v$database;
CURRENT_SCN
———–
۱۱۰۰۵۸۲
PC00SBY1>select current_scn from v$database;
CURRENT_SCN
———–
۱۱۰۱۱۴۳
نیاز به Flashback نمودن پایگاه داده Standby به #SCN ماقبل پایگاه داده Primary به منظور بازگرداندن آن به پیکربندی است.
Flashback پایگاه داده Standby به #SCN ماقبل Switchover (1100354) به منظور حفظ نقش انتصابی به پایگاه داده پس از وقوع آن.
PC00SBY1>shu immediate;
startup mount;
flashback database to scn 1100354;
alter database open;
PC00SBY1>select current_scn from v$database;
CURRENT_SCN
———–
۱۱۰۰۳۵۴
Switch Log در پایگاه داده Primary
PC00PRMY>alter system switch logfile;
System altered.
بررسی پیکربندی
حفظ نقش انتصابی جاری هر دو پایگاه داده
pc00prmy – Primary database
pc00sby1 – Physical standby database
DGMGRL> show configuration;
Configuration – dgconfig1
Protection Mode: MaxPerformance
Databases:
pc00prmy – Primary database
pc00sby1 – Physical standby database
Fast-Start Failover: DISABLED
Configuration Status:
SUCCESS