Skip to main content

لرن بلاگ

تصویر مربوط به بنر مقاله خطای اتصال به پایگاه داده

خطای Establishing a Database Connection در وردپرس

مقدمه

خطای اتصال به پایگاه داده یا Establishing a Database Connection در وردپرس به این معنا است که سایت شما نمی‌تواند با پایگاه داده MySQL ارتباط برقرار کند. این مسئله باعث می‌شود که سایت شما از دسترس خارج شده و دیگر قابل استفاده نباشد. البته همه خطاها و مشکلاتی که در کار با وردپرس پیش می‌آید، لزوماً در یک دوره آموزش وردپرس گفته نمی‌شود. از همین رو برای اینکه یک وردپرس کار حرفه‌ای شوید، نیاز دارید یک کتاب وردپرس یا مقالات مرتبط با آموزش وردپرس را هم مطالعه کنید. شاید رایج‌ترین روش برای حل این مشکل بررسی صحت اطّلاعات مرتبط با پایگاه داده در فایل wp-config.php باشد. امّا به هر حال با مشاهده این خطا، سایت شما از دسترس همگان (حتی خود شما) خارج می‌شود. نگران نباشید! زحمتی که برای تولید محتوا سایت خود کشیده‌اید، از بین نرفته است! محتوای سایت شما همچنان در پایگاه داده وجود دارد. مشکل فقط در این است که وردپرس نمی‌تواند با آن پایگاه داده ارتباط برقرار کند. این خطا یکی از رایج‌ترین خطاها در سایت‌های وردپرسی است. معمولاً بدون نیاز به هیچ ابزار خارجی (نصب افزونه وردپرس و...) قابل حل است. در بسیاری از موارد هم زمان زیادی از شما نمی‌گیرد و در مدت زیر 30 دقیقه قابل برطرف کردن است. در این مقاله بر آن شدیم تا به شما توضیح دهیم چه چیزی باعث به وجود آمدن این خطا می‌شود. اینکه چگونه بتوانید منبع آن را تشخیص داده و به صورت گام‌به‌گام برطرفش کنید، از دیگر مباحث این مقاله است.

معنای عبارت Error Establishing a Database Connection

می‌توان گفت وردپرس تمامی اطّلاعات سایت شما را در یک پایگاه داده MySQL ذخیره می‌کند. اطّلاعات مربوط به نوشته‌ها، صفحات، نظرات، حساب‌های کاربری، تنظیمات افزونه‌ها و … همگی باید در پایگاه داده قرار بگیرند تا سایت شما به درستی عمل کند.

تنها مواردی که در پایگاه داده وجود ندارند، فایل‌های رسانه‌ای سایت و فایل‌های مربوط به کدهای سایت هستند. هر زمان که فردی از سایت شما بازدید می‌کند، کدهای PHP توسط وردپرس اجرا شده و سایت شما به پایگاه داده MySQL متصل می‌شود. به این ترتیب اطّلاعات و محتوای مرتبط از پایگاه داده فراخوانی شده و در صفحه‌ای که کاربر قصد بازدید آن را دارد، نمایش داده می‌شوند. چنین فرآیندی در هر بار لود شدن صفحه سایت صورت می‌گیرد.

اگر به دنبال یادگیری زبان php هستید و می‌خواهید ولو در حد مقدّماتی با زبان پشتوانه سیستم مدیریت محتوای وردپرس بیشتر آشنا شوید، ما در سایت لرن بلاگ یک دوره آموزش زبان php مقدماتی برای شما تهیه کرده‌ایم.

زمانی که ارتباط بین php و MySQL میسر نشود، وردپرس نمی‌تواند هیچ‌گونه اطّلاعاتی را بازیابی کند. لذا هیچ محتوایی برای نمایش ندارد. در چنین حالتی تنها یک صفحه سفید به شما نشان می‌دهد که در بالای آن عبارت Error Establishing a Database Connection نوشته شده است:

نمایش خطای establishing a database connection در وردپرس

