فهم وتحليل-1018 و-1019-1022 تبادل أخطاء قاعدة البيانات

ملخص

توفر هذه المقالة معلومات لمساعدتك على فهم وتحليل-1018 و-1019-1022 أخطاء قاعدة بيانات Exchange. توضح هذه المقالة الاختلافات بين هذه الأخطاء الثلاثة وأنواع المشاكل في قاعدة البيانات تؤدي كل هذه الأخطاء الثلاثة للإبلاغ عنها.

مزيد من المعلومات

يتضمن تبادل وظيفة الكشف عن تلف الملف مستوى الصفحات في قواعد البيانات الخاصة به. ثلاثة الأخطاء الأكثر شيوعاً المقترنة بالملف مستوى تلف قاعدة بيانات Exchange كما يلي:
  • -1018 JET_errReadVerifyFailure
  • -1019 JET_errPageNotInitialized
  • JET_errDiskIO-1022
يمكن أن يحدث تلف المستويات الثلاثة التالية في قاعدة بيانات Exchange:
  • مستوى الصفحة (نظام الملفات)
  • مستوى قاعدة البيانات (مشغل قاعدة بيانات JET)
  • مستوى التطبيق (مخزن معلومات Exchange)
الأداة المساعدة Esefile.exe الكشف عن أخطاء في قواعد بيانات على مستوى الصفحة. الأداة المساعدة Eseutil.exe يمكن اكتشاف المشكلات وإصلاحها على مستوى الصفحة ومستوى قاعدة البيانات. الأداة المساعدة Isinteg.exe كشف وإصلاح المشاكل على مستوى التطبيق.

التلف أقل مستوى (مستوى الصفحة) دائماً النتائج في مشاكل في المستويات العليا (مستوى قاعدة بيانات أو تطبيق). لذلك، بعد إصلاح قاعدة بيانات باستخدام الأداة المساعدة Eseutil، دائماً تحتاج إلى استخدام Isinteg فيما بعد.

تتصل المشاكل في التعليمات البرمجية Exchange أو في برامج الجهات الأخرى التي تتكامل مع تبادل الضرر على مستوى التطبيق وقاعدة البيانات. يحدث الضرر على مستوى الصفحة عادة عن طريق برنامج التشغيل أو البرامج الثابتة أو مشاكل الأجهزة، على الرغم من أن مستوى الصفحة الضرر قد تنتج أيضا عن مشاكل في Exchange.

العثور على الأسباب الجذرية لمشكلة-1018 دائماً في أحد الأنظمة الأساسية التي تعتمد على تبادل، ليس في Exchange التعليمات البرمجية نفسها. وهناك استثناءات قليلة جداً لهذه القاعدة. كانت الاستثناءات حتى الآن فيما يتعلق بتبادل التقارير شرط-1018، ليس لتبادل نفسه يؤدي إلى خطأ في-1018. للحصول على مزيد من المعلومات، انقر فوق رقم المقالة التالي لعرضها في "قاعدة المعارف ل Microsoft":

خطأ خاطئ-1018 237953 التي تم إرجاعها أثناء النسخ الاحتياطي عبر الإنترنت

تنجز أجهزة الكمبيوتر معالج واحد تشيكسومينج النسخ الاحتياطي 230215

على الرغم من أن معظم-1019 و-1022 أخطاء ناتجة عن خطأ أيضا في نظام أساسي، لا يمكن استبعاد إمكانية أن-1019 و-1022 قد تحدث أخطاء بسبب حدوث خطأ في Exchange التعليمات البرمجية بشكل سريع.

خطأ-1018 هي الخطأ غالباً ما ينظر إليها، مما يشير إلى أن قاعدة بيانات Exchange تعرضت للتلف مستوى نظام الملفات. ولذلك، تركز أكثر من هذه المادة على خطأ-1018.

هناك ثلاثة طرق أساسية أصبح تالفاً البيانات الموجودة على القرص:

  • تتم كتابة بيانات خاطئة إلى وسائط التخزين.
  • تتم كتابة البيانات إلى المكان المناسب في وسائط التخزين.
  • بيانات معطوبة أو تغييرها بعد تخزين.
على الرغم من أنه من الصعب جداً منع أو تصحيح 100 في المائة من جميع الأضرار، من السهل نسبيا للكشف عن مشكلة حدث. تبادل الكشف عن بيانات غير صحيحة وفي غير محله في ملفات قاعدة البيانات الخاصة به والتقارير أو خطأ-1018-1019. إذا تلف ملف كبير وأجزاء منه تفتقد تماما أو غير متاحة إلا عند محاولة قراءة الملف Exchange، الإبلاغ عن وجود خطأ-1022.

كيف يتم حساب Exchange اختبارية وأرقام صفحات قاعدة البيانات

لفهم كيفية عمل آليات تؤدي إلى أخطاء-1018 و-1019، عليك فهم كيفية تخزين صفحات البيانات في قاعدة بيانات Exchange.

على مستوى أدنى المنطقية، يمكنك عرض ملف قاعدة بيانات Exchange كمجموعة من 4 كيلوبايت (KB) صفحات، مرقمة بترتيب تسلسلي. قراءة البيانات وكتابتها إلى قاعدة بيانات Exchange صفحة واحدة في مرة الواحدة.

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

