راه حل خطا اتصال دیتابیس در وردپرس (Solved: Error Establishing Database Connection)

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

رفع خطای اتصال پایگاه داده در وردپرس (Error establishing a database connection)

فهرست مطالب

آموزش رفع خطا اتصال به دیتابیس در وردپرس

امتیاز 0.00 از 0 رای

به این پست امتیاز دهید و الماس بگیرید…

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

خطا اتصال به دیتابیس وردپرس چیست؟

در برنامه نویسی اصطلاحا یک Connection داریم که با یک Connection String به دیتابیس برقرار می شود. Connection String اطلاعات ضروری برای اتصال آبجکت Connection به بانک اطلاعاتی است. اطلاعات ضروری برای برقراری ارتباط با دیتابیس عبارت است از :
○ نام سرور یا IP سرور که در اتصالات وردپرس در صورتی که سرور دیتابیس و هاست یکی باشد از عبارت localhost استفاده می‌شود
○ نام دیتابیس یا Database Name
○ یوزرنیم دیتابیس
○ پسورد دیتابیس

خطای Error Establishing Database Connection یا خطا اتصال دیتابیس وردپرس به این معنی است که وردپرس در کدهای خود نمی‌تواند به دیتابیس وصل شود.

رایج ترین علل وقوع خطا اتصال به دیتابیس وردپرس

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

بررسی اطلاعات اتصال به دیتابیس وردپرس در فایل wp-config.php