معنای خطای اتصال به پایگاه داده این بود که خدمت شما عرض کردیم. چنین خطایی باعث می‌شود کل سایت شما دچار مشکل شود. یعنی هم بخش فرانت (قسمتی که برای کاربران قابل رؤیت است) و هم بخش بک (قسمت داشبورد وردپرس که برای ادمین سایت در دسترس است) از دسترس خارج می‌شوند. در نتیجه شما نمی‌توانید به سایت وارد شوید، محتوای خود را ویرایش کنید یا هر تغییر دیگری در داشبورد سایت وردپرسی خود اعمال کنید.

نکته‌ای که باید به آن توجه داشته باشید این است که برخی سرورهای میزبانی سایت یا برخی افزونه‌های وردپرسی مانند افزونه wp-rocket از سیستم کش و حافظه مرورگر کمک می‌گیرند تا سرعت لود صفحات سایت بهتر گردد. این‌کار می‌تواند باعث شود کاربرانی که قبلاً صفحه‌ای از سایت شما را در مرورگر خودشان باز کرده‌اند، بعد از این خطا نیز همچنان بتوانند به محتوای صفحه دسترسی داشته باشند.

امّا نباید اشتباه کنید. ارتباط سایت شما به طور کامل با پایگاه داده قطع شده و این مسئله نیز با پاک کردن کش مرورگر به حالت نمایش همان خطا باز می‌گردد.

همان‌طور که قبلاً هم گفتیم در اینجا فقط یک خطای اتصال به پایگاه داده رخ داده است، نه اینکه داده‌های شما آسیب دیده باشند یا از بین رفته باشند. لذا نیازی نیست که به یک متخصص مراجعه کنید یا در سایت‌های فریلنسری برای رفع این مشکل از فریلنسرها کمک بخواهید. با رفع مشکل اتصال، داده‌های شما نیز مجدداً در سایت نمایش داده می‌شوند.

دلیل خطای اتصال به پایگاه داده

دلایل متعدّدی را می‌توان برای خطای Establishing a Database Connection برشمرد. در ادامه مهم‌ترین و رایج‌ترین علل این موضوع را آورده و هر یک را به اختصار شرح داده‌ایم.

اطّلاعات نادرست اتصال به پایگاه داده

این دلیل مهم‌ترین و رایج‌ترین دلیل خطای مذکور است. وردپرس اطلاعات مربوط به پایگاه داده شما را در فایلی به نام wp-config.php ذخیره می‌کند. این اطلاعات به طور کلّی چهار مورد مهم زیر هستند.

  • نام پایگاه داده که معمولاً با DB_NAME در فایل دیده می‌شود.
  • نام کاربر پایگاه داده که به صورت DB_USER نام‌گذاری می‌گردد.
  • رمز عبور پایگاه داده که نامش DB_PASSWORD است.
  • نام سرور یا هاست پایگاه داده که با DB_HOST نمایش داده می‌شود.

هر یک از این موارد که به صورت غلط در فایل مذکور مقداردهی شده باشد، موجب می‌گردد تا وردپرس نتواند به پایگاه داده متصل گردد. مشابه آن است که بخواهید با یک کلید غلط وارد یک ساختمان شوید.

چنین مسئله‌ای معمولاً در زمانی رخ می‌دهد که شما سایت خود را به یک هاست جدید انتقال داده باشید یا ارائه‌دهنده سرور میزبانی شما رمز عبور پایگاه داده داده را مجدداً تنظیم کرده باشد (مثلاً به خاطر به‌روز‌رسانی سرور یا …). گاهی هم ممکن است مشغول ویرایش فایل wp-config.php باشید و یک خطای تایپی یا کدنویسی از شما سربزند که موجب به وجود آمدن مشکل در اتصال به پایگاه داده شود.

سرور پایگاه داده خاموش باشد

