تحديد حالات فشل المصادقة والتخويل

مكتمل

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

خطأ عابر

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

تحدث أخطاء عابرة في أثناء إعادة تكوين قاعدة البيانات لحدث مخطط له أو حدث غير مخطط له. عادة ما تكون هذه الأحداث قصيرة ويجب ألا تستغرق أكثر من 60 ثانية لإكمالها.

فيما يلي قائمة ببعض الأخطاء العابرة التي قد تتلقاها التطبيقات عند الاتصال بقاعدة بيانات Azure SQL:

  • لا يمكن فتح قاعدة البيانات "%.*ls" التي طلبها تسجيل الدخول. فشل تسجيل الدخول.
  • لا يمكن معالجة الطلب. لا توجد موارد كافية لمعالجة الطلب.
  • لا يمكن معالجة الطلب. هناك عدد كبير جداً من العمليات قيد التقدم للاشتراك "%ld".

كيفية مراقبة أخطاء الاتصال العابرة

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

منطق إعادة المحاولة

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

نوصي بالانتظار لمدة 5 ثوانٍ كحد أدنى عند إعادة المحاولة الأولى. كل محاولة لاحقة، يجب أن تزيد التأخير بشكل كبير، بحد أقصى 60 ثانية.

إشعار

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

تعذر تسجيل الدخول إلى الخادم

عند حدوث الخطأ فشل تسجيل الدخول للمستخدم '< اسم المستخدم >'، يمكن لمسؤول الخدمة اتباع الخطوات التالية:

  1. تحقق مما إذا كان تسجيل الدخول معطلًا باستخدام طريقة عرض الكتالوج sys.sql_logins.
  2. إذا تم تعطيل تسجيل الدخول، فقم بتشغيل ALTER LOGIN <User name> ENABLE; لتمكينه.
  3. إذا لم يكن تسجيل الدخول موجودًا، فقم بإنشائه باستخدام العبارة CREATE LOGIN.
  4. الاتصال إلى قاعدة البيانات التي تريد منح المستخدم حق الوصول إليها، وقم بتشغيل العبارة CREATE USER.
  5. إما تعيين دور للمستخدم باستخدام الأمرALTER ROLE، أو منح المستخدم حق الوصول إلى كائن قاعدة بيانات واحد أو أكثر باستخدام الأمر GRANT.

سلسلة الاتصال

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

تسمح لك بوابة Azure الإلكترونية باسترداد سلسلة الاتصال التي تحتاج إليها للتفاعل مع قاعدة بيانات Azure SQL.

  1. من مدخل Microsoft Azure، حدد كافة الخدمات، ثم قواعد بيانات SQL. تصفية قاعدة البيانات وتحديدها.

  2. على الشفرة الخاصة بقاعدة البيانات، حدد سلاسة الاتصال.

    Connection string page for a selected SQL Database

  3. انسخ سلسلة الاتصال وحررها عن طريق تضمين كلمة المرور الخاصة بك، أو استبدال اسم الخادم حسب الحاجة.

  4. راجع سلسلة الاتصال المحدثة في تطبيق العميل.

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