این ارور هنگام اتصال به پایگاه داده MySQL رخ می دهد که از دلایل آن می توان به موارد زیر اشاره کرد:

  • مشکل در شبکه به ویژه اگر سرور پایگاه داده MySQL در میزبان راه دور اجرا شود
  • هیچ سرور MySQL در میزبان ذکر شده در حال اجرا نیست
  • مسدود شدن اتصالات TCP-IP توسط فایروال
  • و ...

در ادامه به توضیح چگونگی رفع این ارور می پردازیم.

اگر سرور پایگاه داده بر روی یک ماشین راه دور قرار دارد سعی کنید که اتصالات کلاینت/سرور را با استفاده از دستور زیر امتحان کنید. دقت کنید که به جای ip-address آدرس ip سرور خود را قرار دهید:

$ ping ip-address

دستور ping در لینوکس

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

$ ps -Af | grep mysqld

اجرای دستور ps برای پایگاه داده mysql

اگر هیچ خروجی از دستور بالا نگرفتید، یکی از دستورات زیر را اجرا کنید تا سرویس MySQL سرور شما فعال شود:

$ sudo systemctl start mysql.service
$ sudo systemctl start mariadb.service
یا
# sudo /etc/init.d/mysqld start

حال با استفاده از دستور زیر سعی کنید به سرور پایگاه داده خود دسترسی یابید:

$ mysql -u username -p -h host_address

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

$ netstat -lnp | grep mysql

دستور netstat در لینوکس

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

$ mysql -u username -p -h host_address -P port

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

$ vi /etc/mysql/my.cnf
یا
$ vi /etc/mysql/mysql.conf.d/mysqld.cnf

حال به دنبال خط زیر بگردید و آن را با استفاده از کاراکتر #، کامنت گزاری کنید:

bind-address = 127.0.0.1

سپس فایل را ذخیره کرده و ببندید و سرویس MySQL را با استفاده از یکی از دستورات زیر ریاستارت کنید:

$ sudo systemctl start mysql.service
$ sudo systemctl start mariadb.service
یا
# sudo /etc/init.d/mysqld start

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

منبع : https://tecmint.com/fix-error-2003-hy000-cant-connect-to-mysql-server-on-127-0-0-1-111

مطالب مرتبط

نظر شما

لطفا نام و نظر خود را در فرم زیر وارد کرده تا در صورت تایید برای کاربران نمایش داده شود.




متن تصویر:

نظرات کاربران

هیچ نظری تا کنون ثبت نشده است