یکی دیگر از علل به وجود آمدن خطای Establishing a Database Connection آن است که سرور پایگاه داده شما خاموش بوده یا از دسترس خارج شده باشد. همان‌طور که می‌دانید پایگاه داده MySQL باید بر روی یک سرور وب اجرا شود.

اگر این سرور یا همان هاست وب سایت دچار مشکلی شود یا حافظه آن پر شود یا به دلیل درخواست‌های همزمان فراوان به نوعی شلوغ و مختل شده باشد، وردپرس نمی‌تواند به پایگاه داده دسترسی پیدا کند.

چنین مسئله‌ای بخصوص در هاست‌های اشتراکی (یکی از انواع هاست وب سایت) رخ می‌دهد. زیرا در اینگونه هاست‌ها، اطّلاعات سایت‌های مختلف (شاید صدها سایت) بر روی یک سرور به صورت اشتراکی اجرا و بارگذاری می‌شوند. حجم ترافیک ناگهانی بالا در سایت شما یا سایر سایت‌هایی که در هاست اشتراکی شما میزبانی می‌شوند، ممکن است باعث اختلال در عملکرد سرور شود.

جداول مشکل‌دار در پایگاه داده

وردپرس دارای ساختاری پویا است. این مسئله بدین معناست که هر زمان شما تغییری در سایت وردپرسی خود می‌دهید (مثلاً افزونه‌ای را نصب می‌کنید، تنظیماتی را در وردپرس به‌روز می‌کنید یا …) وردپرس با پایگاه داده در حال تعامل خواهد بود. اطلاعات را از پایگاه داده خوانده یا آن‌ها را مجدداً در جداول مختلف موجود در این پایگاه ثبت می‌کند.

به مرور زمان در اثر این تعاملات، ممکن است جداول دچار خطا شوند. مثلاً قطعی موقت سرور در یکی از این تعاملات باعث به هم ریختگی یا ثبت اشتباه یا ناقص داده‌ها در جداول گردد. زمانی که چنین مسائلی در پایگاه داده سایت شما رخ دهد، با گونه مشابهی از خطای Establishing a Database Connection روبه‌رو می‌شوید. ممکن است پیامی به شکل زیر مشاهده کنید:

One or more database tables are unavailable. The database may need to be repaired.

وجود فایل‌های خراب در وردپرس

یکی دیگر از دلایل خطای اتصال پایگاه داده آن است که خود فایل‌های php که در پشت صحنه، سیستم وردپرس را مدیریت می‌کنند، دچار ایراد و اشکال باشند. این مسئله معمولاً وقتی رخ می‌دهد که شما در به‌روزرسانی فایل‌ها یا محتوا با خطاهایی مواجه شوید یا در هنگام انتقال سایت از یک هاست به هاست دیگر، فایل‌ها دچار مشکل شوند.

خلاصه به هر دلیل، اگر فایل‌های اصلی که مسئول برقراری ارتباط با پایگاه داده هستند، دچار خطا یا نقصانی شوند، مسلماً ارتباط با پایگاه داده شکل نمی‌گیرد و شما خطای Establishing a Database Connection را شاهد خواهید بود. هرچند اطّلاعات مربوط به اتصال به پایگاه داده نیز به ظاهر درست تعریف شده باشند.

آدرس اشتباه سایت در پایگاه داده

البته این مورد از دلایل خطای اتصال به پایگاه داده بسیار نادر است، اما ارزش ذکر کردن را دارد. معمولاً چنین خطایی در هنگام تغییر هاست وب سایت رخ می‌دهد.

جالب است بدانید وردپرس آدرس سایت1URL شما را در جدولی به نام wp_options در پایگاه داده ذخیره می‌کند. اگر مقدار ذخیره شده در این جدول (مثلاً بعد از تغییر هاست یا دامنه یا انتقال سایت) با آدرس سایت فعلی شما تطابق نداشته باشد، ممکن است در نهایت باعث به وجود آمدن خطای اتصال به پایگاه داده شود.

عیب یابی سریع خطای Establishing a Database Connection