تكون خوارزميات المجموع الاختباري، خوارزمية المجموع الاختباري الذي يستخدمه Exchange، بما في ذلك مفهومة جيدا وبسيطة نسبيا. تم تصميمها كي تكون احتمالات أن يؤدي إلى نفس المجموع الاختباري لأي صفحتين مختلفتين منخفض، حتى إذا كان الفرق بين الصفحات واحدة فقط بت.

على الرغم من أن اختبار المجموع اختباري كافية لتحديد سواء تم تغيير الصفحة نظراً لأنه تمت كتابته، اختبار المجموع اختباري غير كافية للتأكد من أن الصفحة في المكان المناسب. ولهذا السبب، تبادل الطوابع كل صفحة مع رقم الصفحة الخاصة به بالإضافة إلى المجموع اختباري.

يتم حجز الصفحات 4 كيلوبايت الأولى والثانية في قاعدة البيانات لقاعدة البيانات "رأس". عندما يتم إيقاف قاعدة البيانات، يمكنك استخدام /MH التبديل الأداة المساعدة Eseutil إلى عرض رأس الصفحة. الرأس يحتوي على معلومات تعريف حول قاعدة البيانات ككل.


بعد هذه الصفحات الأولى والثانية رأس كافة الصفحات الأخرى في قاعدة البيانات. مشاركة كافة صفحات البيانات هيكل مشترك. كل صفحة يحتوي على رأس الصفحة الخاصة به، الذي يحتوي على معلومات تعريف حول صفحة معينة، متبوعة بالبيانات الفعلية.


لأن أول صفحة البيانات في قاعدة بيانات Exchange يقع بعد الصفحات رأس اثنين الأول، الصفحة الفعلية 3 في قاعدة البيانات هو الصفحة المنطقية 1. 2 هو رقم الصفحة المنطقية الصفحة الفعلية 4، وهكذا.

تعيين أرقام الصفحات المنطقي في قاعدة البيانات مباشرة إلى أرقام الصفحات الفعلية بالصيغة التالية:
رقم الصفحة المنطقية = رقم الصفحة الفعلية-2
لأن البنيات الصفحة المنطقية والفعلية من ملف قاعدة البيانات عن قرب، تبادل بسهولة تحديد ما إذا كانت كل الصفحات المنطقية في الموقع الفعلي الصحيح في الملف.

الصفحات فقط في قاعدة البيانات التي يتم حساب المجموع اختباري لم يتم "الصفحات غير مهيأ". هذه هي كتل من الصفحات التي تم إنشاؤها عندما يتم توسيع حجم قاعدة البيانات لإفساح المجال أمام المزيد من البيانات. هي صفحة غير مهيأ اختباري صفر ورقم صفحة صفرية. عادة، كل بايت لصفحة غير مهيأ مليء ب الحرف 0x00.

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

تغيير Exchange Server 2003 Service Pack 1 (SP1) خوارزمية المجموع الاختباري وتنسيق الصفحات التي يتم استخدامها. كما عرض Exchange Server 2003 SP1 خطأ تصحيح التعليمات البرمجية (ECC) خوارزمية كشف وتصحيح أخطاء بت واحد تلقائياً. لمزيد من المعلومات حول هذه الوظيفة الجديدة، انقر فوق رقم المقالة التالي لعرضها في "قاعدة المعارف ل Microsoft":

867626 خطأ جديد يتم تصحيح التعليمات البرمجية المضمنة في Exchange Server 2003 Service Pack 1

ما هي أسباب وجود خطأ-1018

تبادل تقارير تم العثور على خطأ-1018 عند صفحة تمت تهيئته في ملف قاعدة البيانات مع أي من الشروط التالية:

  • لا يطابق المجموع الاختباري الذي تم تخزينه على الصفحة نتيجة إعادة حساب المجموع الاختباري الذي يتم تنفيذه كما تتم قراءة الصفحة.
  • لا يطابق رقم الصفحة التي يتم تخزينها على الصفحة رقم الصفحة التي يجب أن تكون الصفحة، نظراً للموقع الفعلي للصفحة في ملف قاعدة البيانات.
الصرف قد يكون مسؤولاً عن إنشاء خطأ-1018 الذاتي إذا Exchange يقوم بإجراء واحد مما يلي:

  • إنشاء صفحة ذات المجموع الاختباري غير صحيح.
  • إنشاء صفحة بشكل صحيح، ولكن بإعلام نظام التشغيل لكتابة الصفحة في الموقع غير صحيح.
بعد أن مسؤول نظام صادف خطأ-1018، في حالة قيام المسؤول بتشغيل اختبارات التشخيص الأجهزة على الخادم وهذه الاختبارات الإبلاغ عن لم مشكلات، قد يتوصل المسؤول أن تبادل يجب أن تكون مسؤولة عن المشكلة لأن الأجهزة التي تم تمريرها من التحليل الأولى.


ومع ذلك، في حالة بعد حالة، مزيد من التحقيق بالأجهزة أو Microsoft الموردين كشفت مشكلات دقيقة في برامج تشغيل الأجهزة أو البرامج الثابتة أو الأجهزة المسؤولة فعلياً إتلاف ملف قاعدة البيانات.


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


