حل مشكلة: خطأ في إنشاء اتصال بقاعدة البيانات – Error Establishing a Database Connection

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

سبب المشكلة:

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

يحتاج الووردبريس إلى المعلومات التالية للاتصال بقاعدة البيانات:

  • اسم قاعدة البيانات – Database name.
  • اسم مستخدم – Database username.
  • كلمة مرور قاعدة البيانات – Database password.
  • خادم قاعدة البيانات – Database server.

يتم تخزين هذه المعلومات في ملف إعداد الووردبريس والذي يسمى (wp-config.php).

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

بمعنى آخر؛ عندما يتعذر على الووردبريس الوصول إلى المعلومات الموجودة في قاعدة البيانات لأي سبب كان، سوف يظهر هذا الخطأ.

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

ملاحظة: غالباً ما يكون سبب هذه المشكلة هو قيام المستخدم بإدخال معلومات قاعدة البيانات بشكل خاطئ (خصوصاً عند تنصيب الووردبريس بشكل يدوي).


ما الحل؟

الحل غالبًا يكون بمراجعة قاعدة البيانات والتأكد من عدم وجود أي تلفيات أو معلومات خاطئة بالملف، ويكون ذلك في أكثر من صورة:

الحل #1: التحقق من معلومات وبيانات قاعدة البيانات

السبب الأكثر شيوعاً هو أن تكون معلومات قاعدة البيانات غير صحيحة.

الووردبريس يقوم بتخزين المعلومات المتعلقة بقاعدة البيانات في ملف (wp-config.php)، ولذلك سنحتاج إلى تحرير الملف وتعديله والتأكد منه.

الخطوات:

  1. تسجيل الدخول إلى لوحة التحكم والذهاب إلى مدير الملفات أو استعمال FTP.
  2. الوصول إلى المجلد (public_html) ثم (wp-config.php) وفتح الملف لتحريره.

3. ستبحث عن الأسطر التالية في ملف (wp-config.php).


حيث:

  •  database_name: هو اسم قاعدة البيانات الخاصة بالووردبريس.
  • username: هو اسم مستخدم قاعدة البيانات.
  • password: هو كلمة مرور “Password” مستخدم قاعدة البيانات.
  • localhost: هو اسم الخادم، ويختلف من شركة استضافة لأخرى؛ هنا نحتاج إلى التأكد من المعلومات الموجودة المتعلقة باسم قاعدة البيانات واسم المستخدم وكلمة المرور ومضيف قاعدة البيانات.

4. من داخل لوحة التحكم، عليك الذهاب إلى قسم (Database) ومن ثم إلى (MySQL & Database).

5. بعد ذلك ستفتح صفحة جديدة حيث يمكنك معرفة اسم قاعدة البيانات واسم المستخدم.

6. يجب عليك التأكد هنا من المعلومات الموجودة ومقارنتها مع المعلومات الموجودة في ملف (wp-config.php) والتعديل بناءْا على ذلك.

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

الحل #2: إصلاح قاعدة بيانات الووردبريس

في بعض الأحيان تحتاج إلى تعديل قاعدة البيانات وإصلاحها لحل المشكلة، وذلك من خلال التعديل في ملف (wp-config.php).

الخطوات:

  1. تسجيل الدخول إلى لوحة التحكم والوصول إلى ملف (wp-config.php) وفتح الملف لتحريره.
  2. إضافة الكود التالي
define('WP_ALLOW_REPAIR', true);

3. بعد ذلك عليك فتح الرابط التالي في متصفحكhttp://example.com/wp-admin/maint/repair.php، مع تبديل example.com برابط موقعك.
4. بعد ذلك ستفتح لك صفحة جديدة تمكنك من التعديل على قاعدة البيانات، وما عليك سوى الضغط على “Repair Database”.

بعد ذلك؛ من المفترض أن يعمل موقعك بشكل سليم.

ملاحظة: لا يحتاج المستخدم إلى تسجيل الدخول للوصول إلى صفحة إصلاح قاعدة البيانات، وبمجرد الانتهاء من إصلاح قاعدة البيانات وتحسينها؛ تأكد من إزالة الكود الذي قمت بإضافته في ملف wp-config.php بالخطوة رقم (2).

في حال بقيت المشكلة موجودة، يجب عليك الانتقال إلى الحل التالي.

الحل #3: التحقق من تعطل خادم قاعدة البيانات

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

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

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

وإذا لم تكن تملك موقعاً آخر، فيمكنك التأكد من صلاحيات مستخدم قاعدة البيانات من خلال هذه الخطوات:

  1. عليك بإنشاء ملف جديد باسم (connection.php) ووضع الكود التالي بداخله.
<?php
$link = mysqli_connect('localhost', 'username', 'password');
if (!$link) {
die('Could not connect: ' . mysqli_error());
}
echo 'Connected successfully';
mysqli_close($link);
?>

2. لا تنس استبدال (localhost) باسمِ الخادم و(root) باسمِ مستخدم قاعدة البيانات و(pass) بكلمة سر قاعدة البيانات، ثم قم بحفظ الملف.
4. الآن قم باستدعاء الملف فى المٌتصفح، بالذهاب للرابط التالي yoursite.com/connection.php، فإذا أظهر لك “Connected successfully” فهذا يعني أن خادم قواعد البيانات يعمل بشكل سليم، والآن يجب عليك العودة لمَلف (wp-config.php) والتأكد من أنك قُمت بكتابة البيانات بشكل سليم.
إذا ظهرت لك رسالة “Could not connect:” فهذا يعني أن المُستخدم ليس لديه الصلاحيات اللازمة للاتصال بخادم قواعد البيانات، ويجب عليك مُراجعة شركة الاستضافة.

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

كيفية تجنب هذه المشكلة مستقبلاً:

لا يوجد طريقة مضمونة 100% ولكن يمكن تجنب هذه المشكلة من خلال الاعتماد على استضافة جيدة والقيام بأخذ نسخة احتياطية من الموقع بشكل دوري.

اقرأ أيضًا: مشاكل الووردبريس الأكثر شيوعًا، وطرق حلها

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