خطأ: ظهور رسالة خطأ عند محاولة حفظ خطة صيانة في SQL Server إدارة Studio: "ينبغي أن يتضمن Guid 32 خانة رقمية مع شرطات 4 (xxxxxxxx xxxx-xxxx-عالمي)"


الخطأ رقم: 443411 (سقلبودت)

الأعراض


يرجى مراعاة السيناريو التالي:
  • في Microsoft SQL Server إدارة Studio، يمكنك الاتصال بمثيل من Microsoft SQL Server 2005 تكامل خدمات (SSIS).
  • استيراد مخطط صيانة من حزمة "خدمات تكامل" مخزنة في موقع آخر. تم تصدير حزمة "خدمات تكامل" مسبقاً من خطة صيانة.
  • في SQL Server إدارة Studio، يمكنك تعديل خطة الصيانة، وحاول حفظ خطة الصيانة.
في هذا السيناريو، تتلقى رسالة الخطأ التالية:
يجب أن يحتوي على Guid 32 خانة رقمية مع شرطات 4 (xxxxxxxx xxxx-xxxx-عالمي).

السبب


تحدث هذه المشكلة لأنه لا يتم تحديث سجل لخطة الصيانة في جدول نظام sysmaintplan_subplans عندما تقوم بإدراج خطة الصيانة من حزمة "خدمات التكامل".

الحل البديل


للتغلب على هذه المشكلة، إنشاء سجل لخطة الصيانة التي تقوم باستيرادها يدوياً. للقيام بذلك، اتبع الخطوات التالية:
  1. بدء تشغيل SQL Server إدارة Studio ومن ثم الاتصال بمثيل SQL Server 2005.
  2. للحصول على المعرف الفريد العمومي لخطة الصيانة التي تقوم باستيرادها، قم بتشغيل العبارات التالية.
    use msdb
    go
    select id from sysdtspackages90 where name='NewPlan'
    go
    ملاحظة: تفترض هذه العبارات استيراد خطة صيانة يسمى نيوبلان في المثيل الافتراضي ل SQL Server 2005.

    الحصول على المعرف الفريد العمومي التالية في العمود المعرف الناتج:
    6A7FA469-F5DB-4FF4-B153-5F11926477B7
  3. إنشاء مهمة تسمى نيوبلانجوب، وفوق صيانة قاعدة البيانات في القائمة فئة .
  4. المهمة الذي قمت بإنشائه في الخطوة 3، إنشاء خطوة جديدة تسمى نيوبلانستيب، ومن ثم انقر فوق حزمة خدمات تكامل خادم SQL في القائمة نوع .
  5. قم بإغلاق مربع الحوار المهمة الجديدة .
  6. للحصول على المعرف الفريد العمومي للخطوة التي قمت بإنشائها في الخطوة 4، قم بتشغيل العبارات التالية.
    use msdb
    go
    select job_id from sysjobsteps where step_name='NewPlanStep'
    go
    الحصول على المعرف الفريد العمومي التالية في العمود job_id الناتج:
    E85564E2-92A1-4B70-89DF-329F152CCD97
  7. الحصول على المعرف الفريد العمومي للسجل الذي لم يتم تحديثه في جدول نظام sysmaintplan_subplans عندما تقوم بإدراج خطة الصيانة. للقيام بذلك، اتبع الخطوات التالية:
    1. بدء تشغيل "استوديو تطوير ذكاء العمل" ثم قم بإنشاء مشروع جديد "تكامل الخدمات".
    2. في "مستكشف الحلول"، انقر بالزر الأيمن حزم مباحث أمن الدولة، وثم انقر فوق إضافة حزمة موجودة.
    3. إضافة خطة الصيانة نيوبلان للمشروع الحالي من موقع الحزمة الصحيحة.
    4. في "مستكشف الحلول"، انقر نقراً مزدوجاً فوق الحزمة المستوردة.
    5. في طريقة العرض "تصميم"، انقر فوق المهمة التي لها اسم مشابهة لما يلي:
      التقارير المهمة ل subplan-{1EFB298F-1313-4A26-8986-A5C9C5A0C2AB}
      في هذا المثال، 1EFB298F-1313-4A26-8986-A5C9C5A0C2AB هو GUID.
  8. لإدراج سجل المطلوب في جدول نظام sysmaintplan_subplans ، تشغيل العبارة التالية في Studio إدارة ملقم SQL.
    insert into sysmaintplan_subplans (
    subplan_id,
    subplan_name,
    subplan_description,
    plan_id,
    job_id
    )values (
    '1EFB298F-1313-4A26-8986-A5C9C5A0C2AB',
    'NewPlan','',
    '6A7FA469-F5DB-4FF4-B153-5F11926477B7',
    'E85564E2-92A1-4B70-89DF-329F152CCD97'
    )
    GO
  9. لإصلاح الأمر المهمة الذي قمت بإنشائه في الخطوة 3، تشغيل العبارة التالية.
    update sysjobsteps 
    set command='/Server YourServer /SQL "Maintenance Plans\NewPlan" /set "\Package\NewPlan.Disable;false"'
    where step_name='NewPlanStep'
    ملاحظة: في هذا البيان، يورسيرفير عنصرا نائبا لاسم الملقم.

الحالة


أقرت Microsoft أن هذا هو الشوائب في منتجات Microsoft المسردة في قسم "تنطبق على".