قبل از اینکه بخواهید اقدامی در جهت رفع خطا انجام دهید، بهتر است ابتدا منبع و منشأ آن را بررسی کنید. ما در ادامه مقاله به صورت گام‌به‌گام شما را راهنمایی می‌کنیم تا بتوانید خطای مذکور را در سایت خود برطرف کنید.

اما شناخت محل خطا کمک می‌کند تا فرآیند کار به صورت سریع‌تری رخ دهد. دوستانی که با وردپرس کار کرده‌اند و می‌دانند وردپرس چیست، قطعاً آگاه‌ هستند که این سیستم مدیریت محتوا از دو حالت فرانت (نمایش ظاهر سایت) و بک‌اند (داشبورد مدیریتی سایت) شکل گرفته است. طبق جدول زیر متوجه می‌شوید که کار خود را از کدام گام این راهنما آغاز کنید:

محل نمایش خطاعلّت احتمالی خطاآغاز کار از گام ...
هم بخش فرانت هم قسمت ادمینمشکل اطلاعات پایگاه داده یا مشکلات مرتبط با سرور وباز گام 2 شروع کنید
فقط در بخش فرانت و ظاهر سایتتنظیمات اتصال به پایگاه داده‌ یا عدم تطابق آدرس سایتاز گام 4 آغاز کنید
فقط در بخش بک‌اند و داشبورد وردپرسخطاهای مربوط به ناسازگاری قالب یا افزونه‌ها یا دسترسی فایل‌هااز گام 6 اقدام کنید

نکته مهم: برای اینکه بتوانید سریع فرآیند عیب یابی را انجام دهید، ابتدا به بخش phpMyAdmin در کنترل پنل‌ هاست خود وارد شوید. اگر این بخش برای شما به خوبی لود می‌شود و می‌توانید جداول یا پایگاه داده را مشاهده کنید، یعنی سرور پایگاه داده شما به خوبی کار می‌کند و مشکلی ندارد. این مسئله گزینه‌های عیب یابی شما را محدودتر می‌کند؛ یعنی یا مشکل از فایل wp-config.php و اطّلاعات ارتباط با پایگاه داده است یا فایل‌های خود سیستم وردپرس دچار عیب و اختلالی شده‌اند.

راهنمای گام‌به‌گام رفع خطای Establishing a Database Connection

به جهت سهولت کار شما در رفع خطای اتصال به پایگاه داده، این راهنمای گام‌به‌گام را تهیه کردیم. سعی کنید مراحل را به ترتیب ذکرشده بررسی کنید. به ترتیب از رایج‌ترین خطاها و راه‌حل‌ها شروع کرده و سپس به سراغ نادرترین آن‌ها می‌رویم. بعد از انجام هر راهکار، مجدداً سایت خود را بررسی کنید تا ببینید مشکل برطرف شده است یا خیر.

گام اوّل: بک‌آپ‌گیری از سایت

اهمیّت تهیه بک آپ‌ سایت بخصوص در فرآیندهای مرتبط با عیب‌یابی وب سایت‌ها بر کسی پوشیده نیست. قبل از آن‌که بخواهید هرگونه تغییری در سایت یا فایل‌های آن بدهید، یک بک‌آپ‌ از سایت خود تهیه کنید.

البته این موضوع بستگی به این دارد که هاست شما از چه نرم‌افزارهایی برای مدیریت کارها استفاده می‌کند. دوستانی که می‌دانند ابزار cPanel چیست و در هاست خود از آن استفاده می‌کنند، احتمالاً با نحوه بک‌آپ‌گیری در این ابزار نیز آشنایی دارند.

همچنین در مقاله بک‌آپ‌ دایرکت ادمین به چگونگی انجام بک‌آپ‌ در هاست‌هایی که از این سیستم استفاده می‌کنند، پرداخته‌ایم. امّا اگر هیچ ابزاری هم برای انجام بک‌آپ‌ در اختیار ندارید، خیلی نگران نباشید! راهکارهایی که در ادامه ذکر می‌شوند، تغییرات کوچک و برگشت‌پذیری روی سایت شما به وجود می‌آورند. به عنوان یک قاعده کلی همواره به خاطر داشته باشید که قبل از آغاز فرآیندهای عیب‌یابی و رفع مشکل، از سایت خود بک‌آپ‌ بگیرید.

