تجاوز الفشل هو حدث غير مخطط يفترض فقدان قاعدة البيانات الأساسية. يتم تحويل قاعدة البيانات البديلة إلى قاعدة بيانات أساسية فور تطبيق كل سجلات redo الأساسية المتاحة. يمكنك استخدام الارتداد ووسيط Oracle Data Guard لإعادة قاعدة البيانات الأساسية الأصلية كبديل فعلي.
بعد انتهاء الفشل، يجب إعادة قاعدة البيانات الأساسية الأصلية كبديل فعلي. تكون إعادة قاعدة البيانات الأساسية الأصلية أسهل عند تمكين قاعدة بيانات الارتداد ووسيط Oracle Data Guard.
يتم من خلال الخطوة 3 في هذا المثال إغلاق قاعدة البيانات المحلية الأساسية لتقييد الانقطاع المؤقت غير المخطط. يستخدم هذا المثال Oracle Data Guard Broker لإعادة قاعدة البيانات الأساسية.
- قاعدة البيانات المحلية:
db1
- طبعة قاعدة البيانات البديلة الفعلية في السحابة:
db1_phx3g7
- في Oracle Exadata Database Machine المحلي الأساسي، قم بتسجيل الدخول كـ
sysdba
- عرض تكوين قاعدة البيانات المحلية.
DGMGRL> show configuration;
يجب أن تبدو المخرجات مشابهة لما يلي:
Configuration - onpremexadr
Protection Mode: MaxPerformance
Members:
db1 - Primary database
db1_phx3g7 - Physical standby database
Warning: ORA-16809: multiple warnings detected for the member
Fast-Start Failover: Disabled
Configuration Status:
WARNING (status updated 36 seconds ago)
- اتصل بطبعة قاعدة البيانات المحلية الأساسية وقم بالإغلاق لتقييد انقطاع مؤقت غير مخطط.
bash-4.2$ sqlplus / as sysdba
SQL> shutdown abort;
يجب أن تبدو المخرجات مشابهة لما يلي:
ORACLE instance shut down.
- في Oracle Database Exadata Cloud Service، قم بعرض تكوين طبعة قاعدة البيانات.
DGMGRL> show configuration;
يجب أن تبدو المخرجات مشابهة لما يلي:
Configuration - onpremexadr
Protection Mode: MaxPerformance
Members:
db1 - Primary database
Error: ORA-12514: TNS:listener does not currently know of service requested in
connect descriptor
db1_phx3g7 - Physical standby database
Fast-Start Failover: Disabled
Configuration Status:
ERROR (status updated 0 seconds ago)
- بدء الانتقال عقب الفشل لطبعة Oracle Database Exadata Cloud Service.
DGMGRL> > failover to db1_phx3g7;
يجب أن تبدو المخرجات مشابهة لما يلي:
Performing failover NOW, please wait...
Failover succeeded, new primary is "db1_phx3g7"
- عرض تكوين طبعة قاعدة البيانات في Oracle Database Exadata Cloud Service.
DGMGRL> show configuration;
يجب أن تبدو المخرجات مشابهة لما يلي:
Configuration - onpremexadr
Protection Mode: MaxPerformance
Members:
db1_phx3g7 - Primary database
Warning: ORA-16809: multiple warnings detected for the member
db1 - Physical standby database (disabled)
ORA-16661: the standby database needs to be reinstated
Fast-Start Failover: Disabled
Configuration Status:
WARNING (status updated 28 seconds ago)
- في Oracle Exadata Database Machine (db1)، الذي أصبح الآن بديلاً، ابدأ الطبعة في نقطة توصيل واحدة.
$srvctl start instance -db db1 -instance db11
- استخدم الأمر
reinstate database لجعل قاعدة البيانات البديلة هي قاعدة البيانات الأساسية المعطلة. يجعل reinstate قاعدة البيانات الأساسية القديمة المعطلة قاعدة البيانات البديلة، مما يسمح لها باستلام بيانات redo من قاعدة البيانات الأساسية الجديدة (قاعدة البيانات البديلة النشطة).
DGMGRL> reinstate database db1;
يجب أن تبدو المخرجات مشابهة لما يلي:
Reinstating database
"db1", please wait...Reinstatement of database "db1" succeeded
- عرض تكوين طبعة قاعدة البيانات المحلية.
DGMGRL> show configuration;
يجب أن تبدو المخرجات مشابهة لما يلي:
Configuration - onpremexadr
Protection Mode: MaxPerformance
Members:
db1_phx3g7 - Primary database
db1 - Physical standby database
Fast-Start Failover: Disabled
Configuration Status:
SUCCESS (status updated 14 seconds ago)
- قم بالتبديل إلى Oracle Exadata Database Machine المحلي عند الحاجة.