خطای اتصال به دیتابیس وردپرس و چگونگی رفع آن
خطای اتصال به دیتابیس وردپرس یکی از متداول ترین خطاهایی است که کاربران وردپرس با آن مواجه هستند. این خطا با خطای صفحه سفید مرگ رابطه تنگاتنگی دارد. خطای برقراری اتصال با دیتابیس به این معنی است که وب سایت شما با دیتابیس وردپرس ارتباط برقرار نمی کند و به آن دسترسی ندارد. به این ترتیب کل وب سایت شما در معرض شکست قرار می گیرد و تأثیر مستقیمی روی فروش، ترافیک و آنالیتیکس وب سایت شما دارد.
در این مقاله عللی که باعث بروز خطای برقراری اتصال با دیتابیس وردپرس می شوند را بررسی کرده و راه های رفع این خطا را توضیح می دهیم.
خطای اتصال به دیتابیس وردپرس چیست؟
پایگاه داده شما از زبانی به نام MySQL استفاده می کند و وب سایت شما به یک زبان سمت سرور به نام PHP وابسته است. تمام اطلاعات موجود در وب سایت وردپرسی شما مانند داده نوشته ها، داده برگه ها، اطلاعات متا، تنظیمات افزونه ها، اطلاعات ورود به سیستم و غیره در پایگاه داده ذخیره می شوند.
هرگاه آدرس URL وب سایت شما در مرورگر وارد شود، وردپرس با استفاده از PHP تمام اطلاعات مربوط به صفحه را از پایگاه داده بازیابی کرده و آنها را برای مرورگر بازدید کننده ارسال می کند.
خطای اتصال به دیتابیس وردپرس به این دلیل است که اتصال MySQL-PHP به دلایلی قطع شده است. در این حالت هیچ داده ای برای رندر کردن صفحه بازیابی نمی شود. این خطا نه تنها باعث می شود فرانت اند سایت شما از کار افتاده و چیزی مشاهده نشود بلکه دسترسی شما به پیشخوان وردپرس را نیز قطع می کند و صفحه ای مشابه شکل زیر مشاهده می کنید.
وقتی بازدیدکنندگان سایت هنگام وقوع این خطا سعی می کنند به وب سایت شما دسترسی پیدا کنند، یک کد 500 وضعیت HTTP ایجاد می شود. این کد وضعیت مشابه کدی است که هنگام خطای سرور داخلی ظاهر می شود و به این معنی است که مشکلی در سمت سرور به وجود آمده است و منابع درخواستی تحویل داده نشده اند.
در قسمت بعدی آموزش به دلایل قطع شدن ارتباط MySQL-PHP و وقوع خطای اتصال به دیتابیس وردپرس می پردازیم.
دلایل وقوع خطای اتصال به دیتابیس وردپرس
هریک از حالات زیر می تواند باعث بروز این خطا شود:
- رایج ترین دلیل بروز خطای برقراری اتصال به دیتابیس وردپرس این است که نام کاربری و رمز عبور ورود به سیستم پایگاه داده شما تغییر کرده باشد. سایت وردپرس شما برای اتصال به پایگاه داده MySQL از اطلاعات ورود جداگانه ای استفاده می کند. حتی اگر خودتان اطلاعات ورود را تغییر نداده باشید، ممکن است به دلایلی این اتفاق رخ دهد.
- پایگاه داده شما خراب شده باشد. گاهی اوقات دیتابیس در اثر حذف و نصب بسیار زیاد افزونه ها و قالب ها توسط کاربران، پاک شدن یا خراب شدن یکی از جداول یا پاک شدن بعضی اطلاعات به صورت تصادفی از کار افتاده و خراب می شود.
- در نصب وردپرس شما فایل های خراب وجود داشته باشد. گاهی اوقات هکرها باعث خراب شدن فایل های نصب وردپرس می شوند.
- مشکل مربوط به سرور پایگاه داده شما باشد. به عنوان مثال ممکن است پایگاه داده در اثر ترافیک بالا اور لود شده باشد و در اثر اتصالات همزمان پاسخگو نباشد. این موضوع در مورد هاست های اشتراکی که از منابع یکسانی استفاده می کنند صادق است.
- اگر یک افزونه که خوب کد گذاری نشده است نصب کنید، ممکن است پایگاه داده شما خراب شود.
- مشترک با هاست مشترک زیرا آنها از همان منابع برای بسیاری از کاربران در همان سرورها استفاده می کنند.
رفع ارور برقراری اتصال با دیتابیس وردپرس
قبل از اینکه اقدام به رفع خطای برقراری اتصال به دیتابیس وردپرس کنید حتماً از وب سایت خود پشتیبان تهیه کنید. برای این کار می توانید از بهترین افزونه های پشتیبان گیر وردپرس استفاده کنید.
به 5 روش می توانید خطای برقراری اتصال به دیتابیس وردپرس را رفع کنید:
- بررسی کنید که نام کاربری و رمز عبور ورود به دیتابیس وردپرس شما صحیح است.
- دیتابیس خراب را با مد تعمیر درون ساخته دیتابیس وردپرس که به صورت define(‘WP_ALLOW_REPAIR’, true); است، تعمیر کنید.
- فایل های خراب را تعمیر کنید.
- با فراهم کننده خدمات هاستینگ خود برای رفع مشکلات مربوط به سرور دیتابیس صحبت کنید.
- آخرین پشتیبانی که از وب سایت خود گرفته اید را بازیابی کنید.
در ادامه آموزش به بررسی دقیق تر روش های فوق می پردازیم.
1- نام کاربری و رمز عبور ورود به دیتابیس خود را بررسی کنید.
اگر هنگامی که سعی می کنید آدرس URL وب سایت خود را وارد کنید (فرانت اند) و هنگامی که می خواهید وارد /wp-admin/ (بک اند) شوید با پیغام خطای یکسان error establishing a database connection روبرو می شوید با خطای اتصال به دیتابیس وردپرس روبرو شده اید و در اولین اقدام باید نام کاربری و رمز عبور ورود به پایگاه داده وردپرس خود را بررسی کنید.
متداول ترین دلیل ایجاد خطای اتصال به دیتابیس وردپرس بخصوص پس از مهاجرت به یک ارائه دهنده خدمات هاستینگ جدید، همین مورد است و عموماً به این دلیل اتفاق می افتد که فایل wp-config.php به درستی توسط سیستم آپدیت نشده است.
جزئیات اتصال به سایت وردپرس شما در فایل wp-config.php ذخیره می شود که عموماً در root سایت وردپرس شما قرار دارد.
wp-config.php ضروری ترین فایل وردپرس است که تمام اطلاعات دیتابیس را شامل می شود. این فایل چهار قطعه اطلاعات بسیار مهم دارد که درست بودن همه آنها برای یک اتصال موفق لازم است. این چهار قطعه اطلاعات عبارتند از:
نام دیتابیس
// ** MySQL settings ** //
/** The name of the database for WordPress */
define('DB_NAME', 'xxxxxx');
نام کاربری دیتابیس MySQL
/** MySQL database username */
define('DB_USER', 'xxxxxx');
رمز عبور دیتابیس MySQL
/** MySQL database password */
define('DB_PASSWORD', 'xxxxxxxxx');
نام هاست (سرور) MySQL که در بیشتر موارد localhost است (همچنین به جای لوکال هاست می تواند یک آدرس IP باشد).
/** MySQL hostname */
define('DB_HOST', 'localhost');
برای دسترسی به فایل wp-config.php می توانید ارتباط با وردپرس از طریق FTP ایجاد کنید. به این صورت که با استفاده از FTP به سایت خود وصل شده و به root سایت خود که معمولاً فولدر public_html است، بروید.
فایل wp-config.php را پیدا کرده و روی آن کلیک راست کنید. یک ویرایشگر کد مانند Sublime را انتخاب کرده و فایل را باز کنید.
هنگامی که فایل wp-config.php را باز کردید می توانید چهار متغیر ضروری برای اتصال به دیتابیس که در کد تعریف شده اند را به صورت زیر ببینید.
مقادیر را یادداشت کنید. حال به هاستینگ خود مراجعه کرده و آنها را با مقادیر موجود در هاستینگ مقایسه کنید. این دو مقدار باید یکی باشند. در غیر این صورت فایل را ویرایش کرده و مقادیر درست را وارد کنید. سپس مجدداً آن را آپلود نمایید.
2- تعمیر دیتابیس خراب
اگر هنگامی که سعی می کنید وارد بک اند سایت خود (یعنی /wp-admin/) شوید، چنین پیام خطایی مشاهده می کنید:
“One or more database tables are unavailable. The database may need to be repaired”
دیتابیس شما خراب است و برای رفع خطای اتصال به دیتابیس وردپرس باید آن را تعمیر کنید.
برای تعمیر دیتابیس می توانید از مد تعمیر پایگاه داده وردپرس استفاده کنید. برای فعال کردن ویژگی تعمیر درون ساخته وردپرس باید به ترتیب زیر عمل کنید.
از طریق FTP به سایت خود متصل شده و وارد فولدر public_html (فولدر root سایت) شوید. فایل wp-config.php را پیدا کرده و یک ویرایشگر کد مانند Subime را برای باز کردن فایل انتخاب کنید.
پس از باز کردن فایل wp-config.php، خط زیر را به انتهای فایل اضافه کنید.
define('WP_ALLOW_REPAIR', true);
حال آدرس اینترنتی yourwebsite.com/wp-admin/maint/repair.php را در مرورگر خود وارد کنید. (به جای yourwebsite.com آدرس واقعی خود را وارد کنید). صفحه ای مشابه شکل زیر مشاهده می کنید.
اگر گزینه “تعمیر و بهینه سازی پایگاه داده” را انتخاب کنید. اگرچه زمان بیشتری طول می کشد اما مشکل را به صورت جامع تری حل می کند.
این صفحه تعمیر بدون نیاز به لاگین کردن قابل دسترسی است بنابراین بلافاصله پس از تعمیر و بهینه سازی، کدی که به فایل wp-config.php اضافه کرده بودید را پاک کنید.
3- تعمیر فایل های خراب
دلیل دیگری که ممکن است باعث ایجاد خطای اتصال به دیتابیس وردپرس شود این است که فایل های شما خراب شده باشند. شما می توانید این مشکل را به راحتی برطرف کنید.
در این روش باید نسخه اصلی وردپرس را در سایت خود جایگزین قبلی کنید. شما کاری به افزونه ها، قالب ها یا رسانه ندارید و تنها فایل های هسته وردپرس را جایگزین می کنید.
برای این کار نسخه جدید وردپرس را از سایت رسمی وردپرس فارسی دانلود کنید.
فایل را در کامپیوتر خود unzip کنید. فولدر wp-content و فایل wp-config-sample.php را پاک کنید. زیرا نمی خواهید این فایل ها جایگزین شوند.
بقیه فایل ها را از طریق FTP در سایت خود آپلود کنید. به این ترتیب فایل هایی که ممکن است مشکل ساز باشند بازنویسی می شوند.
توصیه می شود بعد از انجام این کار حافظه کش مرورگر خود را پاک کنید. سپس سایت وردپرس خود را بررسی کنید تا ببینید هنوز خطایی وجود دارد یا خیر.
4- مشکل با سرور دیتابیس
اگر هیچ یک از روش های فوق مشکل شما را برطرف نکرد بهتر است با ارائه دهنده هاستینگ خود صحبت کنید. زیرا این خطا می تواند به دلیل وجود مشکل در سرور پایگاه داده شما باشد. به عنوان مثال اگر اتصالات همزمان بسیار زیادی به یکباره به پایگاه داده شما اعمال شود، می تواند باعث ایجاد خطای اتصال به دیتابیس وردپرس شود. این امر به این دلیل است که بسیاری از میزبان ها محدودیت هایی در رابطه با تعداد اتصالات به طور همزمان دارند.
5- آخرین نسخه پشتیبان سایت در حالت سلامت را بازیابی کنید.
همیشه در صورت نیاز می توانید آخرین نسخه پشتیبان سایت خود در حالت سلامت را بازیابی کنید. در بسیاری موارد اگر نگران از بین رفتن اطلاعات بین آخرین نسخه پشتیبان و لحظه وقوع خطا نیستید، سریع ترین روش حل مشکل همین روش است. بسیاری از هاست ها فرآیند بازیابی نسخه پشتیبان را دارند. توجه داشته باشید که باید هم دیتابیس و هم فایل های خود را بازیابی کنید.
امیدواریم این آموزش مورد توجه و استفاده شما قرار گرفته باشد. اگر شما نیز این خطا را تجربه کرده اید تجربیات خود را با ما در میان بگذارید.
دیدگاه ها