ตัวเลือกmax_user_connectionsเป็นข้อ จำกัด ที่กำหนดไม่ใช่จำนวนรวมของการเชื่อมต่อพร้อมกันในอินสแตนซ์ของเซิร์ฟเวอร์ แต่ในบัญชีผู้ใช้แต่ละบัญชี
db_user@localhost
สมมติว่าผู้ใช้จะเรียกว่า คุณสามารถค้นหาว่าขีด จำกัด การเชื่อมต่อของผู้ใช้รายนี้คืออะไรโดยใช้แบบสอบถามนี้:
SELECT max_user_connections FROM mysql.user
WHERE user='db_user' AND host='localhost';
หากนี่เป็นค่าที่ไม่ใช่ศูนย์ให้เปลี่ยนกลับเป็น:
GRANT USAGE ON *.* TO db_user@localhost WITH MAX_USER_CONNECTIONS 0;
หรือ
UPDATE mysql.user SET max_user_connections = 0
WHERE user='db_user' AND host='localhost';
FLUSH PRIVILEGES;
สิ่งนี้จะทำให้mysqld
ผู้ใช้db_user@localhost
สามารถใช้max_user_connectionsการตั้งค่าส่วนกลางเป็นข้อ จำกัด
เมื่อคุณมาถึงจุดนี้ให้ตรวจสอบการตั้งค่าระดับโลกโดยใช้
SHOW VARIABLES LIKE 'max_user_connections';
หากนี่เป็นค่าที่ไม่ใช่ศูนย์คุณต้องทำสองสิ่ง
สิ่ง # 1 : ค้นหาการตั้งค่าใน/etc/my.cnf
[mysqld]
max_user_connections = <some number>
แสดงความคิดเห็นว่าสายออก
สิ่ง # 2 : ตั้งค่าแบบไดนามิก
SET GLOBAL max_user_connections = 0;
ไม่จำเป็นต้องทำการรีสตาร์ท MySQL
ข้อแม้
ฉันได้กล่าวถึงการตั้งค่านี้ในอดีต
ให้มันลอง !!!