اولین قدم باید فایل wp-config.php را در پنل هاست در حالت Edit باز کنید و مقادیر مربوط به دیتابیس را کنترل کنید که صحیح باشد، برای اینکار باید در پنل هاست به بخش File Manager بروید، سپس به دایرکتوری public_html بروید و روی فایل wp-config.php راست کلیک کنید و Edit را بزنید. در صفحه بازشده کلید ترکیبی Ctrl +F را بزنید و عبارت
define(‘DB_NAME
را جستجو کنید، تا کدهای زیر را مشاهده کنید:

				
					// ** MySQL settings - You can get this info from your web host ** //
/** The name of the database for WordPress */
define('DB_NAME', 'database_name_here');

/** MySQL database username */
define('DB_USER', 'username_here');

/** MySQL database password */
define('DB_PASSWORD', 'password_here');

/** MySQL hostname */
define('DB_HOST', 'localhost');
				
			

باید چک کنید که مقادیر درست باشند. 

آسانترین راه کنترل مقادیر اتصال به دیتابیس وردپرس

شاید بگویید چطور بفهمیم آیا مقادیر اتصال به دیتابیس مشکل دارد یا نه؟ خیلی آسان است کافی به پنل هاست بروید ، File Manager را باز کنید و سپس یک فایل به نام dbtest.php در دایرکتوری public_html ایجاد کنید و سپس سورس کد زیر را کپی و در آن پیست کنید:

				
					<?php
//WPersian.com Database Connection Tester
$objConnection = mysql_connect('your_hostname', 'database_username', 'database_password');
if (!objConnection) {
die('Could not connect to Database. Error Description: ' . mysql_error());
}
echo 'Connected successfully';
mysql_close($objConnection);
?>
				
			

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

وردپرس برای طراحی سایت نیاز به کد نویسی ندارد، ولی اگر بخواهید قالب سایت خود را اختصاصی تغییر دهید و یا ایرادهای آن را برطرف کنید، به کد نویسی PHP نیاز دارید.

بگذارید یک مثال واقعی برای شما بزنم، قالب قبلی سایت WPersian.com از مارکت معتبر ایرانی خریداری شده بود، در بسیاری از قسمت‌های قالب مانند سایت استاتیک با یک CMS برخورد کرده بود، مثلا در قسمت تعداد فروش در المان بنر ، تعداد فروش را باید دستی وارد می کردیم و خود قالب از دیتابیس نمی خواند. به توسعه دهنده قالب تیکت دادیم و گفت باید تا آپدیت بعدی که زمان انتشارش نامشخص است باید صبر کنیم. پس خودم دست به کد شدم و در قسمت مربوط با کمتر از 5 خط کد تعداد فروش را اصلاح کردم که از بانک اطلاعاتی فراخوانی شود.

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

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

اطلاح مقادیر اتصال به دیتابیس وردپرس

آموزش تغییر پسورد دیتابیس در cPanel

فرض کنید که مقادیر فوق اشتباه بود، از کجا بفهمیم نام دیتابیس وردپرس ما چیست ؟ یوزرنیم و پسورد بانک اطلاعاتی وردپرس چیست؟
بسیار آسان است، کافی است به کنترل پنل هاست، سپس مطابق تصویر بالا مراحل را انجام دهید:
1. در cPanel بر روی آیکون MySQL Database در بخش DATABASES کلیک کنید.
2. در بخش Database نام بانک اطلاعاتی را مشاهده می‌کنید که در فایل wp-config.php بجای database_name_here در خط مربوط به DB_NAME قرار دهید.
3. در بخش Users نام کاربر بانک اطلاعاتی را مشاهده می کنید. این نام را در فایل wp-config.php بجای username_here در خط DB_USER قرار دهید.
4. از آنجایی که رمز عبور را نمی دانیم باید بر روی لینک Change Password کلیک کنید .
5. بعد از تایپ رمز جدید در قسمت password و تکرار آن در Password (Again) بنویسید.
6. بر روی دکمه Change Password کلیک کنید. این رمز عبور در فایل wp-config.php بجای password_here در خط DB_PASSWORD قرار دهید.

با روش آموزش داده شده برای کنترل خطا در فایل dbtest.php نیز می توانید این مقادیر را وارد کنید تا مطمئن شوید که دیگر اشکالی وجود ندارد.

کنترل پیشوند جدول دیتابیس وردپرس

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

				
					$table_prefix = 'wp_';
				
			

کنترل نام دامنه سایت وردپرس

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

				
					define('WP_HOME','https://wpersian.com');
define('WP_SITEURL','https://wpersian.com');
				
			

اگر مشکل حل نشد در پوشه wp-includes ، فایل functions.php را باز کنید و بررسی کنید که دو خط زیر با URL سایت شما موجود باشد، اگر موجود نبود هر دو خط را در زیر خط تگ php?> قرار دهید:

				
					update_option( 'siteurl', 'https://wpersian.com' );
update_option( 'home', 'https://wpersian.com' );
				
			

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

تنظیم سطح دسترسی (Permission) فایل‌ها و دایرکتوری‌ها

چون اکثر هاست‌ها بر اساس cPanel هستند، ما در اینجا تنظیم Permission در cPanel را توضیح می‌دهیم. البته در Direct Admin هم مشابه همین مراحل است. بر روی File Manager کلیک کنید:

آموزش cPanel - آموزش رفع خطا Internal Server Error 500

ابتدا به پوشه‌ی public-html بروید و سپس مقدار ستون Permission برای تمام فایل‌ها و پوشه‌های موجود را بررسی کنید و موارد اشتباه را اصلاح کنید. مقدار ستون Permission را به صورت زیر تنظیم کنید (راست کلیک کنید، گزینه Change Permission را انتخاب کنید و مقدار متناسب را تنظیم کنید):
○ برای دایرکتوری‌ها(فولدرها) مقدار 755
○ برای فایل‌ها 644
○ برای اسکریپت‌هایی cgi مقدار 755

تنظیم مجوز فایل ها و دایرکتوری ها در cPanel به عبارت دیگر cPanel Change Permission

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

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

				
					define( 'WP_ALLOW_REPAIR', true );
				
			

حال آدرس سایت خود را در مرورگر به صورت http://wpersian.com/wp-admin/maint/repair.php بازکنید تا صحه زیر نمایش داده می‌شود:

آموزش تعمیر دیتابیس وردپرس - WordPress Repair Database

هیچکدام از این راه‌حل‌ها جواب نداد! چکار کنم؟

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

پشتیبانی هاست - ارسال تیکت

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

منابع

○ تجربیات شخصی
وب سایت ستاپ

ادامه مطلب...  راه حل خطا اتمام جلسه وردپرس (WordPress session timeout error)
دوره‌های آموزشی

آیا می‌خواهید ماهیانه 20 میلیون تومان درآمد داشته باشید؟

کافی است در برنامه همکاری در فروش WPersian.com شرکت کنید و با معرفی و فروش محصولات و دوره‌های آموزشی 30% کمیسیون دریافت کنید. برای اطلاعات بیشتر اینجا کلیک کنید.

جدیدترین محصولات

مقالات آموزش طراحی سایت

امتیاز 0.00 از 0 رای

به این پست امتیاز دهید و الماس بگیرید…

خطا اتصال به دیتابیس وردپرس چیست؟

در برنامه نویسی اصطلاحا یک Connection داریم که با یک Connection String به دیتابیس برقرار می شود. Connection String اطلاعات ضروری برای اتصال آبجکت Connection به بانک اطلاعاتی است. اطلاعات ضروری برای برقراری ارتباط با دیتابیس عبارت است از :
○ نام سرور یا IP سرور که در اتصالات وردپرس در صورتی که سرور دیتابیس و هاست یکی باشد از عبارت localhost استفاده می‌شود
○ نام دیتابیس یا Database Name
○ یوزرنیم دیتابیس
○ پسورد دیتابیس

خطای Error Establishing Database Connection یا خطا اتصال دیتابیس وردپرس به این معنی است که وردپرس در کدهای خود نمی‌تواند به دیتابیس وصل شود.

رایج ترین علل وقوع خطا اتصال به دیتابیس وردپرس

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

بررسی اطلاعات اتصال به دیتابیس وردپرس در فایل wp-config.php

اولین قدم باید فایل wp-config.php را در پنل هاست در حالت Edit باز کنید و مقادیر مربوط به دیتابیس را کنترل کنید که صحیح باشد، برای اینکار باید در پنل هاست به بخش File Manager بروید، سپس به دایرکتوری public_html بروید و روی فایل wp-config.php راست کلیک کنید و Edit را بزنید. در صفحه بازشده کلید ترکیبی Ctrl +F را بزنید و عبارت
define(‘DB_NAME
را جستجو کنید، تا کدهای زیر را مشاهده کنید:

				
					// ** MySQL settings - You can get this info from your web host ** //
/** The name of the database for WordPress */
define('DB_NAME', 'database_name_here');

/** MySQL database username */
define('DB_USER', 'username_here');

/** MySQL database password */
define('DB_PASSWORD', 'password_here');

/** MySQL hostname */
define('DB_HOST', 'localhost');
				
			

باید چک کنید که مقادیر درست باشند. 

آسانترین راه کنترل مقادیر اتصال به دیتابیس وردپرس

شاید بگویید چطور بفهمیم آیا مقادیر اتصال به دیتابیس مشکل دارد یا نه؟ خیلی آسان است کافی به پنل هاست بروید ، File Manager را باز کنید و سپس یک فایل به نام dbtest.php در دایرکتوری public_html ایجاد کنید و سپس سورس کد زیر را کپی و در آن پیست کنید:

				
					<?php
//WPersian.com Database Connection Tester
$objConnection = mysql_connect('your_hostname', 'database_username', 'database_password');
if (!objConnection) {
die('Could not connect to Database. Error Description: ' . mysql_error());
}
echo 'Connected successfully';
mysql_close($objConnection);
?>
				
			

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

وردپرس برای طراحی سایت نیاز به کد نویسی ندارد، ولی اگر بخواهید قالب سایت خود را اختصاصی تغییر دهید و یا ایرادهای آن را برطرف کنید، به کد نویسی PHP نیاز دارید.

بگذارید یک مثال واقعی برای شما بزنم، قالب قبلی سایت WPersian.com از مارکت معتبر ایرانی خریداری شده بود، در بسیاری از قسمت‌های قالب مانند سایت استاتیک با یک CMS برخورد کرده بود، مثلا در قسمت تعداد فروش در المان بنر ، تعداد فروش را باید دستی وارد می کردیم و خود قالب از دیتابیس نمی خواند. به توسعه دهنده قالب تیکت دادیم و گفت باید تا آپدیت بعدی که زمان انتشارش نامشخص است باید صبر کنیم. پس خودم دست به کد شدم و در قسمت مربوط با کمتر از 5 خط کد تعداد فروش را اصلاح کردم که از بانک اطلاعاتی فراخوانی شود.

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

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

اطلاح مقادیر اتصال به دیتابیس وردپرس

آموزش تغییر پسورد دیتابیس در cPanel

فرض کنید که مقادیر فوق اشتباه بود، از کجا بفهمیم نام دیتابیس وردپرس ما چیست ؟ یوزرنیم و پسورد بانک اطلاعاتی وردپرس چیست؟
بسیار آسان است، کافی است به کنترل پنل هاست، سپس مطابق تصویر بالا مراحل را انجام دهید:
1. در cPanel بر روی آیکون MySQL Database در بخش DATABASES کلیک کنید.
2. در بخش Database نام بانک اطلاعاتی را مشاهده می‌کنید که در فایل wp-config.php بجای database_name_here در خط مربوط به DB_NAME قرار دهید.
3. در بخش Users نام کاربر بانک اطلاعاتی را مشاهده می کنید. این نام را در فایل wp-config.php بجای username_here در خط DB_USER قرار دهید.
4. از آنجایی که رمز عبور را نمی دانیم باید بر روی لینک Change Password کلیک کنید .
5. بعد از تایپ رمز جدید در قسمت password و تکرار آن در Password (Again) بنویسید.
6. بر روی دکمه Change Password کلیک کنید. این رمز عبور در فایل wp-config.php بجای password_here در خط DB_PASSWORD قرار دهید.

با روش آموزش داده شده برای کنترل خطا در فایل dbtest.php نیز می توانید این مقادیر را وارد کنید تا مطمئن شوید که دیگر اشکالی وجود ندارد.

کنترل پیشوند جدول دیتابیس وردپرس

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

				
					$table_prefix = 'wp_';
				
			

کنترل نام دامنه سایت وردپرس

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

				
					define('WP_HOME','https://wpersian.com');
define('WP_SITEURL','https://wpersian.com');
				
			

اگر مشکل حل نشد در پوشه wp-includes ، فایل functions.php را باز کنید و بررسی کنید که دو خط زیر با URL سایت شما موجود باشد، اگر موجود نبود هر دو خط را در زیر خط تگ php?> قرار دهید:

				
					update_option( 'siteurl', 'https://wpersian.com' );
update_option( 'home', 'https://wpersian.com' );
				
			

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

تنظیم سطح دسترسی (Permission) فایل‌ها و دایرکتوری‌ها

چون اکثر هاست‌ها بر اساس cPanel هستند، ما در اینجا تنظیم Permission در cPanel را توضیح می‌دهیم. البته در Direct Admin هم مشابه همین مراحل است. بر روی File Manager کلیک کنید:

آموزش cPanel - آموزش رفع خطا Internal Server Error 500

ابتدا به پوشه‌ی public-html بروید و سپس مقدار ستون Permission برای تمام فایل‌ها و پوشه‌های موجود را بررسی کنید و موارد اشتباه را اصلاح کنید. مقدار ستون Permission را به صورت زیر تنظیم کنید (راست کلیک کنید، گزینه Change Permission را انتخاب کنید و مقدار متناسب را تنظیم کنید):
○ برای دایرکتوری‌ها(فولدرها) مقدار 755
○ برای فایل‌ها 644
○ برای اسکریپت‌هایی cgi مقدار 755

تنظیم مجوز فایل ها و دایرکتوری ها در cPanel به عبارت دیگر cPanel Change Permission

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

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

				
					define( 'WP_ALLOW_REPAIR', true );
				
			

حال آدرس سایت خود را در مرورگر به صورت http://wpersian.com/wp-admin/maint/repair.php بازکنید تا صحه زیر نمایش داده می‌شود:

آموزش تعمیر دیتابیس وردپرس - WordPress Repair Database

هیچکدام از این راه‌حل‌ها جواب نداد! چکار کنم؟

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

پشتیبانی هاست - ارسال تیکت

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

منابع

○ تجربیات شخصی
وب سایت ستاپ

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

دیدگاهی ثبت نشده است

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

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

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

رضایت شما برای ما اولویت اول است، لذا پشتیبانی 4 بعدی ایمیل، تیکت، واتس اپ، تماس تلفنی را برای شما فراهم کردیم.

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

عضویت در خبرنامه

  • برای اطلاعات از آخرین محصولات و تخفیف‌های شگفت انگیز با پر کردن فرم زیر در خبرنامه عضو شوید:

سبدخرید
  • هیچ محصولی در سبدخرید نیست.
0