تصحيح: خطأ عدم تناسق بيانات التعريف بعد تبديل جدول الأقسام وإفلات الملفات المقابلة و filegroups

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

اضغط هنا لرابط المقالة باللغة الانجليزية3095958
الأعراض
يرجى مراعاة السيناريو التالي:
  • لديك جدولين المقسم في Microsoft SQL Server عام 2014، وأقسام الجدول الأول تم تعيينها إلى filegroups وملفات مختلفة باستخدام نفس نظام تقسيم والدالة.
  • التبديل من هذه الأقسام إلى الجدول الثاني ومن ثم اقتطاع الجدول الثاني.
  • يمكنك إسقاط الملفات و filegroups التي تم تعيينها إلى القسم المبدّلة.
  • تشغيل عبارة SELECT في الجدول الثاني.
في هذا السيناريو، تتلقى رسالة الخطأ التالية:

جي إس 606، مستوى 21 حالة 1
عدم تناسق بيانات التعريف. معرف مجموعة ملفاتمعرف مجموعة ملفات> المحددة للجدولاسم الجدول> غير موجود. قم بتشغيل DBCC CHECKDB أو تشيككاتالوج.

عندما تقوم بتشغيل DBCC CHECKDB/CHECKTABLE، تتلقى رسالة الخطأ التالية:

غير قادر على معالجة الفهرسIndexName> الجدولاسم جدول> لأن ملفات (ملفات معرففيليجروبنومبير>) غير صالح.
الحل
تم تصحيح هذه المشكلة أولاً في التحديثات التراكمية التالية من SQL Server: توصية: تثبيت آخر تحديث تراكمي ل SQL Server
يحتوي التحديث التراكمي كل جديدة ل SQL Server على كافة الإصلاحات العاجلة وكافة إصلاحات الأمان التي تم تضمينها مع التحديث التراكمي السابق. نوصي بتحميل وتثبيت أحدث التحديثات التراكمية ل SQL Server:


ملاحظة: يمنع هذا الإصلاح فقط التواجدات المستقبلية لهذه المشكلة. إذا كنت تواجه هذه المشكلة مسبقاً، يمكنك تصدير البيانات إلى قاعدة بيانات جديدة دون أي تلف بيانات التعريف الموجودة. للقيام بذلك، اتبع الخطوات التالية:
  1. لتحديد ما إذا كان قسم يحتوي ملفات غير صالحة، تشغيل الاستعلام التالي لمشاهدة إذا تقوم بإرجاع نتيجة:
    SELECT * FROM sys.allocation_units AS au WHERE au.data_space_id NOT IN (SELECT data_space_id FROM sys.filegroups)
  2. إنشاء الجدول بتلف بيانات تعريف للعرض مرة أخرى.

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

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

    للقيام بذلك، بنقل هذا القسم إلى جدول آخر يستخدم نفس نظام تقسيم. يمكن أن يكون هذا الجدول جدول وهمية. استخدم container_id من الاستعلام في الخطوة 1، ويتطابق مع partition_id من sys.partitions. (تأكد من أنه لاحظ partition_number.) استخدام في partition_number لتنفيذ "قسم تبديل تعديل الجدول" من الجدول الذي تم unviewable إلى جدول وهمية. ينبغي لها نفس مجموعة من أعمدة الجدول وهمية وتستخدم نفس نظام تقسيم. الاستعلام الخاص بك للعثور على القسم غير متناسقة ما يلي:

    SELECT au.container_id, au.data_space_id, p.partition_number FROM sys.partitions AS p JOIN sys.allocation_units AS au ON p.partition_id = au.container_id LEFT JOIN sys.filegroups AS fgs ON fgs.data_space_id = au.data_space_id WHERE object_id = OBJECT_ID('MyTableName') AND fgs.data_space_id IS NULL;
  3. نسخ البيانات من جدول unviewable مسبقاً في قاعدة البيانات الجديدة.
تصريح
أقرت Microsoft أن هذه مشكلة في منتجات Microsoft المسردة في قسم "ينطبق على".

تحذير: تمت ترجمة هذه المقالة تلقائيًا

خصائص

رقم الموضوع: 3095958 - آخر مراجعة: 04/11/2016 17:13:00 - المراجعة: 2.0

Microsoft SQL Server 2014 Service Pack 1

  • kbfix kbqfe kbexpertiseadvanced kbsurveynew kbmt KB3095958 KbMtar
تعليقات