التبسيط واﻻستقرار آليات تبادل إنشاء مجاميع وكتابة الصفحات إلى ملف قاعدة البيانات هو سبب آخر أن احتمال أن السبب الجذري لمشكلة-1018 مشكلة صرف منخفض. المجموع الاختباري وتقنيات الكشف عن الصفحة غير صحيحة بسيطة وموثوق بها ولا تزال أساسا نفس منذ إطلاق أول تبادل، باستثناء تعديلات طفيفة على التكيف مع التغيرات تنسيق صفحة قاعدة البيانات بين قواعد البيانات.

لشرح علاوة على ذلك، يتم إنشاء المجموع اختباري لصفحة على وشك يمكن كتابتها إلى القرص بعد تمت كتابة كافة البيانات الأخرى إلى الصفحة، بما في ذلك الصفحة الرقم نفسه. بعد إضافة تبادل المجموع الاختباري للصفحة، تبادل يرشد نظام تشغيل Microsoft Windows كتابة الصفحة إلى القرص باستخدام القياسية، ولقد نشر Windows واجهات برمجة التطبيقات (APIs).

المجموع الاختباري وقد يتم إنشاء بشكل صحيح لصفحة، ولكن ثم قد كتب الصفحة إلى الموقع الخطأ على القرص الثابت. قد يكون سبب خطأ ذاكرة مؤقتة، مثل "انعكاس بت". على سبيل المثال، افترض أن Exchange يقوم بإنشاء نسخة جديدة من صفحة 70. لا تواجه خطأ على الصفحة نفسها، ولكن تم تعديل نسخة رقم الصفحة المستخدم من قبل وحدة تحكم القرص أو نظام التشغيل عشوائياً. قد تحدث هذه المشكلة إذا تم تغيير 70 (100110 ثنائي) إلى 6 (000110 ثنائي) بخلية ذاكرة غير مستقر. المجموع الاختباري للصفحة لا يزال صحيحاً، ولكن الآن موقع الصفحة في قاعدة البيانات غير صحيح. تبادل تقارير خطأ-1018 للصفحة عند الكشف عن عدم تطابق رقم الصفحة المنطقية على الموقع الفعلي للصفحة. قد يحدث نوع آخر من الخطأ (بسبب تبادل) ترقيم الصفحات إذا تبادل كتابة رقم الصفحة غير صحيح على الصفحة نفسها. ولكن يؤدي إلى أخطاء أخرى، ليس خطأ-1018. إذا تبادل يكتب 71 في الصفحة 70، ومن ثم لا المجموع الاختباري في الصفحة بشكل صحيح، يتم كتابة موقع 71 الصفحة وتمرير كلا الاختبارين المجموع الاختباري ورقم الصفحة.


وكثيراً ما لا يتسبب خطأ واحد-1018 التي تم الإبلاغ عنها في قاعدة بيانات Exchange قاعدة لإيقاف أو يؤدي إلى أعراض مختلفة عن وجود خطأ-1018 نفسه. قد تكون الصفحة في مجلد يتم الوصول إليها بشكل متكرر (على سبيل المثال، تاريخ الإرسال أو حذف عناصر المجلدات)، أو مرفق من النادر المفتوحة، أو حتى فارغة.


على الرغم من أن وجود خطأ-1018 واحد من غير المحتمل أن يؤدي إلى فقدان بيانات شاملة، أخطاء-1018 لا تزال مدعاة للقلق نظراً لحدوث خطأ-1018 دليل على أن فشل نظام التخزين لتخزين أو استرداد البيانات مرة واحدة على الأقل لكل أمانة. على الرغم من أنه قد يكون خطأ-1018 مشكلة عابرة لن يحدث مرة أخرى، من المرجح أن هذا الخطأ هو إنذار مبكر للمشكلة التي ستصبح سوءا بشكل تدريجي. حتى إذا كان الخطأ-1018 أولاً على صفحة فارغة في قاعدة البيانات، لا يمكنك معرفة الصفحات التي قد تكون معطوبة بعد ذلك. في حالة تلف جدول عالمية هامة، قد تصبح قاعدة البيانات أونستارتابل، وإصلاح قاعدة البيانات قد فشل أو نجاح جزئيا فقط.

بعد أن يتم تسجيل خطأ في-1018، يجب مراعاة والتخطيط لاحتمال الفشل الوشيك أو مزيدا من الأضرار العشوائية في قاعدة البيانات حتى يمكنك العثور على وإزالة السبب الجذري.

إصلاح الأخطاء-1018

يعامل Exchange صفحة فشل مع وجود خطأ-1018 كغير مقروء تماما لمنع إجراء على بيانات عشوائية من التسبب في مشاكل إضافية في قاعدة البيانات.

لا يمكن إصلاح أو إنقاذ صفحة فشل مع وجود خطأ-1018. يجب أن تشطب من قاعدة البيانات. هناك ثلاث طرق يمكنك أن يشطب الصفحة من قاعدة البيانات:

  • استعادة قاعدة البيانات من النسخ احتياطي عبر إنترنت.
  • Eseutil.exe استخدام مفتاح التبديل &/D للقيام بتجزئة متصل من قاعدة البيانات.
  • لإصلاح قاعدة البيانات /P Eseutil.exe استخدام رمز التبديل .

استعادة قاعدة البيانات من النسخ احتياطي عبر الإنترنت

إذا تم العثور على خطأ في-1018 أثناء النسخ الاحتياطي عبر الإنترنت، إيقاف النسخ الاحتياطي. هذا يضمن عدم وجود الصفحة تالفة في آخر نسخ احتياطي ناجح. إذا تم تعطيل التسجيل الدائري، يمكنك استعادة النسخة الاحتياطية الكاملة المتوفرة الأكثر حداثة، وثم استعادة قاعدة البيانات إلى الأمام من سجلات الحركة التالية.

استخدام Eseutil.exe في "/D" التبديل إلى عدم تجزئة متصل من قاعدة البيانات

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


استخدام Eseutil.exe في "/P" التبديل إلى إصلاح قاعدة البيانات

لا يتم إصلاح صفحة غير صحيح في حالة استخدام هذه الطريقة، ولكن يتم تجاهل الصفحة غير صحيح. إذا كانت الصفحة التي تنطوي عليها "صفحة طرفية"، يحدث فقدان بعض البيانات. صفحة ورقة في قاعدة البيانات هي صفحة التي تحمل البيانات الفعلية. صفحات داخلية تحمل المعلومات الهيكلية ومنطقية. في معظم الحالات، الأداة المساعدة Eseutil تماما إعادة بناء جدول إذا فقد صفحة داخلية. معظم الصفحات الموجودة في قاعدة بيانات غير صفحات أوراق.

تعمل وظيفة الإصلاح للأداة المساعدة Eseutil أيضا، وفي معظم الحالات يمكن استعادة قاعدة بيانات للعملية مع فقدان بيانات أقل. ومع ذلك، إذا تلف العديد من الصفحات، أو يتم فقدان جداول النظام الهامة، ربما ذريع فقدان البيانات أو قد تكون قاعدة البيانات غير قابل للتصليح.

عادة ما يكون إصلاح قاعدة بيانات استراتيجية رديئة مقارنة باستعادة من نسخة احتياطية والمتداول قاعدة البيانات إلى الأمام لأن الإصلاح عادة وقتاً أطول من عملية الاستعادة، وخطورة. اختر الإصلاح إلا إذا:
  • ليس لديك نسخة احتياطية.
  • لا يمكن استعادة الأمام تماما من النسخة الاحتياطية.
قبل إصلاح أو استعادة قاعدة بيانات، دائماً عمل نسخة احتياطية من ملفات قاعدة البيانات الحالية. إذا لم تنجح عملية الاستعادة، يمكنك إصلاح قاعدة البيانات الموجودة. إذا لم يعمل الإصلاح، مع نسخة سابقة من قاعدة البيانات لا يزال قابل للتشغيل، قد تكون قادرة على إنقاذ البيانات التي قد تكون مفقودة.

هام: بعد إصلاح قاعدة بيانات، يجب تحديد عدد الإصلاح في رأس قاعدة البيانات. إذا كان العدد أكبر من صفر، يجب تنفيذ تجزئة دون اتصال باستخدام الأداة المساعدة Eseutil ومن ثم يجب إصلاح قاعدة البيانات على مستوى مخزن المعلومات باستخدام الأداة المساعدة Isinteg. في حالة عدم القيام بذلك، قد تواجه المستخدمين مشاكل، مثل عدم قدرة على فتح الرسائل أو المرفقات أو مراجع في علب البريد الخاصة بهم للعناصر التي لم تعد موجودة.

للتحقق من عدد الإصلاح، افحص الإخراج الشاشة الذي تم إنشاؤه عندما تقوم بتشغيل الأمر التالي:
الأداة المساعدة ESEUTIL/MH [database_file_name]
لتنفيذ تجزئة دون اتصال قاعدة البيانات الذي تم إصلاحه، بتشغيل الأمر التالي:
تقوم الأداة المساعدة ESEUTIL/D [database_file_name]
للقيام بإصلاح شامل Isinteg بعد إصلاحه في Exchange 2000، يجب تشغيل خدمة "مخزن المعلومات"، ولكن يجب إلغاء تحميل قاعدة البيانات التي تريد إصلاحه. قم بتشغيل الأمر التالي لإصلاح قاعدة البيانات:
ISINTEG-S [اسم _ الملقم]-إصلاح-اختبار ALLTESTS
للقيام Isinteg شاملة إصلاح بعد إصلاحه في Exchange Server 5.5، يجب إيقاف خدمة مخزن المعلومات. قم بتشغيل الأمر التالي، استخدام رموز التبديل المناسبة (-PRI أو -حانة)، اعتماداً على ما إذا كنت تقوم بتشغيل الإصلاح مقابل قاعدة بيانات خاصة أو عامة:
ISINTEG-PRI | حانة-إصلاح-اختبار ALLTESTS
ملاحظة: يمكنك تشغيل الأداة المساعدة Eseutil و Esefile مقابل ملفات قاعدة البيانات الخام بغض النظر عن ملفاتهم مواقع النظام. لا تحتاج ملفات قاعدة البيانات حتى على ملقم Exchange. ولكن يجب عليك تشغيل Isinteg أثناء قاعدة البيانات الموجودة على ملقم Exchange مكون بشكل كامل لأنه يعمل على مستوى مخزن المعلومات Isinteg ويستخدم خدمة "مخزن المعلومات" للوصول إلى قاعدة البيانات.

لمزيد من المعلومات، انقر فوق رقم المقالة التالية لعرضها في "قاعدة معارف Microsoft":

كيفية تشغيل الأداة المساعدة Eseutil على جهاز كمبيوتر لا يستخدم Exchange Server 244525

الاسترداد من خطأ-1019

