حل مشكلة عدم القدرة على الوصول إلى قاعدة بيانات Oracle بعد تثبيت ASP.NET. لقد نسيت المكان الذي نشرت فيه هذه المقالة.
بعد تثبيت ASP.NET وعميل Oracle9i، تلقيت الرسالة التالية عند استخدام System.Data.OracleClient للوصول.
تتطلبقاعدة بيانات Oracle
System.Data.OracleClient إصدار برنامج عميل Oracle 8.1.7 أو أحدث
والسبب هو أن
إعدادات مصادقة الأمان الخاصة بعميل Oracle 9i Release 2 غير صحيحة عند تثبيتها على قسم NTFS في Windows، مما يؤدي إلى المصادقة المحلية. المستخدمون غير قادرين على رؤية محتويات دليل ORACLE_HOME؛ يؤدي هذا إلى الإبلاغ عن الخطأ أعلاه عندما يستخدم ASP.NET System.Data.OracleClient للاتصال بقاعدة بيانات Oracle بأذونات المستخدمين المعتمدين.
الحل
لحل المشكلة المذكورة أعلاه، ما عليك سوى إضافة إذن الوصول إلى دليل Oracle Home إلى مجموعة Authenticated Users
لتسجيل
الدخول إلى Windows باستخدام أذونات المسؤول.
ابدأ تشغيل متصفح موارد Window وابحث عن دليل ORACLE_HOME، مثل C:Oracleora92
انقر بزر الماوس الأيمن على القائمة المنبثقة وحدد المشاركة والأمان للدليل (انقر فوق خصائص ضمن نظام التشغيل Win2000)
انقر فوق علامة التبويب "الأمان" وانقر فوق العنصر "المستخدمون المعتمدون" في قائمة أسماء المجموعات والمستخدمين.
في قائمة أذونات المستخدم، قم بإلغاء تحديد خانة الاختيار "القراءة والتشغيل" وانقر فوق خانة الاختيار "القراءة والتشغيل" مرة أخرى لتعيينها عند تحديدها. انقر فوق الزر "متقدم" وحدد عنصر الإذن وحدد ما إذا كان "المستخدمون المعتمدون" قد تم تحديده أذونات "القراءة والتشغيل" التي تنطبق على "هذا المجلد والمجلدات الفرعية والملفات". إذا لم يكن الأمر كذلك، فانقر فوقه نقرًا مزدوجًا وتأكد من أن الأذونات "تنطبق على" "هذا المجلد" والمجلدات الفرعية والملفات". هذا العنصر مهم جدًا مهم ويجب عليك التحقق منه.
انقر فوق الزر "موافق" لإعادة التشغيل حتى تدخل جميع التغييرات حيز التنفيذ
======================= == ===========
لم يتم تسجيل موفر "OraOLEDB.Oracle.1" على الجهاز المحلي. هناك ثلاثة أسباب محتملة لهذا الموقف:
1. هل الجهاز مثبت عليه Oracle على NTFS؟ إذا كان الأمر كذلك، قم بتحرير كافة أذونات BIN ضمن Ora81 لجميع المستخدمين.
(وإلا، سيتم الإبلاغ عن هذا الخطأ ضمن بنية B/S لأنه لا يوجد إذن للوصول إلى الدليل)
2. إذا كان خادم قاعدة البيانات هو Oracle816. ابحث عن ملف sqlnet.ora ضمن Ora81networkADMIN على جهاز الخادم وقم بتغيير ملف
SQLNET.AUTHENTICATION_SERVICES= (NTS) تم تغييره إلى
SQLNET.AUTHENTICATION_SERVICES= (لا يوجد)
(سيؤدي هذا إلى قيام بعض الأجهزة بالإبلاغ عن أخطاء فشل تهيئة برنامج التشغيل، والتي حدثت مرة واحدة عند استخدام OracleClient)
3. إذا لم يحل أي مما سبق المشكلة. يمكنك التفكير فيما إذا كان التسجيل في السجل قد فقد بالفعل. (الاحتمال صغير نسبيًا، النوافذ لا تزال آمنة نسبيًا)
regsvr32 ..ORACLE_HOMEbinOraOLEDB.dll
إذا كان لا يزال لا يعمل، يمكنك محاولة إعادة تثبيت العميل.