در این مقاله، رفع مشکال اتصال به MySQL را آموزش خواهیم داد.
توجه داشته باشید که این مقاله مربوط به سرور دیتابیس MySQL روی ویندوز است و نه Plesk SQL One. در ضمن، رابط کاربری Plesk باید قابل دسترسی باشد تا بتوانید این مشکل را برطرف کنید.
اگر دوست داشته باشید میتوانید مقالات Plesk چیست و MySQL چیست را بخوانید.
ساختار مقاله به این شکل است که ابتدا علائم بروز مشکل، سپس دلیل و در نهایت راهحل آن را بیان خواهیم کرد.
علائم بروز مشکل
مشکل اتصال به MySQL، 3 علامت اصلی دارد:
- امکان ساخت Database Dump در Plesk > Domains > example.com > Databases > Export Dump وجود ندارد.
ارور زیر مشکل را نشان میدهد:
mysqldump: Got error: 1045: Access denied for user ‘admin’@’localhost’ (using password: YES) when trying to connect
- تلاش برای دسترسی به MySQL کاربر، به ارورهای زیر منجر میشود:
Error: Connection to the database server has failed because of network problems: Try to establish connection failed
Error: Connection to the database server has failed because the supplied account does not possess administrative privileges: Access denied for user ‘admin‘@’localhost’ (using password: YES)
- سرور MySQL در قسمت Tools & Setting > Database Servers با رنگ قرمز نمایش داده شده باشد!
دلیل بروز این مشکل چه چیزی است؟
دلیل بروز مشکل
این مشکل معمولاً به این دلیل اتفاق میافتد که Plesk، یک پسورد اشتباه برای دسترسی ادمین MySQL Server ذخیره کرده است.
راهحل رفع مشکل
برای رفع این مشکل و اتصال مجدد به Plesk، اقدامات زیر را بهترتیب انجام دهید:
- از طریق RDP به سرورتان متصل شوید.
- با استفاده از Plesk Service Monitor، ادامه فعالیت سرور MariaDB روی پورت 3306 را متوقف کنید. دقت کنید که نباید کاری به Plesk SQL Server داشته باشید. برای دسترسی به Plesk Service Monitor هم میتوانید از طریق منوی استارت ویندوز اقدام کنید و هم میتوانید از دستور زیر کمک بگیرید:
"%plesk_dir%\admin\bin\traymonitor.exe"
- فایل plesk_dir%Databases\MySQL\my.ini% در تنظیمات MariaDB را تغییر دهید و عبارت skip-grant-tables را به بخش [mysqld] اضافه کنید. کارهایی که انجام دادید را با کمک text editor ذخیره کنید.
- سرور MariaDB را بهوسیله Plesk Service Monitor استارت کنید.
- با کمک دستور زیر، بدون پسورد به MySQL متصل شوید:
"%plesk_dir%\MySQL\bin\mysql.exe" -P3306
- پسورد ادمین MySQL را تغییر دهید.
برای نسخه 5.7.6 MySQL و نسخههای جدیدتر و البته نسخه 10.1.20 MariaDB و نسخههای جدیدترش، از دستور زیر استفاده کنید:
ALTER USER 'admin'@'localhost' IDENTIFIED BY 'new_password';
برای نسخه 5.7.5 و نسخههای قدیمیتر MySQL و البته نسخههای قدیمیتر از 10.1.20 MariaDB، از دستور زیر استفاده کنید:
SET PASSWORD FOR 'admin'@'localhost' = PASSWORD('new_password');
نکته: در دو دستور بالا، بهجای عبارت new_password باید پسورد مدنظرتان را بنویسید.
از سرور دیتابیس بخواهید تا grant tables را مجدداً بارگذاری کند. اینکار با دستور FLUSH PRIVILEGES انجام میشود:
FLUSH PRIVILEGES;
- اگر کاربر ادمین در MySQL تعریف نشده باشد:
mysql> ALTER USER 'admin'@'localhost' IDENTIFIED BY 'new_password'; Query OK, 0 rows affected (0.00 sec) <-- No user "admin" found
یک کاربر ادمین بسازید و تمام دسترسیها را در اختیارش قرار دهید:
mysql>CREATE USER 'admin'@'localhost' IDENTIFIED BY 'password'; mysql>GRANT ALL PRIVILEGES ON *.* TO 'admin'@'localhost' WITH GRANT OPTION;
- حالا skip-grant-tables را از تنظیمات MySQL حذف کنید و کل سرویس را Restart کنید.
- وارد رابط کاربری Plesk شوید و به قسمت تنظیمات سرور دیتابیس بروید. (Tools Settings > Database Servers). در این قسمت باید پسورد سرور دیتابیس متناظر را تغییر دهید. به زبان ساده، اینکار اثرات آن بخشی که بدون پسورد به سرور متصل شدید را از بین خواهد برد. Plesk مجدداً به سرور متصل خواهد شد.
سخن پایانی
چیزی که خواندید، چگونگی رفع مشکل اتصال به سرور MySQL از طریق کنترلپنل پلسک بود.
اگر سوالی در این زمینه دارید، برای ما کامنت بگذارید تا متخصصانمان در کوتاهترین زمان پاسختان را بدهند.
2 دیدگاه. دیدگاه تازه ای بنویسید
با درود
من تو سایتم
websama.net
این ارور رو میده
To learn how to revoke permissions from PhpMyAdmin
میشه راهنمایی کنیم رفع بشه
سلام،
لطفاً برای بررسی دقیق این مورد به پشتیبانی تیکت بزنید