تم الإبلاغ عن خطأ "-1019" (JET_errPageNotInitialized) عندما تكون صفحة التي من المتوقع أن يكون قيد الاستخدام غير مهيأ أو فارغة. إذا كان حقل رقم الصفحة على صفحة باستخدام 0x00000000،-1019 هو عنه بدلاً من وجود خطأ في-1018 على الرغم من أن الصفحة قد أيضا يفشل الاختبار المجموع الاختباري.

أساليب لتصحيح خطأ-1019 هي نفسها كتلك لتصحيح خطأ-1018. لاحظ أن مشكلة-1019 قد تكتشف يعد مشكلة-1018 لأنه لم يتم الكشف عن مشاكل-1019 بالنسخ الاحتياطي عبر الإنترنت.

على الرغم من أن السبب الجذري لمشكلة-1018 من المحتمل جداً أن يكون خارج الصرف، خطأ في-1019 قد يرجع Exchange إذا المؤشرات المنطقية أو الارتباطات بين الصفحات غير صالح.

ومع ذلك، الأكثر شيوعاً أن خطأ-1019 يحدث بسبب نظام الملفات تالف أو تعيين صفحات إلى ملف قاعدة البيانات التي لا تنتمي في الملف.

الاسترداد من خطأ-1022

إذا تبادل يطلب نظام التشغيل لصفحة في قاعدة البيانات، ويحدث خطأ بدلاً من صفحة البيانات التي يتم إرجاعها، يؤدي إلى خطأ-1022 (JET_errDiskIO). الخطأ-1022 هو خطأ عام الذي يظهر عند إدخال قرص/إخراج (I/O) مشكلة تحول دون تبادل الوصول إلى صفحة المطلوبة في قاعدة البيانات.

السبب الأكثر شيوعاً لخطأ-1022 هو ملف قاعدة بيانات الذي تم تلف كبير أو اقتطاع. في حالة حدوث هذه المشكلة، يطلب الصرف رقم صفحة أكبر من عدد الصفحات في ملف قاعدة البيانات، ويؤدي إلى خطأ-1022. قد تحدث هذه المشكلة بسبب وجود مشاكل في نظام الملفات أو بسبب إعادة تسجيل المعاملات غير مناسب.

Exchange 2000 يحتوي على ضمانات واسعة لمنع إعادة تسجيل المعاملات التي قد تضر بقاعدة البيانات، ولكن في Exchange Server 5.5 كان من الممكن لتشغيل مجموعة كاملة من ملفات السجل وتتلف قاعدة البيانات. على سبيل المثال، قد تحدث هذه المشكلة إذا كان الرد الذي يبدأ من سجل 9، ولكن بدلاً من ذلك فرض إعادة التشغيل لبدء التشغيل من سجل 10. قد فرض إعادة التشغيل إذا كان مسؤول حذف ملف نقاط التحقق وسجل 9. إذا كانت حركة في سجل 9 توسيع حجم قاعدة البيانات، ولكن لا يتم تشغيل سجل 9 إلى قاعدة البيانات، مرجع في سجل 10 للصفحات الجديدة التي تمت إضافتها إلى قواعد البيانات يؤدي إلى خطأ-1022. تعطل المفاجئة، وعلامات (معلقة)، ومشكلات خرق الوصول أيضا الأعراض الشائعة لتعيد مجموعة سجل حركة غير كاملة إلى قاعدة بيانات.

فهم واستكشاف السبب الأساسي لوجود خطأ-1022 أكثر تعقيداً من استكشاف الأخطاء وإصلاحها لخطأ-1018 أو-1019. إذا كان سبب الخطأ تلف قاعدة بيانات في نظام الملفات، تحتاج إلى التحقق من إصلاح نظام الملفات أو ثم استعادة Exchange من النسخة احتياطية. على الرغم من أن إصلاح قاعدة البيانات لا تزال خياراً، الإصلاح أقل احتمالاً أن تكون ناجحة مع الأخطاء الأخرى ليشير إلى خطأ-1022 غالباً أضرارا بالغة.

حد بعيد السبب الأكثر شيوعاً لوجود خطأ-1022 مع قاعدة بيانات غير تالفة تطبيق آخر ضغط الملفات المفتوحة ومنع مخزن المعلومات خدمة من الوصول إليها. وفي هذه الحالات، قد ترى أيضا الأخطاء-1032 (JET_errFileAccessDenied). إعادة تشغيل كافة خدمات Exchange أو إعادة تشغيل الخادم قد إزالة التأمين.

برامج الجهات الأخرى، مثل ماسحات الفيروسات، قد يمنع تبادل الوصول إلى بيانات Exchange. تكوين ماسحات الفيروسات مستوى الملف لاستبعاد ملفات بيانات Exchange من ملف المسح العملية دائماً. تتوفر عدة ماسحات الفيروسات التي تستفيد من الصرف الفيروسات واجهة برمجة التطبيقات (API) لفحص الرسائل والمرفقات في مخزن المعلومات.

تحليل أخطاء-1018 و-1019

المعلومات الموجودة في هذا المقطع يهدف أساسا لتقديم الدعم التقني وتحليل السبب المورد العاملين الذين يشاركون في الجذر.

بعد عثور مسؤول خطأ إلى-1018 أو-1019، يجب على المسؤول أن نعرف على الأقل ثلاثة أشياء:
  • ما هي الصفحة تالفة
  • ما احتمال نجاح الإصلاح
  • ما تسبب الأضرار في المقام الأول