گام دوم: بررسی اطّلاعات پایگاه داده در فایل wp-config.php

از آنجایی که اطلاعات نادرست پایگاه داده، رایج‌ترین علّت خطای Establishing a Database Connection است، کار خود را از اینجا آغاز می‌کنیم.

باید اطّلاعات ثبت شده در فایل wp-config.php را با اطّلاعات دقیق مربوط به پایگاه داده سایت خود مقایسه کنید. برای این کار مراحل زیر را طی کنید:

باز کردن فایل wp-config.php

به بخش مدیریت فایل‌ها در هاست خود مراجعه کنید. همچنین می‌توانید از نرم‌افزارهایی مانند FileZilla ­کمک گرفته و به صورت FTP با بخش فایل‌ها در هاست خود ارتباط برقرار کنید.

به فولدر اصلی2root directory سایت خود مراجعه کنید. معمولاً در اکثر سایت‌ها این فولدر public_html نام‌گذاری شده است. در این پوشه باید بتوانید فایل wp-config.php را پیدا کنید. آن را باز کنید.

پیدا کردن اطّلاعات پایگاه داده

بعد از باز کردن فایل wp-config.php، در قسمت بالایی فایل به دنبال خطوط زیر باشید:

تصویر کدهای مربوط به پایگاه داده در وردپرس

تطابق اطّلاعات با پنل هاست

در مرحله بعدی از این گام به پنل هاست وب سایت خود وارد شوید. در بخش پایگاه‌های داده به دنبال پایگاه داده مرتبط با سایت وردپرسی خود بگردید و موارد زیر را به دقت بررسی کنید:

  • نام پایگاه داده که قرار است در بخش DB_NAME در فایل مذکور قرار بگیرد.
  • کاربر پایگاه داده که قرار است در بخش DB_USER قرار بگیرد.
  • توجه به این نکته که کاربر تمامی اختیارات3All Privileges را در پایگاه داده موردنظر داشته باشد.

اصلاح هرگونه عدم تطابق

بعد از بررسی اطّلاعات در پنل هاست و همچنین بررسی فایل wp-config.php، هرگونه عدم تطابق اطّلاعات را اصلاح کرده و فایل را ذخیره کنید. همچنین به نکات زیر نیز توجه داشته باشید:

  • فاصله اضافی بعد از نام‌کاربری یا رمزعبور آن وجود نداشته باشد. چون ممکن است در کدنویسی تأثیر گذاشته و باعث ایجاد خطا گردد.
  • پیشوندهای مربوط به هاست را درنظر داشته باشید. بسیاری از شرکت‌های هاست به نام پایگاه داده‌ و نام‌کاربری پیشوندهایی اضافه می‌کنند (مثلاً wp_db یا …). ­­نام کامل پایگاه داده یا کاربر آن (با لحاظ کردن پیشوند) را در فایل wp-config.php وارد کنید.
  • در مورد مقدار پارامتر DB_HOST توجه داشته باشید که اکثر شرکت‌های ارئه‌دهنده خدمات هاست از مقدار localhost برای این پارامتر استفاده می‌کنند­. امّا جهت اطمینان با مسئولین شرکت مرتبط با هاست وب سایت خود در ارتباط باشید.
  • در مورد رمز عبور هم توجه داشته باشید که ممکن است مقدار آن توسط شرکت (مثلاً در اثر به‌روز‌رسانی‌ها و …) تغییر کرده باشد. لذا اگر بعد از اعمال تغییرات مشکل اتصال به پایگاه داده حل نشد، در این مورد نیز با شرکت مربوطه در ارتباط باشید.

