Khi một khách hàng cố gắng đăng nhập vào MySQL, đôi khi nó có thể bị từ chối và nhận được thông báo lỗi nói rằng có “quá nhiều kết nối“. Điều này có nghĩa là đã đạt đến số lượng máy khách tối đa có thể được kết nối với máy chủ. Máy khách sẽ phải đợi một máy khách khác đăng xuất hoặc quản trị viên sẽ phải tăng số lượng kết nối tối đa được phép
Thông tin về các kết nối đến máy chủ có thể được tìm thấy bằng cách sử dụng câu lệnh SHOW STATUS
$ mysql –u root –p SHOW STATUS LIKE 'max_used_connections';
Trước tiên, bạn nên đảm bảo rằng các ứng dụng của mình đang đóng kết nối với máy chủ khi chúng không còn cần thiết nữa. Tuy nhiên, bạn có thể giải quyết lỗi này bằng cách tăng giá trị của biến max_connections và có thể giảm giá trị của wait_timeout nếu bạn cho rằng nhiều kết nối đến máy chủ của mình không được sử dụng tích cực
Dung dịch
Số luồng kết nối tối đa được phép cho máy chủ được chứa trong biến hệ thống max_connections. Giá trị mặc định là 151. Để xem giá trị mà biến này được đặt, hãy chạy lệnh SQL sau
$ mysql –u root –p mysql> SHOW VARIABLES LIKE 'max_connections'; +-----------------+-------+ | Variable_name | Value | +-----------------+-------+ | max_connections | 151 | +-----------------+-------+
Thay đổi tham số max_connections [Tạm thời]
Để thay đổi giá trị của biến hệ thống max_connections, có thể sử dụng tùy chọn –max_connections. Để tạm thời thay đổi biến này trong khi máy chủ đang chạy, hãy nhập câu lệnh SQL sau
$ mysql –u root –p mysql> SET GLOBAL max_connections = 512;
Ghi chú. Không cần thiết phải ngắt kết nối máy khách hiện đang kết nối với máy chủ để chạy câu lệnh SQL này với quyền root. Máy chủ cho phép một kết nối nhiều hơn giá trị của max_connections. Một kết nối được dành riêng cho người dùng root hoặc bất kỳ tài khoản nào khác có đặc quyền SUPER
Khi daemon máy chủ MySQL [mysqld] được khởi động lại, giá trị trên sẽ được đặt trở lại giá trị mặc định là 151. Để thay đổi vĩnh viễn, hãy sử dụng phương pháp bên dưới
Thay đổi tham số max_connections [Vĩnh viễn]
Một phương pháp tốt hơn để thay đổi tham số max_connections là thêm tùy chọn này vào tệp tùy chọn [của tôi. cnf hoặc của tôi. ini, tùy thuộc vào hệ thống của bạn] để nó có hiệu lực vào lần khởi động lại máy chủ tiếp theo. Giả sử bạn đang sử dụng /etc/my. cnf, thêm dòng dưới đây vào nó
# vi /etc/my.cnf max_connections = 512
Bây giờ hãy khởi động lại daemon mysqld để các thay đổi có hiệu lực
Đối với CentOS/RHEL 6
# service mysqld restart
Đối với CentOS/RHEL 7
# systemctl restart mysqld
Giá trị tối đa cho max_connections trên Linux là gì?
Giới hạn trên về mức độ lớn mà bạn có thể định cấu hình max_connections phần lớn được xác định bởi hệ điều hành ngoài giới hạn 100.000 mà MySQL đặt. Linux có một giới hạn gọi là tệp mở tối đa, giới hạn này được định nghĩa là “mỗi lần đăng nhập” và cho biết số lượng tệp tối đa mà một quy trình có thể mở. Giá trị mặc định là 1024 [bạn có thể thấy bằng cách sử dụng ulimit -n]
Здравствуйте, у становил скрипт 10,3 чистый http. // dle-news. ru/tính năng bổ sung/trực tuyến/chỉ mục. html?all17. html и обновил его по этапно до версии 10. 6 сегодня утром,а вечером я наблюдаю такую картину
Lỗi MySQL trong tệp. /engine/classes/mysql. php tại dòng 52
Số lỗi. 1
Lỗi trả về là.
Không thể kết nối với máy chủ MySQL cục bộ thông qua socket '/var/lib/mysql/mysql. sock' [111]
truy vấn SQL
подскажите что произошло и как исправить ?
- Цитата
Ссылка на сообщениеПоделиться на других сайтах
cuộc phiêu lưu 383
Опубликовано. 5 tháng 12 năm 2016
cuộc phiêu lưu
- Новичок
- Клиенты
- 383
- 2 374 публикации
- Пол. Cá nhân
- Город. Берлин
- Рассказать
Опубликовано. 5 tháng 12 năm 2016
Только что, FraGjSM сказал
подскажите что произошло и как исправить ?
ну это точно не баг системы, поэтому эта тема не для этого раздела
А в ошибке же написано «Không thể kết nối với máy chủ MySQL cục bộ», проверяй соединение с mysql или пиши в тех. поддержку хостинга