چرا فنیکس؟

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

  1. خانه
  2. /
  3. مقالات
  4. /
  5. برطرف کردن خطا در ایجاد یک اتصال به پایگاه داده وردپرس
  • محمد جواد قائدی
    محمد جواد قائدی
    fenix.ir
  • هشت ماه پیش
  • مقالات

    ,
  • بدون نظر
  • ۳۱۷ بازدید
5/5 بر اساس 1 نظر

رفع خطای ارتباطی دیتابیس وردپرس – خطا در ایجاد یک اتصال به پایگاه داده

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

پس با ما همراه باشید 🙂

 

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

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

 

آیا اشکال از wp-admin است؟

برای این موضوع باید ابتدا متوجه شوید که هم در فرانت اند و هم در بک اند به طور همزمان این مشکل وجود دارد.    اگر خطایی با متن “Error establishing a database connection” یا “خطا در ایجاد یک اتصال به پایگاه داده” در هر دو صفحه وجود دارد به مرحله بعدی می رویم. اگر خطایی با متن “One or more database tables are unavailable” یا “یک یا چند جداول پایگاه داده در دسترس نیستند” برای شما ظاهر می شود مشخص می شود که باید تغییرات و اصلاحاتی را بر روی پایگاه داده خود انجام دهید. برای حل این مشکل باید به فایل wp-config.php عبارت زیر را درست قبل از  That’s all, stop editing! Happy blogging  اضافه کنید.

define('WP_ALLOW_REPAIR', true);

وقتی این کار را انجام دادید در آدرس http://www.yoursite.com/wp-admin/maint/repair.php می توانید تنظیمات زیر را مشاهده کنید.

برطرف کردن خطا در ایجاد یک اتصال به پایگاه داده وردپرس

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

 

چک کردن فایل 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 نباشد. بستگی به نوع هاست این مورد متفاوت است. برای برخی از هاست ها localhost است. اما مقادیر دیگر نیز وجود دارد. برخی معتقدند که باید localhost را با IP عوض کرد.  این همان مشکلی است که در نصب وردپرس بر روی محیط سرور محلی و نه آنلاین پیدا می شود.

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

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

در نتیجه اگر همه موارد موجود در سایت مشکلی ندارد باید server end بررسی کنید

مقادیر database-name ، database-username ، database-password به صورت مثال می باشد و باید به جای این موارد نام دیتابیس، نام کاربری دیتابیس، و کلمه عبور دیتابیس باشد.

 

هاست یا MYSQL server را چک کنید

برخی از اوقات وقتی خطای “Error establishing a database connection” یا “خطا در ایجاد یک اتصال به پایگاه داده” ظاهر می شود که وبسایت شما ترافیک بالای بازدید را به خود جذب کرده باشد. در این حالت اشکال می تواند از سرور شما باشد چرا که این سرور است که نتوانسته بار ترافیک سایت را تحمل کند. گاهی اوقات نیز به اشتراک گذاری یک هاست برای چند وبسایت می تواند ریشه این مشکل باشد. در این حالت سرعت وبسایت شما شروع به کند شدن می کند و برای برخی از بازدیدکنندگان خطا مذکور ظاهر می شود. در این حالت باید به سرویس دهنده هاست خود پیام دهید و درخواست چک کردن MYSQL server خود را بدهید. اگر خودتان می توانید این کار را انجام بدهید دیگر وبسایت هایی که سرورشان با وبسایت شما مشترک است را کنترل کنید. اگر آن وبسایت ها نیز همین مشکل را داشتند پس اشکال از MYSQL server شماست. برای رفع این مشکل به cPanel رفته و سعی کنید به phpMyAdmin متصل شوید و سپس به پایگاه داده متصل شوید. اگر این اتصال برقرار شد باید چک کنید که آیا کاربر دیتابیس اجازه یا پرمیشن های لازم را دارد یه نه. برای این کار یک فایل با نام testconnection.php  بسازید و کد های زیر را در آن وارد کنید.

<?php
$link = mysql_connect('localhost', 'root', 'password');
if (!$link) {
die('Could not connect: ' . mysql_error());
}
echo 'Connected successfully';
mysql_close($link);
?>

مطمئن شوید که کلمه کاربری و رمز عبور خود را در کد بالا جایگزین کرده باشد. اگر اتصال برقرار شد متوجه می شویم اجازه های لازم وجود دارد و مشکل از جای دیگری است. به فایل wp-config برگردید و مطمئن شوید همه چیز درست است. اگر با رفتن به phpMyAdmin نمی توانید به دیتابیس متصل شوید متوجه می شویم که اشکال از سرور است. البته لزوما این اتفاق به این معنی نیست که MySQL از کار افتاده است بلکه این بدان معنی است که دسترسی کاربری شما اجازه های لازم را ندارد. اگر پیام access denied error را دریافت کردید در هنگام اتصال به phpMyAdmin  یا testconnection.php باید برای حل مشکل با مسئول سرور خود تماس بگیرید.

 

راه حل های دیگر

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

برخی از تجربه ها نشان داده است که این پیام خطا بخاطر تغییر URL وبسایت شماست. یکی از کاربران کوئری SQL را اجرا نموده با رفتن به phpMyAdmin و اجرای کدهای زیر:

UPDATE wp_options SET option_value='YOUR_SITE_URL' WHERE option_name='siteurl'

در این مورد مطمئن شوید که URL سایت خود را با URL صحیح جایگزین کرده اید. اگر پیشوند پیش فرض وردپرس خود را تغییر داده باشید wp_options متفاوت خواهد بود.

یکی دیگر از تجربه ها نشان می دهد که گاهی اوقات امکان اتصال به testconnection.php وجود دارد. برای همین می توان یوزر wp-config.php را به یوزر روت تبدیل کرد. با این کار نیز تاکنون مشکلات برخی از کاربران حل شده است. البته بعد از حل مشکل باید دوباره تنظیمات به database-user برگردد.

گاهی اوقات نیز افزونه های فعال در wp_options را باید حذف نموده و باید محتوای recently_edited را ویرایش کرد.

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

 

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

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

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

نظرات

پاسخ دهید

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

هفت − چهار =


نظرات (0)

با عضویت در خبر نامه ما از ۲۰ درصد تخفیف عضویت به همراه تخفیف های اینده با خبر شوید