-قد تحدث أخطاء 1018 و-1019 في سطر الأوامر عند بدء تشغيل الخدمة، في سجل أحداث التطبيق، أو في إخراج المرافق تبادل مثل الأداة المساعدة Eseutil. لن يتم الإبلاغ عن وجود خطأ-1018 في سجل أحداث التطبيق عند تشغيل التحقق من تكامل قاعدة بيانات باستخدام الأداة المساعدة Eseutil/G الأمر. في هذه الحالة، من المحتمل أن الصفحة غير صحيح فارغ.

في معظم الحالات، يتم الإعلام عن الأخطاء في نموذج يسمح لك بتحديد الصفحة التي تقوم بالإعلام عن المشكلة. يمكنك أيضا مسح قاعدة البيانات بأكملها باستخدام Esefile لتحديد صفحات غير صحيح. لمزيد من المعلومات حول Esefile، انقر فوق رقم المقالة التالي لعرضها في "قاعدة المعارف ل Microsoft":

الأداة المساعدة لدعم Esefile 248406 Exchange Server 5.5 و Exchange 2000

الأمثلة التالية وصف خطأ-1018 من سجل أحداث التطبيق للإصدارات المختلفة من تبادل، إلى جانب تحليل التفاصيل في كل خطأ.
MSExchangeIS (248) Synchronous read page checksum error -1018
((1:3106 1:3106)(0-310013)(0-312215)) occurred.
Please restore the databases from a previous backup.

في المثال السابق، يمكن تفسير الأرقام في الأقواس كما يلي:

  • (1:3106 1:3106) تمثل الصفحة في قاعدة البيانات التي تم المطلوبة (صفحة 3106) ورقم الصفحة التي تم العثور عليها في الواقع كتب على الصفحة (صفحة 3106). 1: يشير إلى أن هذا هو قاعدة البيانات 1، وهو Priv.edb الخاص ب Exchange Server 5.5. تعد قاعدة البيانات 2 Pub.edb.
  • (0-310013) تمثل قيمة dbtime مكتوبة حاليا على الصفحة. قيمة dbtime هي قيمة 64-بت التي يتم كتابتها في كل صفحة تقريبا وترتبط بطول الوقت مر منذ أن تم تغيير الصفحة.
  • (0-312215) يمثل القيمة dbtime الحالية لقاعدة البيانات ككل: من المحتمل أن قيمة dbtime قد كتبت على هذه الصفحة إذا تم تعديل الصفحة الآن. يجب أن تكون قيمة dbtime مسبقاً على الصفحة دائماً أصغر من القيمة dbtime الحالية.
نظراً لأن تم قراءة رقم الصفحة من الصفحة بشكل صحيح، وقيم dbtime معقولة (مع dbtime القيمة الأولى أقل من الثانية)، لا تم استبدال هذه الصفحة تماما مع صفحة من خارج قاعدة البيانات أو صفحة مختلفة.

يمكنك استخدام Esefile لإخراج الصفحة نفسها بأمر مشابه لما يلي:

Database.edb &/d Esefile 3106 > 3106.txt
لأنه يبدو أن هذه الصفحة دون تغيير إلى حد كبير فيما يتعلق بهيكل، قد تتمكن أيضا لاستخدام الأداة المساعدة Eseutil لعرض معلومات أكثر منطقية حول الصفحة. يمكنك استخدام إصدار Exchange 2000 من الأداة المساعدة Eseutil لعرض الصفحة بنية المعلومات من قواعد بيانات Exchange 2000 ومثبت عليه Exchange Server 5.5.

تحذير لا تستخدم إصدار Exchange 2000 من الأداة المساعدة Eseutil مقابل قاعدة بيانات Exchange Server 5.5 في أي وضع الكتابة إلى قاعدة البيانات. حتى تكون بمأمن، تستخدم رموز التبديل /M فقط، وعدم استخدام /Pأو /G /R. أيضا، نسخ إصدارات Exchange 2000 من Eseutil.exe و Ese.dll إلى جهاز كمبيوتر مثبت عليه Exchange Server 5.5. بدلاً من ذلك، نسخ هذه الملفات إلى خادم بعيد وتوفير مسار اصطلاح تسمية عالمي (UNC) سطر الأوامر صريحة لقاعدة البيانات الذي تقوم بفحصه.

المعلومات المنطقية لصفحة إلى ملف نصي بإخراج أمر مشابه للأمر التالي:
Eseutil /M \\exchange1\d$\exchsrvr\mdbdata\priv.edb /p3106 > 3106.txt
Initiating FILE DUMP mode...
Database: priv.edb
Page: 3106

