البرمجة

حل مشكلة SQL Server: Login Failed for User ‘VAIO\Guest’

في مواجهة هذا الخطأ الذي يظهر عند تشغيل برنامج C# الخاص بك للوصول إلى قاعدة البيانات SQL Server R2 عبر الشبكة، يظهر أن هناك مشكلة في عملية المصادقة (Authentication) التي يقوم بها البرنامج. يُظهر الخطأ “Login failed for user ‘VAIO\Guest'” أن هناك مشكلة في تسجيل الدخول باستخدام المستخدم ‘Guest’ على الحاسوب البعيد ‘VAIO’.

أولًا وقبل كل شيء، يجب التأكد من أنك قد قمت بتمكين وضع المصادقة المختلطة (Mixed Mode Authentication) في خادم SQL Server R2 الخاص بك. هذا يعني أنه يجب أن يكون بالإمكان تسجيل الدخول باستخدام حسابات SQL و Windows. يمكنك فعل ذلك من خلال استخدام SQL Server Management Studio والتحقق من إعدادات الخادم.

على سبيل المثال، يمكنك محاولة تغيير سلسلة الاتصال الخاصة بك لتستخدم اعتماد SQL بدلاً من الاعتماد على Windows. في حالتك، يبدو أنك تستخدم Integrated Security=true، وهو يحاول استخدام حساب Windows لتسجيل الدخول. جرب تعديل سلسلة الاتصال لتكون مشابهة للتالية:

csharp
"Data Source=192.168.1.101\SQLEXPRESS,1433;Initial Catalog=Login;User ID=sa;Password=23456;Connection timeout=30;"

يرجى التأكد من أنك قمت بتمكين حساب SQL Server للمستخدم ‘sa’ وتحديد كلمة مرور صحيحة له.

عند تغيير الاتصال، قد تحتاج أيضًا إلى إعادة تكوين إعدادات الأمان في قاعدة البيانات للسماح للمستخدم ‘sa’ بالوصول إلى البيانات. يمكنك فعل ذلك باستخدام SQL Server Management Studio.

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

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

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

  1. التحقق من حالة الخدمة:
    تأكد من أن خدمة SQL Server قيد التشغيل على الخادم البعيد (192.168.1.101). يمكنك فعل ذلك من خلال الذهاب إلى “SQL Server Configuration Manager” والتحقق من حالة الخدمة.

  2. تأكيد الوصول الشبكي:
    تأكد من أن الاتصال بين الحاسوب البعيد والخادم SQL Server يعمل بشكل صحيح. يمكنك استخدام أداة مثل “telnet” للتحقق من إمكانية الوصول إلى المنفذ 1433 على الخادم. مثلاً:

    yaml
    telnet 192.168.1.101 1433
  3. فحص السجلات (Logs):
    استعرض سجلات الأحداث في SQL Server للاطلاع على أي رسائل أخطاء إضافية. يمكنك استخدام SQL Server Management Studio للوصول إلى سجلات الأحداث.

  4. تفعيل تسجيل الدخول (Login Auditing):
    في بعض الأحيان، قد يكون هناك تفاصيل أكثر في تفعيل تسجيل الدخول لـ SQL Server. يمكنك تمكين هذا من خلال تحرير إعدادات الخادم.

  5. التحقق من حقوق الوصول:
    تأكد من أن المستخدم ‘sa’ لديه الصلاحيات الكافية على قاعدة البيانات المستهدفة. يمكنك استخدام SQL Server Management Studio للتحقق من ذلك.

  6. استخدام اسم الحاسوب بدلاً من العنوان الIP:
    قد تجرب استخدام اسم الحاسوب (VAIO) بدلاً من عنوان الـIP في سلسلة الاتصال، للتأكد من أنه لا يوجد أي مشكلة في الاستدلال على الحاسوب.

  7. تحديث برنامج .NET Framework:
    تأكد من أن برنامج .NET Framework الذي يستخدمه تطبيق C# الخاص بك هو نسخة متوافقة ومحدثة.

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

مقالات ذات صلة

زر الذهاب إلى الأعلى
إغلاق

أنت تستخدم إضافة Adblock

يرجى تعطيل مانع الإعلانات حيث أن موقعنا غير مزعج ولا بأس من عرض الأعلانات لك فهي تعتبر كمصدر دخل لنا و دعم مقدم منك لنا لنستمر في تقديم المحتوى المناسب و المفيد لك فلا تبخل بدعمنا عزيزي الزائر