Loss of Control Files
نشر بواسطة : Obay Salah , November 19, 2024
في هذا السيناريو تخيل أنك فقدت جميع ﺍلControl Files، بالطبع لا تعمل قاعدة البيانات بدون ﺍلControl File، فلو فقدت أحد ﺍلControl File، لكان الأمر سهلاً، نقوم بعمل نسخة من أحد ﺍلControl Files الموجودة ونضعها مكان الملف المفقود.
لكن هنا فقدنا جميع ﺍلControl Files، بالطبع ستتوقف قاعدة البيانات عن العمل وإذا لم تتوقف فيجب إيقافها فورًا (Shut Abort) حتى
يتم عمل إجراء سريع لحفظ قاعدة البيانات.
في مثل هذا السيناريو هناك خيارين للإنقاذ:-
الخيار الأول:
نقوم بإنشاء Control file جديد باستخدام الكود Create Controlfile، وبمساعدة Trace Control File إذا كان موجودًا، ومن الأفضل لمدير قاعدة البيانات
أن يقوم بعمل Backup Trace To Controlfile كلما قام بتغيير بنية قاعدة البيانات حتى يتمكن من الاستفادة من ملف Trace في إنشاء ﺍلControl File لاحقًا
في حالة فقده لجميع ملفات Control Files، ولكن حتى لو لم يقم مدير قاعدة البيانات بذلك، فيمكنه إنشاء ﺍلControl File من خلال
كتابة الكود يدويًا وفقًا لبنية قاعدة البيانات.
بشكل عام، يمكن لمدير قاعدة البيانات عمل Backup Controlfile To Trace.
ALTER DATABASE BACKUP CONTROLFILE TO TRACE;
ينتج عن هذا الإجراء Trace File ، وهو ملف نصي يحتوي على الكود لإنشاء ﺍلControl File الذي يمكن استخدامه لاحقًا لإنشاء ﺍلControl File عندما نحتاج إليه.
يقع هذا الملف في المسار المحدد في المتغير USER_DUMP_DEST.
فيما يلي الخطوات لإنشاء Control File:
1- قم بتشغيل قاعدة البيانات في وضع NOMOUNT.
STARTUP NOMOUNT;
2- نقوم بكتابة أو تحضير الكود لإنشاء ﺍلControl File من ملف ﺍلTrace إن وجد أو كتابته يدويا وهذا مثال لملف يحتوي على الكود لإنشاء ﺍلControl File قمت بنسخه من ﺍلTrace File وحفظه في ملف اسمه CONT.SQL
3- نقوم بتنفيذ الكود أعلاه كما في الشكل ولكن يجب تنفيذ الكود ونحن في وضع NOMOUNT.
@C:\CONT.SQL
4- ثم نقوم بفتح قاعدة البيانات في وضع RESETLOGS.
ALTER DATABASE OPEN RESETLOGS;
الخيار الثاني:-
هنا نقوم بإستعادة ﺍلFile Control من النسخة الإحتياطية.
1- نقوم بعمل Restore ﺍلFile Control من النسخة الإحتياطية.
2- ثم نقوم بفتح قاعدة البيانات في وضع MOUNT
STARTUP MOUNT
3- ثم نقوم بعملية Recovery.
RECOVER DATABASE USING BACKUP CONTROLFILE UNTIL CANCCEL;
لاحظ أنه بعد بدء عملية الاسترداد، قد نحتاج إلى تحديد ﺍلRedolog Files لإكمال عملية الاسترداد أو القيام بذلك تلقائيًا عن طريق كتابة خيار AUTO.
هناك خيار آخر وهو CANCEL لإنهاء عملية الاسترداد، ولكن إذا كتبت Redolog File، نكرر الخطوة مرة أخرى بتحديد ﺍلRedolog Files الأخرى.
[Must be current Redolog file , else repeat this steps with other Redolog groups member]
4- أخيرًا، نفتح قاعدة البيانات في وضع RESETLOGS.
ALTER DATABASE OPEN RESETLOGS;
Comments
لايوجد تعليق حتى الان