خلاصه بعد از انجام تغییرات در فایل wp-config.php مجدداً سایت خود را بررسی کنید. در اکثر موارد، در صورت صحت اطّلاعات مرتبط با پایگاه داده، باید مشکل حل شود. در غیر این صورت سایر مراحل و گام‌های این راهنما را دنبال کنید.

گام سوم: بررسی اتصال به پایگاه داده با کدنویسی

ممکن است اطلاعات مرتبط با پایگاه داده را چک کرده و از نظر شما کاملاً درست به نظر برسند، اما همچنان مشکل خطای اتصال به پایگاه داده برطرف نشده باشد. در اینجا است که داشتن دانش برنامه نویسی سایت به کمک شما می‌آید.

می‌توانید با نوشتن قطعه کدی مطمئن شوید که اساساً اطلاعات مربوط به پایگاه داده به درستی کار می‌کنند یا خیر. کد زیر را در فایلی با نام دلخواه و پسوند php در محل پوشه اصلی سایت وردپرسی خود ذخیره کنید. مثلاً فایل testdb.php را ایجاد کرده و کد را در آن وارد کنید:

<?php
$link = mysqli_connect('DB_HOST_value', 'DB_USER_value', 'DB_PASSWORD_value', 'DB_NAME_value');
if (!$link) {
  die('Connection failed: ' . mysqli_connect_error());
}
echo 'Connected successfully';
mysqli_close($link);
?>

توجه داشته باشید که قسمت‌های مرتبط با اطّلاعات پایگاه داده در کد فوق را با اطّلاعات درستی که در فایل wp-config.php وارد کرده بودید، جایگزین نمایید. سپس آدرس دامنه سایت خود را در مرورگر تایپ کرده و در انتهای آن نام فایل را نیز ذکر کنید. مثلاً عبارتی مشابه زیر:

https://yoursite.com/testdb.php

بعد از این بررسی، اگر عبارت Connected successfully را مشاهده کردید، یعنی اطّلاعات مربوط به پایگاه داده درست بوده و کار می‌کنند. لذا باید در میان فایل‌های سایت وردپرسی خود به دنبال راه‌حل مشکل بگردید (مراجعه به گام‌های 5 یا 6).

اما اگر خطایی به شما نشان داده شد، به معنای آن است که اطلاعات مرتبط با اتصال به پایگاه داده نادرست هستند یا سرور پایگاه داده شما در دسترس نیست. باید مجدداً از صحت اطلاعات اطمینان حاصل کنید یا با مسئولین هاست خود ارتباط برقرار کنید.

نکته امنیتی: توجه داشته باشید که بعد از انجام این قسمت، فورا فایل testdb.php را حذف کنید. زیرا اطلاعات مرتبط با پایگاه داده شما را در بر دارد و ممکن است خطراتی برای امنیت سایت شما داشته باشد.

گام چهارم: بررسی فعال بودن سرور پایگاه داده

گاهی اوقات مشکل خطای Establishing a Database Connection ارتباطی به اطّلاعات پایگاه داده یا فایل‌های سایت شما ندارد. بلکه خود سرور مربوط به پایگاه داده فعّال نیست و کار نمی‌کند.

برای چک کردن این موضوع به پنل هاست وب سایت وارد شده و سراغ بخش phpMyAdmin بروید. اگر این بخش به خوبی به شما نمایش داده می‌شود و می‌توانید جداول پایگاه‌های داده خود را مشاهده کنید، یعنی سرور شما مشکلی ندارد.

اما اگر در بارگذاری این بخش مشکلی دیده می‌شود یا خطایی ملاحظه می‌کنید، به معنای خاموش بودن یا غیرفعال بودن سرور پایگاه داده است.

برای حل این مشکل، باید با شرکت ارئه‌دهنده هاست خود ارتباط برقرار کرده و مسئله را به طور کامل گزارش دهید. حتماً قید کنید که فایل wp-config.php را هم بررسی کرده‌اید و مشکل از آن‌جا نبوده است.

