MySQL max_user_connections cnf của tôi

Nếu bạn gặp lỗi "quá nhiều kết nối" trong MySQL, bạn có thể thay đổi cài đặt max_connections để cho phép nhiều kết nối hơn, giả sử bạn có đủ RAM để xử lý số lượng kết nối tăng lên. Bài đăng này xem xét cách cập nhật cài đặt max_connections trong MySQL

Cài đặt mặc định cho max_connections là 100. Bạn có thể xem cài đặt hiện tại là gì bằng cách chạy lệnh SQL sau từ công cụ dòng lệnh MySQL, phpMyAdmin hoặc một công cụ tương tự

show variables like "max_connections";

Thao tác này sẽ trả về tập kết quả như thế này, cho bạn biết cài đặt kết nối tối đa hiện tại của bạn là bao nhiêu

+-----------------+-------+
| Variable_name   | Value |
+-----------------+-------+
| max_connections | 100   |
+-----------------+-------+

Bạn có thể thay đổi cài đặt thành e. g. 200 bằng cách ban hành lệnh sau mà không cần phải khởi động lại máy chủ MySQL (rõ ràng nó sẽ chỉ hoạt động nếu người dùng mà bạn đăng nhập có đủ quyền để thực hiện việc này)

set global max_connections = 200;

Điều này sẽ có hiệu lực ngay lập tức, nhưng sẽ bị quên vào lần khởi động lại MySQL tiếp theo. Để thực hiện thay đổi vĩnh viễn, bạn cần chỉnh sửa tệp my. tập tin cấu hình cnf. Trên CentOS, RedHat và các bản phân phối tương tự, đây là tại /etc/my. cnf;

Trong phần [mysqld] thêm cài đặt sau

max_connections = 200

Bây giờ khi bạn khởi động lại MySQL vào lần tới, nó sẽ sử dụng cài đặt này thay vì mặc định

Lưu ý rằng việc tăng số lượng kết nối có thể được thực hiện sẽ tăng dung lượng RAM cần thiết để MySQL chạy. Tăng cài đặt max_connections một cách thận trọng

Máy chủ WordPress được quản lý cho phép 24 kết nối đồng thời. Thật không may, giá trị này không thể tăng lên. Nếu bạn yêu cầu một dịch vụ cần kết nối bổ sung, bạn có thể muốn xem xét máy chủ VPS, vì điều đó sẽ cho phép bạn có giá trị mặc định cao hơn là 100, với khả năng tăng giá trị hơn nữa nếu muốn

Tổng quan

 

Nếu bạn gặp lỗi Quá nhiều kết nối khi cố gắng kết nối với máy chủ mysqld, điều này có nghĩa là tất cả các kết nối khả dụng đang được sử dụng bởi các máy khách khác. Số lượng kết nối cho phép được kiểm soát bởi biến hệ thống max_connections. Giá trị mặc định của nó là 100. Nếu cần hỗ trợ nhiều kết nối hơn, bạn nên đặt giá trị lớn hơn cho biến này

MySQL SmartPool v. 2 cho Grid đi kèm với 30 kết nối MySQL

Nếu bạn gặp lỗi Too many connections khi cố gắng kết nối với

[mysqld]
local-infile=0
datadir=/var/lib/mysql
user=mysql
symbolic-links=0

max_connections = 100
0 server, this means that all available connections are in use by other clients.

Số lượng kết nối cho phép được kiểm soát bởi biến hệ thống

[mysqld]
local-infile=0
datadir=/var/lib/mysql
user=mysql
symbolic-links=0

max_connections = 100
1 . Giá trị mặc định của nó là 100. Nếu cần hỗ trợ nhiều kết nối hơn, bạn nên đặt giá trị lớn hơn cho biến này.

Yêu cầu

Trước khi bạn bắt đầu, bài viết này có các phụ thuộc sau

  • Bạn phải thiết lập quyền truy cập SSH cho người dùng root hoặc sudo
    • Làm cách nào để kích hoạt quyền truy cập root vào DV của tôi?
    • Làm cách nào để tắt đăng nhập SSH cho người dùng root?

ĐỌC TÔI TRƯỚC
Bài viết này được cung cấp như một phép lịch sự. Cài đặt, định cấu hình và khắc phục sự cố ứng dụng của bên thứ ba không được hỗ trợ bởi (mt) Media Temple. Vui lòng dành chút thời gian để xem lại Tuyên bố hỗ trợ.

Hỗ trợ nâng cao có thể giúp
Nếu bạn gặp sự cố với các bước trong bài viết này, bạn có thể được hỗ trợ thêm qua Hỗ trợ nâng cao, bộ phận dịch vụ cao cấp của chúng tôi. Các kỹ sư chuyên gia của chúng tôi có thể tinh chỉnh và điều chỉnh máy chủ của bạn để có hiệu suất tối ưu. Để biết thêm thông tin về những gì Hỗ trợ nâng cao có thể làm cho bạn, vui lòng nhấp vào đây

Hướng dẫn

Có thể nâng cấp các kết nối MySQL đồng thời của bạn bằng cách thêm MySQL GridContainer vào gói lưu trữ Grid của bạn. Ba kích cỡ khác nhau được cung cấp lần lượt là 60, 100 và 150 kết nối đồng thời

Để biết thêm thông tin về MySQL GridContainer, vui lòng xem trang sản phẩm Lưới của chúng tôi

Để tăng số kết nối tối đa mà MySQL cho phép, bạn phải chỉnh sửa tệp

[mysqld]
local-infile=0
datadir=/var/lib/mysql
user=mysql
symbolic-links=0

max_connections = 100
2. Kết nối với máy chủ thông qua SSH với tư cách là người dùng root hoặc sudo và nhập cái này

vi /etc/my.cnf

Sẽ có một phần như thế này. (có thể hơi khác)

[mysqld]
local-infile=0
datadir=/var/lib/mysql
user=mysql
symbolic-links=0

max_connections = 100

Trong [mysqld], bạn có thể tăng kết nối MySQL tối đa của mình bằng cách thay đổi thuộc tính max_connections thành một cái gì đó như thế này


[mysqld]
safe-show-database
innodb_data_file_path=ibdata1:10M:autoextend
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock

Thêm dòng sau vào [mysqld]

max_connections=250

Tệp cấu hình kết quả sẽ giống như thế này

[mysqld]
safe-show-database
innodb_data_file_path=ibdata1:10M:autoextend
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
max_connections=250

Lưu các thay đổi và nhập nội dung sau để khởi động lại mysqld

/etc/init.d/mysqld restart

Bạn sẽ thấy

Stopping mysql: [ OK ]
Starting mysql: [ OK ]

Nếu dừng FAILS, thì bạn đã làm sai điều gì đó. Cố gắng quay lại và đảm bảo rằng bạn đã nhập chính xác cài đặt mới

GHI CHÚ

Nếu bạn muốn kiểm tra xem cài đặt này có được áp dụng thành công hay không, bạn có thể kiểm tra bằng một trong các phương pháp sau

Làm cách nào để tăng Max_user_connections?

Trả lời .
Kết nối với máy chủ Plesk qua SSH
mở của tôi. cnf trong trình soạn thảo văn bản. Trong ví dụ này, chúng tôi đang sử dụng trình soạn thảo vi. .
Thêm dòng sau vào phần [MySQLD]. # grep max_user_connections /etc/my. cnf. .
Lưu các thay đổi và đóng tệp
Khởi động lại dịch vụ MySQL/MariaDB để áp dụng các thay đổi

Giá trị của biến hệ thống kết nối người dùng tối đa là bao nhiêu để kết nối của tài khoản không bị giới hạn?

Nếu giới hạn này được đặt thành 0, giá trị biến hệ thống max_user_connections toàn cầu sẽ xác định số lượng kết nối đồng thời. Nếu max_user_connections cũng bằng 0 thì không có giới hạn cho tài khoản .