pgnoThis <0x02360004, 4>: 3106 (0x00000c22)
objidFDP <0x02360018, 4>: 19 (0x00000013)
ulChecksumParity <0x02360000, 4>: 4269350574 (0xfe791eae)
** computed checksum: 157180847 (0x095e63af)
dbtimeDirtied <0x02360008, 8>: 310013 (0x000000000004bafd)
cbFree <0x0236001c, 2>: 436 (0x01b4)
ibMicFree <0x02360020, 2>: 3608 (0x0e18)
itagMicFree <0x02360022, 2>: 3 (0x0003)
cbUncommittedFree <0x0236001e, 2>: 0 (0x0000)
pgnoNext <0x02360014, 4>: 3108 (0x00000c24)
pgnoPrev <0x02360010, 4>: 3088 (0x00000c10)
fFlags <0x02360024, 4>: 2050 (0x00000802)
Leaf page
Primary page
من هذا الناتج، يمكنك أن ترى أن الصفحة عبارة عن صفحة ورقة، مما يعني فقد بيانات فعلية على ذلك. إصلاح قاعدة البيانات هذه، الإصلاح سيؤدي إلى فقدان الأقل هذه البيانات. لمزيد من المعلومات حول كيفية معرفة ما هو الجدول أو علبة بريد ينتمي إلى الصفحة، انقر فوق رقم المقالة التالي لعرضها في "قاعدة المعارف ل Microsoft":

كيفية تحديد علبة البريد التي يملك صفحة معينة في قاعدة 262196

إذا لم يرد إخراج الأداة المساعدة Eseutil طرفية الصفحة للصفحة، فرص الإصلاح سوف يتم العمل عالية تماما. يمكنك إعادة إنشاء معظم الصفحات الداخلية أو الهيكلي الكامل بعملية الإصلاح.

الإخراج قد أيضا إظهار ذلك ك "صفحة فارغة". في هذه الحالة، سيتم تجاهل تجزئة متصل الصفحة غير صالح من قاعدة البيانات.

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

الخطأ التالي مثال آخر:
MSExchangeIS ((247) ) Synchronous read page checksum error -1018((1:1057816 1:3688618971) (3688618971-3688618971) (0-16815256)) occurred.
Please restore the databases from a previous backup.
في هذا المثال، لا يطابق رقم الصفحة فعلياً للقراءة من الصفحة (3688618971) الصفحة المطلوبة، مما يعني أن ناحية رأس الصفحة حيث يتم تخزين رقم الصفحة معطوب. ومن المحتمل عدم وجود رقم الصفحة حتى في قاعدة البيانات. لتحديد ما إذا كانت هذه هي الحالة، ضرب رقم الصفحة 4.096 ومن ثم مقارنة هذا الرقم بحجم بايت ملف قاعدة البيانات. في هذه الحالة، رقم الصفحة غير المحتمل لا بد أن يكون التبادل كتب أصلاً، ما لم تكن قاعدة البيانات 15 تيرابايت في الحجم (4096 × 3,688,618,971 = 15,108,583,305,216).


أيضا رقم لاحظ أن القيمة الأولى dbtime تكرار الصفحة نمط تماما. إذا قمت بتحويل 3688618971 إلى رقم سداسي عشري (استخدم Calc.exe في الوضع 'العلمي' الخاصة به)، يصبح 0xDBDBDBDB. في Exchange 2000 و Exchange Server 5.5، يتم تخزين قيمة 8 بايت dbtime مباشرة بعد رقم الصفحة 4 بايت القيمة. ولهذا السبب، تعرف أن اثني على الأقل وحدات البايت القريبة لحقلين مختلفين تم تجاوزها مع نمط معين. إذا كنت تستخدم Esefile للبحث في هذه الصفحة مباشرة، قد تكتشف أنه تم الكتابة فوق الصفحة بالكامل مع نمط 0xDB. نمط بايت غير صالح الهيكلان آخر هو 0xFF. إذا كان هذا هو الحال بالنسبة للخطأ أعلاه، ستكون قيمة dbtime 4294967295.


الخطأ التالي يوفر معلومات الصفحة كإزاحة في الملف، وليس كرقم صفحة:
Information Store (2160) The database page read from the file"d:\exchsrvr\MDBDATA\PRIV.EDB" at offset 897024 (0x00000000000db000)
for 4096 (0x00001000) bytes failed verification due to a page checksum
mismatch. The expected checksum was 2651583211 (0x9e0bf2eb) and the
actual checksum was 2651582996 (0x9e0bf214). The read operation will
fail with error -1018 (0xfffffc06). If this condition persists then
please restore the database from a previous backup.

يمكنك تحويل إزاحة الأول إلى رقم الصفحة عن طريق إزالة الأصفار الزائدة الثلاثة، طرح 1 وتحويل النتائج إلى عشري. في هذا المثال، 0x00000000000db-1 = 0xda = 218 العشري. يمكنك استخدام هذا الرقم العشري الصفحة باستخدام الأداة المساعدة Eseutil أو Esefile.

ملاحظة: اطرح فقط 1 بدلاً من 2 لحساب الصفحات رأس اثنين في قاعدة البيانات للإزاحات يبدأ العد في 0x0 بدلاً من 0x1. إذا كنت تريد التحقق من رأس الصفحات باستخدام الأداة المساعدة Eseutil أو Esefile، مرجع صفحة-1 والصفحة 0.

يتطلب عنوان قاعدة بيانات Exchange فعلا على صفحة واحدة. الصفحة الثانية نسخة "ظل" رأس. الاختبارية للملفات التي يتم الإبلاغ عنها عند استخدام Esefile &/D الدالة تفريغ الصفحة يجب أن يكون دائماً نفسها لصفحات-1 و 0 بعد إغلاق قاعدة بيانات نظيفة. إذا كان يتم إعادة كتابة العنوان أثناء عطل، يستخدم Exchange نسخ رأس بالمجموع الاختباري البرامج عند إعادة تشغيل Exchange.


