Lỗi MySQL trong tệp: /engine/classes/mysql (php ở dòng 59)

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 или пиши в тех. поддержку хостинга

Làm cách nào để lấy mã lỗi MySQL trong PHP?

Thay vào đó, hãy sử dụng mysql_errno[] để truy xuất mã lỗi . Lưu ý rằng hàm này chỉ trả về mã lỗi từ hàm MySQL được thực thi gần đây nhất [không bao gồm mysql_error[] và mysql_errno[]], vì vậy nếu bạn muốn sử dụng hàm này, hãy đảm bảo rằng bạn đã kiểm tra giá trị trước khi gọi một hàm MySQL khác.

Lỗi MySQL là gì?

Mất kết nối với máy chủ MySQL .

Lệnh MySQL nào có thể được sử dụng để thay thế cho Mysql_select_db[]?

Các lựa chọn thay thế cho chức năng này bao gồm. mysqli_select_db[] PDO. __construct[] [một phần của dsn]

Hàm PHP nào truy xuất văn bản của thông báo lỗi MySQL?

Lỗi quay lại từ phụ trợ cơ sở dữ liệu MySQL không còn đưa ra cảnh báo. Thay vào đó, hãy sử dụng mysql_error[] để truy xuất văn bản lỗi.

Chủ Đề