Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

MySQL truy vấn chậm với tham gia mặc dù EXPLAIN cho thấy kế hoạch tốt

Tôi không phải là chuyên gia trong lĩnh vực này, nhưng đây là một vài suy nghĩ:

Tốc độ truy vấn lâu hơn khi g.F2 thay đổi là do bộ nhớ đệm. MySQL sẽ lưu kết quả cho mỗi truy vấn (cho đến khi bộ đệm đầy), nhưng các truy vấn mới được chạy trên bộ đệm trống, vì vậy chúng mất nhiều thời gian hơn. Bạn không nên tối ưu hóa dựa trên điều này. (Xem Cách thực hiện đo lường chính xác )

Tôi không thể biết từ thông tin của bạn liệu g hoặc gp bảng có độ cụ thể cao hơn (có vẻ như gp ?) trong where nhưng bạn có thể muốn thử một truy vấn con để thay thế. (Xem Cách buộc truy vấn bên trong thực thi trước tiên )

Về cấu hình, có thể bạn đang đạt đến một ngưỡng vật lý như vượt quá phân bổ ram (sử dụng hoán đổi là một thảm họa cho hiệu suất) mà explain sẽ không rõ ràng hoặc liệu explain chỉ sai trong trường hợp này.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Dòng INNODB khi xóa và cập nhật

  2. Số lượng nhóm kết nối MySQL

  3. Làm cách nào để tối ưu hóa truy vấn EAV MYSQL phức tạp này?

  4. Hiển thị nhiều giá trị từ một hàng khi hộp thả xuống được sử dụng từ cơ sở dữ liệu mysql

  5. Nhận tên cột thay vì giá trị cột