fbpx

كيف تعالج خطأ إنشاء اتصال بقاعدة البيانات في ووردبريس

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

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

لِم يحدث هذا النوع من الأخطاء

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

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

لنفهم أولا ماهو هذا الخطأ

ووردبريس برنامج مبني على عمودين أساسيين من التكنولوجيا المتخصصة في برامج الويب، وهما لغة البرمجة PHP و نظام إدارة قاعدة البيانات MySQL.

PHP: هو لغة برمجة يستعمل في العديد من برامج الويب وهو الأكثر استعمالا من بين لغات البرمجة، وهو الذي يستعمله برنامج ووردبريس لبرمجة نواته وجميع القوالب والإضافات التي تستعمل فيه.

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

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

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

تأكد من أن المشكلة تحدث أيضا مع لوحة التحكم

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

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

إصلاح قاعدة البيانات ب phpMyAdmin

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

قبل الدخول إلى برنامج phpMyAdmin سنحتاج إلى معرفة اسم قاعدة البيانات الخاصة بالموقع، ولهذا ادخل إلى مدير الملفات في cPanel، ثم إلى المجلد publi_html وهو المجلد الذي يضم كل ملفات ووردبريس الخاص بموقعك، ابحث في هذا المجلد عن ملف اسمه wp-config.php وقم بفتحه كما هو موضح في الصورة:

فتح ملف wp-config

داخل هذا الملف، ابحث على السطر الذي كتب عليه define(“DB_NAME”, “aaa”). مكان الحروف “aaa” ستجد اسم قاعدة بيانات موقعك:

/** اسم قاعدة البيانات لووردبريس */

define( 'DB_NAME', 'aaa' );

الآن وبعد ان عرفنا ما هو اسم قاعدة البيانات الخاصة بموقعنا، نستطيع الدخول إلى برنامج phpMyAdmin من خلال لوحة إدارة الاستضافة cPanel، ستجده في قسم قواعد البيانات أو DATABASES، كما هو موضح في الصورة التالية:

phpMyAdmin من خلال cPanel

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

بعد دخولك للبرنامج، سترى في الجهة اليسرى لائحة تضم جميع قواعد البيانات المتوفرة لديك، اضغط على اسم قاعدة البيانات الذي وجدته داخل ملف wp-config.php لتفتح صفحة تضم كل جداول قاعدة البيانات، قم بنفس الخطوات التي تراها في الصورة التالية لإصلاح جميع الجداول:

انزل إلى أسفل لائحة جداول الموقع، ثم اضغط على “Check All” لتقوم بتحديد جميع الجداول، ثم انتقل إلى اليمين حيث لائحة الخيارات المتاحة، اضغط على اللائحة لتظهر لك كل الخيارات. لإصلاح قاعدة البيانات، اضغط على الخيار “Repair table”، انتظر قليلا ليتم تنفيذ الأمر.

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

تأكد من بيانات الاتصال بقاعدة البيانات

خطأ الاتصال بقاعدة البيانات يحدث أيضا إذا قمت بتغيير كلمة مرور قاعدة البيانات الخاصة بموقعك. لتتأكد من ان بيانات الدخول صحيحة، افتح ملف wp-config.php كما شرحنا في الأسطر السابقة، وتأكد من ان البيانات المكتوبة صحيحة، تأكد من أن اسم قاعدة البيانات صحيح، وأيضا تأكد من اسم المستعمل و كلمة المرور صحيحين.

// ** MySQL settings ** //

/** The name of the database for WordPress */

define( 'DB_NAME', 'database-name' );

/** MySQL database username */
define( 'DB_USER', 'database-username' );

/** MySQL database password */
define( 'DB_PASSWORD', 'database-password' );

/** MySQL hostname */
define( 'DB_HOST', 'localhost' );

بالنسبة لاسم خادم قاعدة البيانات، في أغلب الأحيان يكون هو “localhost” لكن يمكن ان يكون غير ذلك حسب الاستضافة. إذا لم تكن تعرف اسم الخادم، يمكنك أن تسأل الدعم الفني للاستضافة عنه.

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

تأكد من أن خادم قاعدة البيانات يستجيب

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

الكود بسيط جدا وهو كما يلي:

<?php
if (mysqli_connect('localhost', 'database-username', 'database-password')){
    die('Could not connect: ' . mysqli_error());
}

echo 'تم الاتصال بنجاح';

قم بنسخ هذا الكود داخل ملف وقم بتسميته dbtest.php مثلا، ثم قم بحفظه ورفعه إلى الاستضافة الخاصة بك داخل المجلد “public_html”. لا تنس تغيير database-username و database-password بالمعلومات الخاصة بقاعدة بيانات موقعك.

بعد رفع الملف في الاستضافة، قم بفتحه من خلال المتصفح الخاص بك، https://yourdomain.com/dbtest.php. طبعا باستعمال اسم دومين موقعك.

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

هل قمت بتنصيب قالب أو إضافة قبل وقوع الخطأ؟

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

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

تعطيل القالب أو الإضافة

لتعطيل القالب الحالي، ادخل إلى لوحة إدارة الاستضافة cPanel ثم إلى مدير الملفات، ثم إلى المجلد public_html، في هذا المجلد سترى جميع ملفات ومجلدات ووردبريس كما شرحنا سابقا. من هذه المجلدات لدينا wp_content,

ادخل إلى مجلد wp_content ثم إلى مجلد themes الذي ستراه في الداخل، والذي يحتوي على مجلدات جميع القوالب التي قمت بتنصيبها سابقا في موقعك.

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

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

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

استرجاع نسخة سابقة للموقع

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

اتصل بالدعم الفني للاستضافة

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

كيف تتفادى هذا الخطأ؟

لا يمكن الحديث عن تفادي المشكل بنسبة مائة في المائة لأنه في عالم المعلوميات كل ئيء وارد، لكن لمحاولة التقليل من حدوث الخطأ، هناك خطوتين أساسيتين:

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

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

إذا قمت بشراء الاستضافة عن طريق الرابط من هنا، فستحصل على تخفيض قد يصل إلى 60% من الثمن الأصلي، وسنحصل على عمولة بسيطة من الموقع,

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

أفضل طيرقة للحصول على نسخة احتياطية للموقع من خلال لوحة تحكم ووردبريس، هي باستعمال الإضافة UpdraftPlus، هذه الإضافة المجانية الرائعة توفر لك كل الأدوات التي تحتاج إليها لإدارة نسخك التجريبية و حفظها في أماكن بعيدة عن موقعك الأصلي لكي تستطيع استرجاعها كلما اقتضت الضرورة إلى ذلك. إذا كنت الانتقال إلى مستوى أعلى في إدارة نسخك الاحتياطيك مثل القيام بنسخ احتياطية بشكل آلي و دوري، أو الاحتفاظ بها في حسابك على Google Drive أو Dropbox فربما عليك أن تفكر في شراء النسخة المدفوعة UpdraftPlus Pro، فهي تستحق ذلك بالتأكيد لإدارة النسخ الاحتياطية بشكل أفضل بكثير.

هل حدث لك أمر مشابه في موقعك؟ كيف استطعت حل المشكل؟ أخبرنا عن تجربتك مع هذا الخطأ الشائع في التعليقات

مصدر الصورة الأصلية للمقالة Freepik

أضف تعليق