Sử dụng lệnh SET GLOBAL để thay đổi max_connections tại runtime (không cần restart).
Cú pháp
SET GLOBAL max_connections = value;
Ví dụ minh họa
mysql> SET GLOBAL max_connections = 1000; Query OK, 0 rows affected (0.04 sec) mysql> SHOW VARIABLES LIKE 'max_connections'; +-----------------+-------+ | Variable_name | Value | +-----------------+-------+ | max_connections | 1000 | +-----------------+-------+
Lưu ý quan trọng
- Chỉ hiệu lực trong session hiện tại cho đến khi restart MySQL.
- Để vĩnh viễn: thêm vào file cấu hình
my.cnf/my.ini:
[mysqld] max_connections = 1000
- Giá trị tối đa phụ thuộc OS/hardware (thường 100000+).
- Mỗi connection tốn RAM (thread stack, buffers). Tăng quá cao có thể gây OOM.
- Xem kết nối hiện tại:
SHOW STATUS LIKE 'Threads_connected'. - Xem max connections đã dùng bao giờ:
SHOW STATUS LIKE 'Max_used_connections'.
Khuyến nghị
- Giám sát
Max_used_connections / max_connectionsratio. - Nếu thường xuyên đạt ngưỡng → tối ưu query, connection pooling trước khi tăng.
- Mặc định MySQL 8.0: 151 connections.