كيفية استرداد بيانات SQL Server بعد عمليات التعديل غير المقصودة دون وجود نسخة احتياطية

يا الهي! لقد قمت بتنفيذ جملة تعديل على البيانات دون استخدام جملة الشرط WHERE معها؟ وقمت باستبدال كمية كبيرة من السجلات ببيانات خاطئة. كيف يمكنك استعادة البيانات الصحيحة ثانية؟

إذا قمت مسبقاً بإنشاء نسخة احتياطية من قاعدة البيانات والتي تحتوي على البيانات الأصلية ، عندها يمكنك استعادة البيانات ثانية. فالحلول الشائعة هي:

  • استعادة النسخة الإحتياطية واستخدامها بدلاً من قاعدة البيانات الأصلية
  • في بعض الحالات، تكون هناك تعديلات أخرى حدثت على قاعدة البيانات بعد جملة التعديل ، أو لا يُسمح لك أن تجعل قاعدة البيانات غير متصلة:
    1. قم باستعادة النسخة الإحتياطية لقاعدة البيانات على خادم إختبار.
    2. استخدم معالج تصدير البيانات في SQL Server Management Studio لتصدير البيانات.
    3. قم باستعادة البيانات التي قمت بتصديرها من النسخة الإحتياطية إلى قاعدة البيانات الأصلية.

لكن اذا لم يكن لديك نسخة احتياطية كاملة لقاعدة البيانات ، فإنه لازال بإمكانك التراجع عن هذه التعديلات باستخدام المعلومات المخزنة في سجل الإجراءات الفعّالة في قاعدة البيانات.

يقوم سجل الإجراءات بتخزين معلومات عن الإجراءات التي حدثت في قاعدة البيانات.وإذا لم يتم تقليصها أو محوها، فبإمكانك استخدام تطبيق ApexSQL Log لاسترجاعها.

إنّ ApexSQL Log هي أداة باستطاعتها استخراج البيانات من سجل الإجراءات في قاعدة البيانات والتراجع عن عمليات التعديل غير المقصودة. لذا، بدلاً من استعادة كل البيانات في الجدول الذي تم تعديله بالخطأ، بإمكانك التراجع عن جملة التعديل التي قمت بها ومن ثم تعديل البيانات التي تحقق شروطاً معينة.

لاستعادة البيانات من عملية تعديل غير مقصودة باستخدام برنامج ApexSQL Log:

  1. ابدأ برنامج ApexSQL Log

  2. اشبك على قاعدة البيانات

  3. استخدم قسم نطاق الوقت في خطوة خيارات إعداد التصفية لتضيق نطاق الإجراءات التي يتم استرجاعها حسب الوقت الذي نفذت فيه جملة التعديل./p>

  4. اختر Update row في خطوة خيارات إعداد التصفية ، من خلال تبويب العمليات.

  5. اختر الجدول أو الجداول التي تعدلت فيها البيانات من خلال خطوة خيارات إعداد التصفية ، تبويب الجداول.

  6. استخدم تصفية المستخدمين والبرامج إن أمكن ، لتضيق نطاق النتائج المستردة.
  7. انقر Open
  8. لإنشاء برنامج نصي للتراجع:

    1. انقر Create undo script من خلال التبويب الرئيسي Home ، في مجموعة الإجراءات Actions لإنشاء برنامج نصي للتراجع عن الإجراءات الظاهرة في شبكة النتائج.

    2. حدد الإجراءات التي تريد اختيار برنامج نصي للتراجع عنها ، انقر بالزر الأيمن على شبكة النتائج الرئيسية واختار Create undo script من خلال السياق الرئيسي للنتائج من اجل إنشاء برنامج نصي للإجراءات التي تم تحديدها فقط.
  9. نفّذ البرنامج النصي على قاعدة بياناتك.

بعد تنفيذ البرنامج النصي الذي تم إنشاؤه، نجح التراجع عن عملية التعديل غير المقصودة وعادت البيانات الأصلية التي كانت قبل التعديل إلى قاعدة البيانات.

إذا قمت بعملية تعديل غير مقصودة على السجلات في قاعدة البيانات لديك ، ولم يكن لديك نسخة احتياطية كاملة لقاعدة البيانات ، مازال لديك الفرصة لاستعادة البيانات باستخدام برنامج ApexSQL Log.

مترجم Ahmad Yaseen

January 19, 2016