تعمیر پایگاه داده وردپرس

اگر سرور پایگاه داده شما به خوبی کار می‌کند و اطلاعات اتصال نیز صحیح است، اما همچنان مشکل اتصال به پایگاه داده وجود دارد، به معنای آن است که احتمالاً مشکلی در جداول پایگاه داده شما وجود دارد. وردپرس خودش ابزاری برای تعمیر پایگاه داده دارد که در اینجا به کار شما می‌آید. برای استفاده از این ابزار مراحل زیر را طی کنید:

فعال‌سازی ابزار تعمیر

ابتدا باید این ابزار را در سایت خود فعّال کنید. برای این کار فایل wp-config.php را باز کرده و خط کد زیر را بالای قسمت کامنتی که در کد مشخص است، وارد کنید:

define( 'WP_ALLOW_REPAIR', true );
/* That’s all, stop editing! Happy publishing. */

سپس فایل را ذخیره کنید.

اجرا کردن ابزار تعمیر

بعد از فعال‌سازی ابزار، در مرورگر خود آدرس زیر را در بخش URL وارد کنید:

https://yoursite.com/wp-admin/maint/repair.php

باید دو گزینه که در تصویر زیر نیز مشخص هستند، برای شما قابل رؤیت باشند. گزینه اوّل Repair Database و گزینه دوم Repair and Optimize Database نام دارد. گزینه دوم را انتخاب کنید تا داده‌های جداول پایگاه‌های داده شما نیز پاک‌‌سازی و بهینه‌سازی شوند. به این ترتیب عملکرد سایت شما نیز بهینه‌سازی می‌شود.

تصویر مربوط به ابزار تعمیر در وردپرس

در این حالت، وردپرس هر جدول پایگاه داده‌ را بررسی کرده و نتایج را گزارش می‌کند. بعد از اتمام کار وردپرس، مجدداً سایت خود را بررسی کنید تا ببینید خطای اتصال به پایگاه داده برطرف شده است یا خیر.

حذف کد مربوط به تعمیر

بعد از اتمام کار حتماً مجدداً فایل wp-config.php را باز کرده و خط کد نوشته شده مربوط به WP_ALLOW_REPAIR را از آن حذف کنید. وجود این خطوط و ورود به بخش Repair توسط دیگران می‌تواند خطرات امنیتی برای سایت شما داشته باشد.

گام ششم: بررسی فایل‌های خراب در هسته وردپرس

اگر مراحل قسمت‌های مربوط به اتصال به پایگاه داده و تعمیرات آن به درستی انجام شده باشند، اما همچنان خطای اتصال به پایگاه داده وجود دارد، احتمالا مشکل از خود فایل‌های مربوط به وردپرس است.

برای اینکه بتوانید فایل‌های وردپرس را به خوبی تعمیر کنید، بهتر است فایل‌های به‌روز را از سایت اصلی دانلود کرده و جایگزین فایل‌های موجود کنید. برای اینکه محتوا، قالب و افزونه‌های سایت شما دچار به هم ریختگی نشوند، مراحل زیر را انجام دهید:

  • یک کپی جدید از فایل‌های وردپرس از سایت wordpress.org دانلود کنید.
  • فایل zip دانلودشده را در کامپیوتر خودتان از حالت فشرده خارج کنید.
  • به کمک FTP یا SFTP به سایت خود متصل شوید.
  • فایل‌های موجود در پوشه‌های wp-admin و wp-includes در سایت خود را با فایل‌های جدید دانلودشده جایگزین کنید. توجه داشته باشید که اشتباهاً فایل‌های موجود در پوشه wp-content را در سایت خود بارگذاری نکنید. زیرا این کار باعث از بین رفتن اطّلاعات تم‌ها، افزونه‌ها و یا فایل‌های آپلودی سایت می‌شود.

