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

اول: از کی شروع شد؟

وضعیت علت محتمل
بعد از انتقال هاست یا تغییر رمز دیتابیس مشخصات در wp-config.php (بخش ۱)
بعد از بازگردانی بکاپ یا ساخت دوباره‌ی دیتابیس کاربر به دیتابیس وصل نیست (بخش ۲)
سایت باز می‌شود ولی پیشخوان خطا می‌دهد جدول آسیب‌دیده (بخش ۳)
گاهی و در ساعات شلوغ پر شدن سقف اتصال یا منابع (بخش ۴)

۱. مشخصات دیتابیس در wp-config.php

فایل wp-config.php را در پوشه‌ی اصلی سایت باز کنید:

define( 'DB_NAME', 'user_dbname' );
define( 'DB_USER', 'user_dbuser' );
define( 'DB_PASSWORD', 'رمز' );
define( 'DB_HOST', 'localhost' );

هر چهار مقدار را با بخش MySQL Databases سی‌پنل تطبیق دهید:

  • نام دیتابیس و نام کاربر در سی‌پنل پیشوند حساب را دارند. نام کامل را بنویسید، نه فقط بخش دوم.
  • رمز، رمز کاربر دیتابیس است، نه رمز سی‌پنل. اگر مطمئن نیستید، از همان صفحه برای کاربر رمز تازه بگذارید و همان را در فایل بنویسید.
  • DB_HOST روی هاست سی‌پنل localhost است.
صفحه MySQL Databases در سی‌پنل برای ساخت دیتابیس
MySQL Databases در سی‌پنل: نام کامل دیتابیس و کاربر را از همین‌جا بردارید

۲. کاربر به دیتابیس وصل نیست

ساختن دیتابیس و کاربر کافی نیست؛ باید کاربر را به دیتابیس اضافه کنید. در MySQL Databases، بخش Add User To Database: کاربر و دیتابیس را انتخاب کنید و در صفحه‌ی بعد All Privileges را تیک بزنید. این مرحله بعد از انتقال و بازگردانی بکاپ زیاد جا می‌ماند. (راهنمای کامل)

۳. جدول آسیب‌دیده

اگر سایت بالا می‌آید ولی پیشخوان می‌گوید «One or more database tables are unavailable»، یکی از جدول‌ها خراب شده است. دو راه:

  • در MySQL Databases سی‌پنل، بخش Modify Databases، دیتابیس را انتخاب و Repair Database را بزنید.
  • یا در phpMyAdmin جدول‌ها را انتخاب و از فهرست پایین، Repair table را بزنید.
محیط phpMyAdmin برای خروجی گرفتن از دیتابیس
phpMyAdmin: بررسی و تعمیر جدول‌های دیتابیس

قبل از تعمیر، از دیتابیس خروجی بگیرید.

۴. خطا فقط در ساعات شلوغ

وقتی سایت به سقف منابع می‌رسد یا تعداد اتصال همزمان به دیتابیس پر می‌شود، وردپرس همین پیام را می‌دهد و چند دقیقه بعد خودش درست می‌شود. Resource Usage را ببینید. راه‌حل کوتاه‌مدت کش صفحه است (تا کمتر به دیتابیس درخواست برود) و راه‌حل بلندمدت در چرا سایت در ساعات شلوغ کند می‌شود آمده.

پیشوند جدول‌ها

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

اگر هنوز وصل نمی‌شود

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

سوال‌های رایج

این خطا یعنی سایتم هک شده؟

معمولاً نه. تقریباً همیشه مشخصات یا دسترسی است.

گوگل در این مدت صفحه‌هایم را حذف می‌کند؟

قطعی کوتاه اثری ندارد. اگر چند روز طول بکشد، بله؛ پس زود رفعش کنید.

خطاهای دیگر وردپرس را کجا ببینم؟

در خطاهای رایج وردپرس.