رفع خطای too many connections در MySQL و phpMyAdmin

چنانچه در مراجعه به phpMyAdmin یا دسترسی به دیتابیس با خطای too many connections مواجه هستید به آن معناست که سقف تعداد Connection تنظیم شده در پیکربندی MySQL را مورد استفاده قرار داده‌اید.

برای یافتن دیتابیسی که عامل این مشکل است کافیست فرمان زیر را در SSH اجرا کنید:

mysqladmin processlist

 

با اجرای فرمان قوق نه تنها لیست Connectionها و requestهای در حال اجرای MySQL را مشاهده خواهید کرد بلکه دیتابیس مرتبط را نیز خواهید یافت.

 

نحوه رفع مشکل:

به این منظور ابتدا لازم است بررسی کنیم که تعداد Connectionهای مجاز MySQL چه میزان تنظیم شده است. بنابراین مراحل زیر را دنبال می‌کنیم:

1- ابتدا فرمان زیر را اجرا می کنیم تا وارد محیط MySQL شویم:

mysql
در صورتیکه با اجرای فرمان فوق امکان دسترسی فراهم نشد. لازم است با جایگذاری نام کاربری و رمز عبور MySQL اقدام کنید:
mysql -u USER -p PASSWORD

2- حال فرمان زیر را اجرا کنید:

SHOW VARIABLES LIKE 'max_connections';

با اجرای این فرمان نتیجه می‌توانید به شکل زیر ظاهر شود:

+-----------------+-------+
| Variable_name | Value |
+-----------------+-------+
| max_connections | 151 |
+-----------------+-------+
1 row in set (0.001 sec)

در نتیجه فوق تعداد Connection مجاز 151 عدد در نظر گرفته شده است. حال می‌توانید با ادامه مراحل تعداد مجاز آن را افزایش دهید:

1- فرمان زیر را جهت باز کردن فایل کانفیگ MySQL اجرا کنید:

nano /etc/my.cnf

2- کد زیر را به آخر فایل اضافه و آن را Save کنید.

max_connections = 512

3- فرمان زیر را اجرا کنید تا MySQL مجددا راه اندازی شود و تغییرات اعمال گردند:

service mysqld restart

 

کار تمام شد!

 

  • 1 کاربر این را مفید دانستند
آیا این آموزش به شما کمک کرد؟