حل مشکل error establishing a database connection وردپرس

حل مشکل error establishing a database connection وردپرس

حل مشکل error establishing a database connection وردپرس

بروز رسانی در تاریخ 1395/06/23

سلام دوستان؛

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

در مقاله امروز می خواهیم خطای error establishing a database connection وردپرس را بررسی کنیم، راه حل آن را شرح دهیم و همچنین نوع نمایش آن را در زمان های رخ دادن خطا تغییر دهیم. با ما همراه باشید.

چرا با خطای پایگاه داده مواجه میشویم؟

در جوابی کوتاه میتوان گفت که خطای error establishing a database connection وردپرس زمانی مشاهده میشود که وردپرس امکان دسترسی به اطلاعات پایگاه داده یا دیتابیس را از دست می دهد. این خطا ممکن است ناشی از اشتباه بودن اطلاعات پایگاه داده شامل یوزرنیم، پسورد و نام دیتابس در فایل wp-config.php باشد. همچنین خرابی دیتابیس و از دست رفتن بخشی از اطلاعات میتواند کاربران را به این صفحه ترسناک منتقل کند. ولی این مشکل در سایت های ایرانی معمولا از طرف سرور و خرابی آن رخ میدهد.

مواردی را می توان برای حل این مشکل بررسی کرد که با هم به آنها می پردازیم:

بررسی عملکرد wp-admin

برای رفع این مشکل فایل wp-config.php را در ویرایشگر باز کرده و قطعه کد زیر را در آن وارد کنید:

define('WP_ALLOW_REPAIR', true);

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

repair-wordpress-database hamyarwp

با کمک گزینه های موجود می توانید خطای error establishing a database connection وردپرس را رفع کنید.اما اگر با کمک این گزینه، مشکل همچنان به قوت خود باقیست گزینه ی بعدی را امتحان می کنیم…

  آموزش رفع مشکل در بروزرسانی وردپرس و افزونه‌های آن

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

به جرات می توان گفت که فایل wp-config.php مهم ترین فایل در وردپرس و نصب آن به حساب می آید و می تواند وبسایت وردپرسی را به پایگاه داده متصل کند. در گام اول شما باید موارد زیر را حتما در نظر بگیرید و آن ها را بررسی کنید:

define('DB_NAME', 'database-name');
define('DB_USER', 'database-username');
define('DB_PASSWORD', 'database-password');
define('DB_HOST', 'localhost');

معمولا گزینه ی مربوط به DB_Host را به صورت پیش فرض یعنی همان localhost قرار می دهیم. اما ممکن است برخی از هاستینگ ها نامی دیگر تعریف کرده باشند که می توانید از آنها بپرسید. برخی نیز معتقد هستند که به جای نام پایگاه داده از آدرس آی پی آن استفاده شود بهتر است. مانند نمونه :

define('DB_HOST', '127.0.0.1:8889');

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

گاهی اوقات ترافیک سایت شما به حدی بالاست که هاست یا سرور جوابگوی آن نیست و در نتیجه مواجه شدن با خطای error establishing a database connection وردپرس امری عادی است. زیرا وب هاستینگ شما توان مدیریت کردن وبسایت را ندارد. در این زمان شما می توانید مشکل را با شرکت هاستینگ خود درمیان بگذارید.

تغییر ظاهر صفحه خطای پایگاه داده

در هر زمانی از شبانه روز ممکن است وبسایت شما با خطای error establishing a database connection وردپرس رو به رو شود و تا شما از این ماجرا مطلع شوید و به رفع آن بپردازید مدت زمانی صرف می شود. در این زمان متاسفانه کاربران وبسایت را مشاهده میکنند و این اتفاق خوبی را رقم نمیزند. پس باید کاری کنیم که در این زمان ها وبسایت به صورت اتوماتیک صفحه ی دیگری را نمایش دهد.

برای اینکار بر روی سرور یا هاست خود و در درون فولدر wp-content فایل جدیدی به نام db-error.php بسازید، سپس یک کد HTML از پیش طراحی شده را در آن قرار دهید. برای این صفحه شما میتوانید از هر کد یا تصویری استفاده کنید. فقط در نظر داشته باشید که به اطلاعات وردپرس و پایگاه داده آن دسترسی نخواهید داشت.