با این کار تمامی فایل‌های هسته اصلی وردپرس با فایل‌های تازه‌دانلودشده جایگزین می‌شوند. لذا اگر مشکلی در یکی از فایل‌ها بوده که باعث خطای Establishing a Database Connection شده بود، باید بعد از این کار مشکل برطرف شده باشد.

گام هفتم: بررسی اختیارات کاربر پایگاه داده

ممکن است اطّلاعات مرتبط با اتصال به پایگاه داده صحیح باشد، امّا کاربر پایگاه داده4database user اجازه‌ها و اختیارات لازم را برای دسترسی کامل به آن پایگاه داده نداشته باشد.

این مسئله ممکن است به علت تغییر هاست وب سایت یا تغییراتی که شرکت ارئه‌دهنده در تنظیمات پایگاه داده اعمال کرده، رخ دهد.

اگر هاست شما در محیط cPanel اجرا می‌شود، به قسمت MySQL Databases مراجعه کنید. سپس به قسمتی بروید که نشان می‌دهد کدام کاربر مربوط به کدام پایگاه داده است. بر روی همان کاربر کلیک کرده و مطمئن شوید که تیک تمامی اختیارات برای وی فعّال باشد. برای سایر نرم‌افزارهایی که ممکن است بر روی هاست شما نصب باشند (مانند پلسک یا دایرکت ادمین یا …) از مسئولین هاست خود راهنمایی بخواهید.

گام هشتم: تماس با شرکت ارئه‌دهنده هاست

مسلماً اگر هیچ کدام از گام‌های قبلی مشکل خطای سایت شما را برطرف نکند، این مشکل مربوط به خود سرور وب است. جایی که دیگر با تغییر فایل‌ها یا اطّلاعات مربوط به پایگاه داده نمی‌توان آن را برطرف کرد.

باید با مسئولین شرکت ارئه‌دهنده هاست ارتباط برقرار کرده و مشکل را به صورت دقیق گزارش کنید. سعی کنید موارد زیر را حتماً ذکر کنید.

  • متن دقیق پیغام خطا.
  • زمانی که اوّلین بار، این خطا به شما نشان داده شد.
  • تلاش‌های قبلی که برای حل مشکل انجام داده‌اید (تعمیر فایل‌های اصلی وردپرس، بررسی اطّلاعات اتصال به پایگاه داده و استفاده از ابزار تعمیر پایگاه داده).
  • اینکه خطا صرفاً در بخش فرانت سایت دیده می‌شود یا بخش داشبورد وردپرس یا در هر دو سمت.

یک شرکت ارئه‌دهنده خدمات هاست می‌تواند با بررسی لاگ‌های مربوط به مای اس کیو ال، راه‌اندازی مجدد سرویس‌ها یا برطرف کردن عیب‌های دیگری که در سمت سرور صورت می‌گیرد، علت مسئله را دریابد.

ممکن است علّت آن کمبود حافظه، تجاوز از محدودیت‌های اتصال به پایگاه داده یا حتی مشکلات سخت‌افزاری باشد. همه این‌ها نیازمند بررسی در سطح سرور توسط مسئولان شرکت دارد.

جمع‌بندی

ممکن است در نگاه اوّل خطای Establishing a Database Connection برای یک مالک سایت هولناک به نظر برسد. اما همان‌طور که در این راهنمای گام به گام ملاحظه کردید، می‌توان با یکی از این روش‌ها (که چندان هم پیچیده و وقت‌گیر نیستند) مشکل را برطرف کرد. معمولاً رایج‌ترین علّت این خطا همان اطّلاعات ناصحیح در فایل wp-config.php است که با بررسی دقیق فایل، می‌توان آن را برطرف نمود.

پاورقی:

دیدگاهتان را بنویسید

در صورتی که از خواندن مقاله فوق لذت برده‌اید، احتمالا مطالب کتاب های زیر نیز می تواند برای شما مفید باشد. توصیه لرن بلاگ آن است که چنین کتاب هایی را تهیه کرده یا در صورت وجود نسخه آنلاین، به مطالعه آنلاین آنها بپردازید: