فهرست مطالب

آموزش رفع خطای Error Establishing Database Connection در وردپرس

آموزش رفع خطای Error Establishing Database Connection در وردپرس

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

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

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

خطای Error Establishing Database Connection چیست؟

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

هنگامی که وردپرس نتواند به پایگاه داده متصل شود، فرآیند بارگذاری سایت متوقف شده و پیام Error Establishing Database Connection نمایش داده می‌شود.

به زبان ساده، این خطا به این معناست که:

  • اطلاعات ورود به دیتابیس نادرست است.
  • سرویس MySQL یا MariaDB در دسترس نیست.
  • پایگاه داده آسیب دیده است.
  • سرور قادر به پاسخ‌گویی به درخواست‌های دیتابیس نیست.

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

نشانه‌های ایجاد این خطا

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

  • صفحه اصلی سایت فقط پیام Error Establishing Database Connection را نمایش می‌دهد.
  • سایت برای کاربران باز می‌شود اما ورود به پیشخوان امکان‌پذیر نیست.
  • فقط بخش مدیریت وردپرس با این خطا مواجه می‌شود.
  • سایت به‌صورت مقطعی در دسترس است و سپس دوباره خطا نمایش داده می‌شود.
  • هنگام نصب یا به‌روزرسانی وردپرس این پیام ظاهر می‌شود.

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

انواع نمایش خطای اتصال به دیتابیس

ممکن است این خطا با پیام‌های مختلفی نمایش داده شود، از جمله:

  • Error Establishing Database Connection
  • Database Connection Error
  • Unable to Connect to Database
  • Error Connecting to Database
  • MySQL Server Has Gone Away
  • Can’t Connect to MySQL Server
  • Database Connection Failed
  • Access Denied for User

اگرچه متن این پیام‌ها متفاوت است، اما همگی نشان می‌دهند که وردپرس نتوانسته ارتباط موفقی با پایگاه داده برقرار کند.

علت ارور Error Establishing Database Connection

علت ارور Error Establishing Database Connection

ارور Error Establishing Database Connection زمانی رخ می‌دهد که وردپرس نتواند ارتباط موفقی با پایگاه داده برقرار کند. برخلاف تصور بسیاری از کاربران، این مشکل فقط به اشتباه بودن رمز عبور دیتابیس محدود نمی‌شود و عوامل مختلفی می‌توانند باعث قطع ارتباط بین وردپرس و MySQL یا MariaDB شوند. مستندات رسمی وردپرس نیز اشتباه بودن اطلاعات wp-config.php، مشکلات هاست و حتی آلوده شدن سایت را از مهم‌ترین دلایل این خطا معرفی می‌کند.

1. اشتباه بودن اطلاعات فایل wp-config.php

رایج‌ ترین علت این خطا، نادرست بودن اطلاعات اتصال به پایگاه داده در فایل wp-config.php است.

وردپرس برای اتصال به دیتابیس از چهار مقدار اصلی استفاده می‌کند:

  • نام دیتابیس (DB_NAME)
  • نام کاربری دیتابیس (DB_USER)
  • رمز عبور دیتابیس (DB_PASSWORD)
  • آدرس سرور دیتابیس (DB_HOST)

اگر حتی یکی از این مقادیر اشتباه باشد، ارتباط با پایگاه داده برقرار نخواهد شد و پیام Error Establishing Database Connection نمایش داده می‌شود. این مورد اولین موضوعی است که وردپرس برای عیب‌یابی آن توصیه می‌کند.

نشانه‌ها

  • خطا بلافاصله بعد از انتقال سایت
  • تغییر رمز دیتابیس
  • ساخت دیتابیس جدید
  • بازیابی بکاپ

2. تغییر رمز عبور دیتابیس

گاهی مدیر سایت رمز عبور کاربر MySQL را از طریق کنترل‌پنل هاست تغییر می‌دهد، اما مقدار جدید را در فایل wp-config.php وارد نمی‌کند.

در این حالت وردپرس همچنان تلاش می‌کند با رمز قدیمی به دیتابیس متصل شود و اتصال رد می‌شود.

این اتفاق بعد از افزایش امنیت هاست یا تغییر رمز توسط شرکت هاستینگ نیز مشاهده می‌شود.

3. اشتباه بودن DB_HOST

بسیاری از کاربران تصور می‌کنند مقدار DB_HOST همیشه باید localhost باشد.

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

  • 127.0.0.1
  • localhost:3306
  • localhost:3307
  • mysql.example.com
  • آدرس اختصاصی سرور دیتابیس

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

4. از کار افتادن سرویس MySQL یا MariaDB

گاهی مشکل اصلاً از وردپرس نیست.

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

این مشکل معمولاً به دلایل زیر ایجاد می‌شود:

  • ری‌ استارت سرور
  • بروزرسانی MySQL
  • کرش کردن سرویس
  • مصرف بیش از حد RAM
  • پر شدن فضای دیسک

در چنین شرایطی تنها شرکت هاستینگ می‌تواند وضعیت سرویس را بررسی و آن را مجدداً راه‌اندازی کند.

5. خراب شدن جداول پایگاه داده

در برخی مواقع خود دیتابیس آسیب می‌بیند.

دلایل این مشکل می‌تواند شامل موارد زیر باشد:

  • خاموش شدن ناگهانی سرور
  • قطع برق
  • اختلال هنگام بروزرسانی
  • خرابی دیسک
  • خطاهای MySQL

اگر یکی یا چند جدول وردپرس خراب شده باشند، ممکن است سایت با پیام اتصال به دیتابیس یا خطاهای مرتبط با جداول مواجه شود.

یکی از نشانه‌های این مشکل نمایش پیام زیر در پیشخوان است:

.One or more database tables are unavailable

6. محدودیت منابع هاست

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

نتیجه این وضعیت می‌تواند نمایش خطای اتصال به پایگاه داده باشد.

نشانه‌ ها

  • خطا فقط در ساعات پرترافیک رخ می‌دهد.
  • پس از چند دقیقه سایت دوباره در دسترس قرار می‌گیرد.
  • سایر سایت‌های روی همان هاست نیز کند شده‌اند.

این موضوع در انجمن‌های پشتیبانی وردپرس نیز یکی از دلایل رایج گزارش شده است.

7. خراب شدن فایل‌ های هسته وردپرس

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

این اتفاق معمولاً بعد از موارد زیر پیش خواهد آمد:

  • بروزرسانی ناموفق
  • انتقال ناقص فایل‌ها
  • حذف تصادفی فایل‌ها

8. آلوده شدن سایت به بدافزار

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

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

9. تغییر Prefix جداول

وردپرس هنگام نصب از پیشوندی مانند wp_ برای نام جداول استفاده می‌کند.

اگر مقدار:


$table_prefix

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

این مشکل معمولاً پس از انتقال سایت یا بازیابی بکاپ مشاهده می‌شود.

10. اختلال موقت در شرکت هاستینگ

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

نمونه‌هایی مانند:

  • ری‌ استارت MySQL
  • بروزرسانی سرور
  • قطعی شبکه داخلی دیتاسنتر
  • مشکلات ذخیره‌سازی (Storage)

می‌توانند باعث شوند اتصال وردپرس به دیتابیس برای مدت کوتاهی قطع شود.

اگر پس از بررسی تنظیمات wp-config.php همچنان مشکل پابرجاست، بهترین اقدام تماس با پشتیبانی هاست و درخواست بررسی وضعیت سرویس MySQL، لاگ‌های سرور و منابع مصرفی است.

آموزش رفع ارور Error Establishing Database Connection در وردپرس

آموزش رفع ارور Error Establishing Database Connection در وردپرس

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

مرحله اول: بررسی فایل wp-config.php

در بیشتر مواقع، علت اصلی این خطا در فایل wp-config.php قرار دارد.

این فایل اطلاعات اتصال وردپرس به پایگاه داده را نگهداری می‌کند و شامل چهار مقدار اصلی است:

define('DB_NAME', 'database_name');
define('DB_USER', 'database_user');
define('DB_PASSWORD', 'database_password');
define('DB_HOST', 'localhost');

موارد زیر را با اطلاعات موجود در کنترل‌پنل هاست یا phpMyAdmin مقایسه کنید:

  • نام دیتابیس
  • نام کاربری دیتابیس
  • رمز عبور
  • آدرس سرور دیتابیس (DB_HOST)

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

مرحله دوم: بررسی وضعیت سرویس MySQL یا MariaDB

اگر اطلاعات فایل wp-config.php صحیح است، بررسی کنید که سرویس پایگاه داده فعال باشد.

در هاست‌های اشتراکی معمولاً باید از شرکت هاستینگ بخواهید وضعیت MySQL یا MariaDB را بررسی کند.

در سرورهای اختصاصی یا VPS نیز می‌توانید وضعیت سرویس را بررسی و در صورت نیاز مجدداً راه‌اندازی کنید.

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

مرحله سوم: تعمیر دیتابیس وردپرس

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

در فایل wp-config.php این خط را اضافه کنید

 define('WP_ALLOW_REPAIR', true);

سپس آدرس زیر را در مرورگر باز کنید:

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

در این صفحه دو گزینه مشاهده خواهید کرد:

Repair Database
Repair and Optimize Database

ابتدا گزینه Repair Database را اجرا کنید.

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

مرحله چهارم: بررسی دسترسی کاربر دیتابیس

گاهی نام کاربری و رمز عبور صحیح هستند، اما کاربر مجوز دسترسی به دیتابیس را ندارد.

در cPanel وارد بخش:

MySQL Databases

شوید و بررسی کنید که:

کاربر به دیتابیس متصل باشد.
گزینه ALL PRIVILEGES برای آن فعال باشد.

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

مرحله پنجم: بررسی لاگ‌های خطا

اگر همچنان علت مشخص نیست، فایل‌های لاگ را بررسی کنید.

مهم‌ترین فایل‌ها عبارت‌اند از:

  • PHP Error Log
  • MySQL Error Log
  • MariaDB Log
  • Hosting Error Log

در بسیاری از موارد، علت واقعی مانند موارد زیر در این فایل‌ها ثبت می‌شود:

  • Access denied
  • Too many connections
  • Connection refused
  • MySQL server has gone away
  • Table crashed

بررسی این گزارش‌ها می‌تواند زمان عیب‌یابی را به‌شدت کاهش دهد.

مرحله ششم: فعال کردن حالت Debug وردپرس

اگر اطلاعات کافی در لاگ‌ها وجود ندارد، حالت دیباگ را فعال کنید.

در فایل wp-config.php مقادیر زیر را قرار دهید:

define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', false);

پس از ایجاد مجدد خطا، فایل زیر را بررسی کنید:

wp-content/debug.log

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

مرحله هفتم: بررسی با WP-CLI

اگر به SSH دسترسی دارید، WP-CLI ابزار بسیار مناسبی برای بررسی سلامت دیتابیس است.

بررسی وضعیت دیتابیس:

wp db check

تعمیر دیتابیس:

wp db repair

این دستورات از اطلاعات اتصال موجود در wp-config.php استفاده می‌کنند و در بسیاری از موارد بدون نیاز به ورود به phpMyAdmin، وضعیت دیتابیس را بررسی یا تعمیر می‌کنند.

تجربه عملی تیم جتی سایت

در بسیاری از پرونده‌های پشتیبانی وردپرس، رایج‌ترین علت این خطا یکی از سه مورد زیر بوده است:

  • تغییر رمز عبور دیتابیس بدون به‌روزرسانی wp-config.php
  • اختلال یا توقف سرویس MySQL در هاست
  • اشتباه بودن مقدار DB_HOST پس از انتقال سایت به هاست جدید

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

جمع‌ بندی

خطای Error Establishing Database Connection یکی از مهم‌ترین خطاهای وردپرس است که نشان می‌دهد ارتباط بین وردپرس و پایگاه داده برقرار نشده است. این مشکل ممکن است به دلیل اشتباه بودن اطلاعات فایل wp-config.php، اختلال در سرویس MySQL یا MariaDB، خرابی جداول دیتابیس، محدودیت منابع هاست یا تغییرات نادرست در تنظیمات سرور ایجاد شود.

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

اگر این خطا برای مدت طولانی برطرف نشود، علاوه بر خارج شدن سایت از دسترس کاربران، ربات‌های گوگل نیز قادر به خزش صفحات نخواهند بود. ادامه این وضعیت می‌تواند باعث کاهش نرخ Crawl، حذف تدریجی صفحات از ایندکس و افت ترافیک ارگانیک سایت شود. به همین دلیل، رسیدگی سریع به این خطا نه‌تنها برای حفظ عملکرد سایت، بلکه برای حفظ وضعیت سئو نیز اهمیت زیادی دارد.

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