قطعه کد زیر به صورت نمونه ایجاد شده و شما می توانید طبق اطلاعات خود آن را تغییر دهید:

<?php
$link = mysql_connect('localhost', 'root', 'password');
if (!$link) {
die('Could not connect: ' . mysql_error());
}
echo 'Connected successfully';
mysql_close($link);
?>
آیا این مقاله برای شما مفید بود؟
تقریبا
خیر

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

تعداد علاقه‌مندانی که تاکنون عضو خبرنامه ما شده‌اند:

331,349 نفر

پاسخی بگذارید

دیدگاه‌های این نوشته جدید ترین ها شاخص

  1. 3 سال عضو همیار وردپرس

    سلام
    ممنون از مطلب خوب و مفیدتون
    من با این مشکل حدود هر 3 روز یکبار مواجه میشم و از طرف هاستینگ هم میگن که مشکل از طرف هاست نیست
    و تمام مواردی رو که میگین بررسی کردم و تقریبا هر 3 روز یک بار مشخصات اتصال با دیتا بیس من کلا عوض میشن یعنی انگار فایل wp-config.php به حالت اولیه بر میگرده و هیچ اطلاعاتی از دیتا بیس من در اون وجود نداره لطفا راهنمایی بفرمائید.
    با تشکر از سایت خوب همیار

  2. سلام
    من با این مشکل رو به رو شدم کد مربوطه ارو گذاشتم سایتم درست شد و قسمت تعمیر دیتا بیس برام نیومد. امیدوارم دیگه با این مشکل رو به رو نشم

  3. ممنون از مطلب مفیدتون مشکل من با انجام اولین مورد حل شد البته بعد از 10 بار امتحان کردن خخخخخخخخ

  4. <code class=”plain”>define(</code><code class=”string”>’WP_ALLOW_REPAIR'</code><code class=”plain”>, true);</code>

    سلام من کد بالا رو که گذاشتین رو اخر فایل گذاشتم دیگه نگفت رمزت اشتباس ولی کلا میزنه دیگه Parse error: syntax error, unexpected ‘&’ in C:\xampp\htdocs\wp-config.php on line 90 چکار کنم

  5. 3 سال عضو همیار وردپرس

    سلام
    من این کدی رو که نوشته بودید رو وارد کردم کلا دیگه صفحه سفید شده هیچی ننوشته مشکل از چیه؟

  6. سلام
    من از طریق هاست ویندوز plesk ورد پرس نصب کردم، بعد از اتمام کار و راه اندازی سایت از پنل هاست تو بخش تنظیمات ورد پرس site name رو از My Cms به Aramesh تغییر دادم. الان خطای پایگاه داده دارم . حتی قادر به لاگین کردن هم نیستم.
    متن کامل خطا :
    {“err_code”:0,”err_message”:”\u062e\u0637\u0627 \u062f\u0631 \u0628\u0631\u0642\u0631\u0627\u0631\u06cc \u0627\u0631\u062a\u0628\u0627\u0637 \u0628\u0627 \u067e\u0627\u06cc\u06af\u0627\u0647\u200c\u062f\u0627\u062f\u0647″} PHP Fatal error: Call to undefined function wp_cache_get() in C:\inetpub\vhosts\titoqc.ir\massagecenter.ir\wp-includes\functions.php on line 1367 Fatal error: Call to undefined function wp_cache_get() in C:\inetpub\vhosts\titoqc.ir\massagecenter.ir\wp-includes\functions.php on line 1367
    لطفا راهنمایی کنید. مرسی

  7. 4 سال عضو همیار وردپرس

    با سلام خدمت تمام اعضای زحمت کش گروه همیار وردپرس
    خواستم بخاطر آموزش های مفیدتون تشکر کنم و یه تشکر ویژه هم از خانم کوهستانی که واقعا مطالب آموزشی ایشون خیلی به درد من خورده

    خسته نباشید

  8. 4 سال عضو همیار وردپرس

    سلام.من قالب بیلد پرس رو خریدم و تمام افزونه ها رو هم نصب کردم.حالا موقعی میخوام قسمت پروژه ها رو با استفاده از افزونه essential grid اضافه کنم بهم ارور 503 میده؟مشکل از کجاست؟ به نظرتون؟
    ممنون

  9. سلام
    برای مشکل Unknown storage engine ‘InnoDB چیکار باید کرد؟

  10. سلام و خسته نباشید
    من تو ویندوز 10 همه کارا رو درست انجام دادم ,فکر کنم یه ده دفه ای هم یوز نیم وپسوردمو چک کردم ولی بازم ارور این ارور رو میده

    Warning: Cannot modify header information – headers already sent by (output started at C:\wamp\www\wordpress\wp-config.php:1) in C:\wamp\www\wordpress\wp-includes\functions.php on line 3503
    خطا در برقراری ارتباط با پایگاه‌داده
    چند دفه ای هم پاک کردم دوباره نصب کردم ولی نشد و مطمئن هستم که مشکل از یوزرنیم و پسورد نیست
    تو ویندوز هفت نصب کردم درست کار کرد
    ممنون میشم اگه کمک کنید

  11. 4 سال عضو همیار وردپرس

    من این خطا رو هنگام ورود به سایتم میبینم.لطفا راهنماییم کنید.
    Warning: mysql_connect(): Access denied for user ‘karizmah_asf43tv’@’localhost’ (using password: YES) in /home/karizmah/public_html/wp-includes/wp-db.php on line 1518

  12. خیلی از راهنمایی های شما ممینونم ،

  13. با سلام
    ضمن تشکر از مطلب مفید شما
    آن طور که از کد ها مشخص است ، گویا این صفحه هنگام رخ دادن ارور های : 503 و 502 به نمایش در می آید ، اگر بخواهیم برای ارور های دیگری مانند : 500 همین صفحه یا مشابه این صفحه به نمایش در بیاید باید چه کار کنیم؟
    با تشکر

    • 6 سال عضو همیار وردپرس

      سلام
      در قطعه کد دو خط

      header('HTTP/1.1 500 Service Temporarily Unavailable');
      header('Status: 500 Service Temporarily Unavailable');

      اضافه کنید.

    • ضمن تشکر فراوان از پاسخ شما ،
      ما با قرار دادن این کد ها در صفحه ی مذکور ، به وردپرس دستور می دهیم در صورت وقوع این ارور ها این فایل را نمایش دهد ؟

    • 6 سال عضو همیار وردپرس

      کاملا درسته

    • خیلی از راهنمایی های شما ممینونم ،
      برای ارور : Resource Limit Is Reached ( 508 ) هم می توان مانند دو ارور مذکور عمل کرد و به صفحه افزود ؟

    • 6 سال عضو همیار وردپرس

      بله میشه

    • اگر بخواهیم هر کدام از ارور های این چنینی را جداگانه مانیتور کنیم ، چه باید کرد ؟
      تا الان تمام ارور ها در فایلی به نام : db-error.php قرار گرفته اند ، آیا می توان برای هر ارور فایل جداگانه ای در نظر گرفت ؟
      ( عملا برای ایجاد برگه ای جهت نمایش به کاربران تفاوتی نداره ، اما از جهت ایمل شدن ارور برای مدیر میتونه این تفکیک اهمیت داشته باشه )

    • 6 سال عضو همیار وردپرس

      سلام
      بهترین راه اینه که از یک افزونه ی ایمنی واسه اسکن استفاده کنید تا همه موارد را برای شما مشخص کند تا بتوانید مشکلات را حل کنید.
      اسکن وردپرس

  14. ممنون از راهنماییتون

  15. مطلب متحیر کننده ای بود

  16. سلام
    چرا وقتی روی این گزینه
    phpMyAdmin Database Manager Version 2.10.3
    کلیک میکنم رمز و نام کاربری رو بهش میدم وارد نمیشه
    مگه نام کاربری rootنیست و رمز همونی که موقع نصب وارد میکنی
    مشکل چیه؟
    باتشکر

  17. سلام من پایگاه داده ایجاد کردم ونام wp-config.sample.php رو ابتدا به wp-config.php تغییر دادم و اطلاعات DB-name , username, passwordرو درست وارد کردم ولی باز تو ورد پرس خطای پایگاه دادخ رو میده ابتدا خطا بصورت فارسی نوشته می شد حالا اینگلیسی شده لطفا اگه کسی از دوستان راهکاری داره برام ایمیل کنه namyari@yahoo.com

  18. سلام.یه مشکل اساسی در سایت وردپرسی من اتفاق افتاده.بنده یه افزونه WordPress Database Reset
    رو روی سایت نصب کردم که بعد از نصب شدنش دیگه نه سایت بالا میاد و نه به پیشخوان …تو سی پنل رفتم و افزونه رو حذف کردم ولی باز هم درست نشد…اگه بتونید کمکم کنید و بگید که باید چیکار کنم خیلی ممنون میشم،اینم آدرس ایمیلم: reza.shoormij@gmail.com

  19. چرا همراه این پست ها فایل هم آپ نمیکنید که راحتتر بشه ازش استفاده کرد؟؟؟؟؟؟؟؟؟؟؟؟؟؟

  20. سلام الان این مشکل رو من دارم اولا بگید چجوری این مشکل رو بر طرف کنم دوما این کد رو کجا باید بزارم؟wp-coffing؟
    ممنون

    • 6 سال عضو همیار وردپرس

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

      مشکلی که شما میفرمایید برای برقراری و اتصال سیستم شما با دیتابیس هستش ، برای رفع مشکل شما باید
      1- وارد نکردن درست اطلاعات دیتابیس ساخته شده در هاست شما می باشد
      2- شما باید نام wp-config.sample.php رو باید ابتدا به wp-config.php تغییر دهید و سپس اطلاعات خود از قبیل
      ( DB-name , username, password ) را وارد نمایید

      با احترام

    • سلام من پایگاه داده ایجاد کردم ونام wp-config.sample.php رو ابتدا به wp-config.php تغییر دادم و اطلاعات DB-name , username, passwordرو درست وارد کردم ولی باز تو ورد پرس خطای پایگاه دادخ رو میده ابتدا خطا بصورت فارسی نوشته می شد حالا اینگلیسی شده لطفا اگه کسی از دوستان راهکاری داره برام ایمیل کنه namyari@yahoo.com

      دیدگاه شما منتظر تایید مدیریت است.

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

  22. ممنون.

  23. تمامی   ها رو از داخل کد وردار

  24. سلام دوباره
    من برنامه نویسیم زیاد قوی نیست ولی وقتی تو خط های 3 و 9 و 14 “&” رو از &nbsp پاک کنی کد مشکلش بر طرف میشه…. یا حداقل واسه من که این طوری بوده
    مرسی وبسیما… خیلی به این نیاز داشتم

    • دوستان Blue Eyes درست میگه.
      اگه & رو در سطر های ۳ و ۹ و ۱۴ از کلمه &nbsp پاک کنید و فقط nbsp بمونه، کد درست میشه. و درست هم عمل میکنه.
      من تستش کردم . جواب هم داد.

  25. اتفاقا واسه منم همون ارور Aram رو میده ولی وقتی سفارشیش کردم و کدشو چک میکنم و به صورت جدا اجراش میکنم هیچ مشکلی نداره ، ولی نمی دونم چرا کار نمی کنه ! اگه میشه راهنمایی کنین ممنون می شم
    بازم به خاطر این مطلب خیلی مفید و به درد به خور و کاربردیتون ممنون

  26. خیلی عالی بود دمت گرم

  27. برای تست درست بودنش میتونید یک تغییر کوچیک در معرفی دیتابیس وردپرس از طریق wp-config.php ایجاد کنید و سعی کنید که به سایت دسترسی داشته باشید. همچنین میتونید انتهای آدرس سایت wp-content/db-error.php رو اضافه کنید تا مستقیما به این صفحه دسترسی داشته باشید و محتواش رو ببینید

  28. مطلب مفیدی بود
    ممنونم از وردپرس 98 عزیز

  29. مطلب خوبی بود.
    سپاس

  30. ممنون میشم نجوه ی تست کارکرد صحیح این فایل رو هم بگین

  31. خیلی خیلی عالی بود ! فقط اگه بررسی کنید اگه طبق گفته Aram مشکلی داره درستش کنید و بگید تا عوضش کنیم !

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

  33. عالیه /تشکر!

  34. خسته نباشی دوست عزیز ولی فکر کنم مشکل داشته باشه این خطا رو میده:

    Parse error: syntax error, unexpected ‘&’ in C:xampphtdocswordpresswp-contentdb-error.php on line 3

مطالب زیر را حتما بخوانید

دوره‌های آموزشی