المتابعة مع المثال السابق، كانت الاختبارية للملفات فعلياً جداً قريبة من بعضها البعض، تختلف في حرفين فقط. عند إغلاق اختبارية، يشير ذلك إلى أن التغييرات في الصفحة تم الحد الأدنى: خطأ بت واحدة ربما فقط. فمن المحتمل جداً أن هذه الصفحة لا يزال يتضمن ما يكفي من الخاص بها البنية المنطقية لجعله يستحق تحليل مع الأداة المساعدة Eseutil/M/P.

المجموع الاختباري المتوقع في رسالة الخطأ هو المجموع الاختباري الواقع مقروءة من الصفحة كما هو موجود الآن في قاعدة البيانات. المجموع الاختباري الفعلي في رسالة الخطأ هو المجموع الاختباري Exchange بشكل حيوي إعادة حساب كما يقوم بقراءة الصفحة.

إذا كان المجموع الاختباري الفعلي على صفحة 0x89abcdef، تحتوي الصفحة على كافة الأحرف 0x00. إذا كان المجموع الاختباري الفعلي 0x76543210، تحتوي الصفحة على كافة الأحرف 0xFF.

المثال التالي خطأ-1019:
Information Store (3928) The database page read from the file"d:\exchsrvr\MDBDATA\PRIV.EDB" at offset 1675264 (0x0000000000199000)
for 4096 (0x00001000) bytes failed verification because it contains
no page data. The read operation will fail with error -1019 (0xfffffc05).
If this condition persists then please restore the database from a
previous backup.

أثناء العملية العادية، إذا يمكنك الإبلاغ صفحة خطأ في-1018، أو إلى خطأ-1019 خطأ-1019 الأسبقية وذكر. تذكر أن يحدث خطأ في-1019 عند 0x00000000 رقم الصفحة التي يتم كتابتها في صفحة، ولكن يتوقع تبادل الصفحة لأنه قيد الاستخدام. قد يكون من الصعب إثبات ما إذا كان يحدث خطأ في-1019 بسبب نظام الملفات تعيين كتلة من الأصفار في ملف قاعدة البيانات، أو بسبب ارتكاب التبادل والإشارة إلى صفحة غير مستخدمة ك "في الاستخدام".

لا أستطيع أن أقول من الأخطاء السابقة ما إذا كانت الصفحة غير مهيأ أو في دولة أخرى. يجب استخدام الأداة المساعدة Eseutil و Esefile لمواصلة النظر في الصفحة. في هذا المثال، رقم الصفحة هو 408 عشري (مشتقة من 0x199).

يمكنك استخدام الأداة المساعدة Eseutil لمواصلة النظر في الصفحة. يجب أن تتطابق القيمة بجنوثيس مع رقم الصفحة التي يتم الاستعلام عنها، وتقارير إضافية قيمة أولتشيكسومباريتي * * المجموع الاختباري المحسوبة إذا المجموع الاختباري في الصفحة غير صحيح. يمكنك استخدام Esefile مفتاح التبديل &/D للبحث في الصفحة الأولية لتحديد ما إذا كان غير مهيأ (كافة الأحرف 0x00).

الأخطاء-1018 كاذبة

يحدث خطأ "false"-1018 عندما تكون الصفحة على القرص الصحيح، ولكن نظام الإدخال/الإخراج باسترداد البيانات بشكل غير صحيح. يتم عادة مثل هذه الأخطاء عابرة ومن الصعب عزل. ولكن خطأ-1018 "false" حتى تستحق اهتماما جادا. لا يزال يتم اختراق موثوقية نظام التخزين، والنظام قد تكون في خطر من مشكلات إضافية أو فشل.


إذا كنت تشك عابر أخطاء القراءة في النظام الخاص بك، استخدم Esefile مفتاح التبديل &/D أو الأداة المساعدة Eseutil/M/P للتحقق من الصفحات الفردية المتضمنة. إذا كنت تستخدم الأداة المساعدة أما لفحص قاعدة البيانات بأكملها، يمكنك الضغط على نظام الإدخال/الإخراج التي قد تؤدي أكثر المغلوطة.

Exchange Server 5.5 Service Pack 2 (SP2) إضافة وظيفة للمساعدة في تحديد أخطاء قراءة عابرة. تبادل لإعادة قراءة صفحة 16 مرة بعد فشل تحقق من قراءة. إذا نجح أخيرا قراءة الصفحة بعد عدة محاولات، يشير إلى وجود مشكلة في نظام في القراءة من القرص شكل يعتمد عليه. حتى في حالة فشل كل القراءات 16 لا قاطع يثبت أن الصفحة غير صحيح. تنفيذ اختبار ثانوي مع الأداة المساعدة Eseutil أو Esefile.

التصفير قاعدة البيانات


قاعدة بيانات التصفير تهدف إلى حجب المعلومات المحذوفة في قاعدة بيانات Exchange حيث أنه لا يمكن استرداد أو قراءتها بواسطة فحص ملف قاعدة البيانات مباشرة. لمزيد من المعلومات حول التصفير قاعدة البيانات، انقر فوق رقم المقالة التالي لعرضها في "قاعدة المعارف ل Microsoft":

223161 معلومات عن التصفير الموسع


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

رقم الموضوع: 314917 - آخر مراجعة: 18‏/01‏/2017 - المراجعة: 1

تعليقات