ستشرح لك هذه المقالة كيفية حل قواعد بيانات SQL Server المشكوك فيها في بعض الأحيان يتم وضع علامة على قاعدة البيانات على أنها مشكوك فيها عن طريق الصدفة، وإليك بعض الحلول. 1. تأكد أولاً من عمل نسخة احتياطية من ملفات .mdf و.ldf.
2. قم بإنشاء قاعدة بيانات جديدة بنفس الاسم في SQL Server، ثم قم بإيقاف خدمة SQL Server.
3. قم بالكتابة فوق ملفات .mdf و.ldf المطابقة لقاعدة البيانات الجديدة بملفات .mdf و.ldf الأصلية.
4. أعد تشغيل خدمة SQL Server. يجب أن ترى أن قاعدة البيانات في حالة مشبوهة.
5. قم بتنفيذ الأمر التالي في SQL Query Analyzer للسماح بتحديث جداول النظام:
استخدم mastergosp_configure "السماح بالتحديثات"، 1 أعد التكوين باستخدام التجاوز
6. ضع قاعدة البيانات هذه في وضع الطوارئ:
تحديث حالة تعيين قواعد بيانات النظام = 32768 حيث الاسم = 'db_name'go
7. استخدم الأمر DBCC CHECKDB للتحقق من الأخطاء في قاعدة البيانات:
DBCC CHECKDB('db_name')GO
8. إذا فشل أمر DBCC CHECKDB، انتقل إلى الخطوة 10، وإلا ضع قاعدة البيانات في وضع المستخدم المفرد قبل محاولة إصلاحها:
sp_dboption 'db_name'،'مستخدم واحد'،'true'DBCC CHECKDB('db_name'، REPAIR_ALLOW_DATA_LOSS)GO
إذا تمت مطالبتك بأن قاعدة البيانات ليست في وضع المستخدم المفرد عند تنفيذ الأمر DBCC CHECKDB('db_name', REPAIR_ALLOW_DATA_LOSS)، فأعد تشغيل خدمة SQL Server واستمر في المحاولة.
9. إذا فشل الأمر DBCC CHECKDB('db_name', REPAIR_ALLOW_DATA_LOSS)، فانتقل إلى الخطوة 10، وإلا إذا تم إصلاح الخطأ في قاعدة البيانات بنجاح:
أعد تنفيذ الأمر DBCC CHECKDB('db_name') للتأكد من عدم وجود أخطاء في قاعدة البيانات.
امسح الحالة المشتبه بها لقاعدة البيانات: sp_resetstatus 'db_name'
امسح حالة وضع المستخدم المفرد لقاعدة البيانات: sp_dboption 'db_name'،'single user'،'false'
أعد تشغيل خدمة SQL Server إذا كان كل شيء طبيعيًا، فقد تمت استعادة قاعدة البيانات بنجاح.
10. إذا لم تتمكن الخطوات المذكورة أعلاه من حل المشكلة، فيرجى الرجوع إلى المستند المرفق ومحاولة استعادة البيانات الموجودة في قاعدة البيانات عن طريق إعادة بناء سجل المعاملات. إذا كان لديك ملفات MDF فقط، فستكون المشكلة أكثر تعقيدًا وسنحتاج إلى إعادة بناء سجل المعاملات مباشرة:
1. قم بإنشاء قاعدة بيانات جديدة بنفس الاسم في SQL Server، ثم قم بإيقاف خدمة SQL Server.
2. استخدم ملف ldf الأصلي للكتابة فوق ملف .mdf المطابق لقاعدة البيانات المنشأة حديثًا، وحذف ملف السجل الخاص به (.ldf).
3. ابدأ تشغيل خدمة SQL Server وقم بوضع قاعدة البيانات في وضع الطوارئ (كما هو مذكور أعلاه: الخطوة 5 والخطوة 6).
4. قم بإيقاف خدمة SQL Server وإعادة تشغيلها.
5. قم بتنفيذ الأمر التالي لإعادة إنشاء ملف سجل قاعدة البيانات: (في ما يلي مثال، تحتاج إلى استخدام اسم قاعدة البيانات الفعلي)
DBCC REBUILD_LOG('cas_db', 'D:cas_dbcas_db_Log.LDF')
6. استبدل قاعدة البيانات في وضع المستخدم المفرد.
7. حاول مرة أخرى باستخدام الأمر DBCC CHECKTABLE أو DBCC CHECKDB للتحقق من الأخطاء وإصلاحها في قاعدة البيانات
-