خطأ: قد تتلقى خطأ "تم رفض الوصول" رسالة عند استدعاء استعلام الموسعة الإجراء المخزن بعد الترقية من SQL Server 2000 إلى SQL Server 2000 Service Pack 4


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

الأعراض


بعد ترقية جهاز كمبيوتر يعمل بنظام التشغيل Microsoft SQL Server 2000 إلى Microsoft SQL Server 2000 Service Pack 4 (SP4)، قد يفشل استعلام SQL Server باستدعاء تسجيل الموسعة الإجراء المخزن، وتتلقى رسالة الخطأ التالية:
تم رفض الوصول.
تظهر رسالة خطأ عند استخدام أي من التسجيل الموسعة الإجراءات المخزنة في القائمة التالية:
  • xp_regread
  • xp_instance_regread
  • xp_regenumkeys
  • xp_instance_regenumkeys
  • xp_regenumvalues
  • xp_instance_regenumvalues
  • xp_regwrite
  • xp_instance_regwrite
  • xp_regaddmultistring
  • xp_instance_regaddmultistring
  • xp_regremovemultistring
  • xp_instance_regremovemultistring
  • xp_regdeletevalue
  • xp_instance_regdeletevalue
  • xp_regdeletekey
  • xp_instance_regdeletekey

السبب


تحدث هذه المشكلة لأن SQL Server 2000 SP4 يطبق القيد المفروض على أي مسارات التسجيل الموسعة الوصول إلى إجراءات مخزنة. عند استدعاء استعلام سجل الإجراء المخزن الموسع، يفحص التسجيل الموسعة الإجراء المخزن المفتاح الفرعي للتسجيل المطلوبة مقابل قائمة تحكم خلايا التسجيل. في حالة عدم وجود المفتاح الفرعي للتسجيل الذي يطلب الاستعلام في قائمة التحكم، تتلقى رسالة الخطأ التالية:
"تم رفض الوصول."
رسالة الخطأ هذه له علاقة مع أذونات حساب المستخدم SQL Server في سياق استدعاء أي من تسجيل هذه الإجراءات المخزنة الموسعة. ظهور رسالة الخطأ حتى إذا كان المستخدم لديه أذونات المسؤول.


ملاحظة: عندما تتلقى رسالة الإعلام بالخطأ، توسيع السجل إرجاع الإجراء المخزن أية نتائج.

الحل


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

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

لحل هذه المشكلة، تعديل مفتاح التسجيل الذي يتحكم في الوصول إلى التسجيل الموسعة تخزين الإجراءات. قائمة عنصر التحكم الموجود في التسجيل تحت المفتاح الفرعي MSSQLServer . لمثيل افتراضي ل SQL Server 2000، حدد موقع المفتاح الفرعي التالي في السجل:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\ExtendedProcedures
ملاحظة: لا يتم إنشاء مفتاح التسجيل هذا عند تطبيق SQL Server 2000 SP4 إلى مثيل SQL Server متفاوت المسافات.

للحصول على مثيل مسمى من SQL Server 2000، حدد المفتاح الفرعي التالي في التسجيل:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL < اسم > _ مثيل Server\ \MSSQLServer\ExtendedProcedure

ملاحظة: اسم _ مثيل هو اسم SQL Server 2000 مثيل مسمى.
في المفتاح الفرعي اكستينديدبروسيدوري ، توجد إدخالات التسجيل REG_MULTI_SZ اثنين:
  • Xp_regread مسموح المسارات
  • مسارات Xp_regwrite_Allowed
يحتوي الإدخال Xp_regread مسموح المسارات القائمة التالية قيم التسجيل المسموح بها للقراءة فقط تسجيل الإجراءات المخزنة الموسعة:
  • xp_regread
  • xp_instance_regread
  • xp_regenumkeys
  • xp_instance_regenumkeys
  • xp_regenumvalues
  • xp_instance_regenumvalues
يحتوي الإدخال Xp_regwrite مسموح مسارات على قائمة التسجيل المسموح بها قيم التسجيل الكتابة الموسعة تخزين الإجراءات التالية:
  • xp_regwrite
  • xp_instance_regwrite
  • xp_regaddmultistring
  • xp_instance_regaddmultistring
  • xp_regremovemultistring
  • xp_instance_regremovemultistring
  • xp_regdeletevalue
  • xp_instance_regdeletevalue
  • xp_regdeletekey
  • xp_instance_regdeletekey
للسماح بالوصول إلى المفتاح الفرعي للتسجيل الذي تريده، يمكنك أما حذف الإدخال Xp_regread مسموح المسارات أو مسارات Xp_regwrite_Allowed أو حذف الإدخالات. بالإضافة إلى ذلك، يمكنك تعديل القيم في الإدخال Xp_regread مسموح المسارات أو مسارات Xp_regwrite_Allowed وإضافة الإجراء المخزن الموسع الذي تريد الاستعلام للوصول إلى. إذا قمت بحذف الإدخال Xp_regwrite مسموح مسارات وإدخال Xp_regread مسموح المسارات ، يمكنك تعطيل التقييد لقيم التسجيل. لذلك، التسجيل الموسعة الإجراء المخزن السلوك يعود إلى سلوك ما SQL Server 2000 SP4. لتحقيق نفس النتيجة, يمكنك إزالة مفتاح التسجيل اكستينديدبروسيدوريس . نوصي بتوسيع كل قائمة بقيم تسجيل صالح بدلاً من تعطيل التقييد الذي يطبق SQL Server 2000 SP4.

Xp_regread مسموح المسارات

التالي نموذج لإدخال Xp_regread مسموح المسارات .

ملاحظة: يتم استبدال مثيل بالاسم الفعلي لمثيل من SQL Server.

Server\ SQL HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft < المثيل >

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\80

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer


HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Search


HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SQLServer


هكلوكلمشن المراسلة النظام الفرعي

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EventLog\Application\MSSQLServer


HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EventLog\Application\SQLCTRS

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EventLog\Application\SQLServer


HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSDTC

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSSQL$<INSTANCE>


HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SNMP\Parameters\ExtensionAgents

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SQLServer


HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlset\Services\SQLAgent$<INSTANCE>

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation


HKEY_CURRENT_USER\Software\Microsoft\Mail HKEY_CURRENT_USER\Control Panel\International

Xp_regwrite مسموح مسارات

التالي نموذج للإدخال Xp_regwrite مسموح مسارات .

ملاحظة: يتم استبدال مثيل بالاسم الفعلي لمثيل من SQL Server.

Server\ SQL HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft < المثيل >

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlset\Services\SQLAgent$<INSTANCE>

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\80\Replication

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


عندما تقوم بتثبيت SQL Server 2000 Service Pack 4، تعبئة برنامج التثبيت المسبق كل إدخال التسجيل Xp_regread مسموح المسارات وإدخال التسجيل Xp_regwrite مسموح مسارات باستخدام الإجراءات المخزنة الموسعة الوصول إلى SQL Server 2000.

لمزيد من المعلومات حول حزم خدمة SQL Server 2000، قم بزيارة موقع Microsoft التالي على الويب: