table_cache
là chỉ thị cấu hình hữu ích nhất để thay đổi. Mỗi lần MySQL truy cập vào một bảng, nó sẽ tải bảng vào bộ đệm. Nếu bạn có số lượng bảng cao, sẽ nhanh hơn khi lưu chúng vào bộ đệm.
Hãy xem các biến máy chủ của bạn bằng cách chạy:
show status;
và có một cái nhìn cho các biến open_tables
. Nếu table_cache
giá trị này giống với giá trị của bạn và opened_tables
tiếp tục tăng, thì bạn cần tăng table_cache
giá trị trong tệp cấu hình của mình. Bạn sẽ tìm thấy sự cân bằng bằng cách thử nghiệm các biến này trong thời gian cao điểm. Bạn muốn cấu hình nó để vào thời gian cao điểm, có một lượng thấp opened_tables
ngay cả sau khi máy chủ đã hoạt động trong một thời gian dài.
key_buffer_size
cũng là một biến tốt để thử nghiệm. Biến này ảnh hưởng đến kích thước bộ đệm chỉ mục và làm cho biến này lớn hơn làm tăng tốc độ xử lý chỉ mục của MySQL. Bạn có thể xem lại các biến bằng show variables;
lệnh và so sánh key_read_requests
với key_reads
. Lý tưởng nhất là bạn muốn tỷ lệ giữa hai biến này càng thấp càng tốt và bạn có thể làm điều này bằng cách tăng kích thước của key_buffer_size
. Nếu bạn đặt biến này cao hơn, bạn sẽ ít ghi và đọc trực tiếp đến và từ đĩa, đó là mối quan tâm chính của bạn.
show status;
để xem các biến trạng thái nhưOpen_tables
vàOpened_tables
.table_cache
dường như đã bị xóa trong các phiên bản MySQL gần đây.