MySQL cho phép chúng tôi tạo các câu lệnh chọn với các tùy chọn SQL_CACHE
và SQL_NO_CACHE
. Các tùy chọn này ảnh hưởng đến bộ nhớ đệm của kết quả truy vấn trong bộ đệm truy vấn. Nhưng truy vấn nào tốt hơn để sử dụng tùy chọn SQL_CACHE
và tùy chọn nào là SQL_NO_CACHE
? Hoặc có lẽ nó là tốt hơn không sử dụng nó ở tất cả?Các phương pháp hay nhất của MySQL để sử dụng SQL_CACHE và SQL_NO_CACHE
Trả lời
Nói chung, bạn không cần phải sử dụng điều này chút nào. SQL_CACHE
chỉ cần thiết nếu truy vấn không được lưu trong bộ nhớ cache theo mặc định, chúng được cấu hình mặc định. SQL_NO_CACHE
rất hữu ích nếu bạn biết một truy vấn cụ thể sẽ không được sử dụng lại trong tương lai gần, đặc biệt nếu tập hợp kết quả lớn. Mục tiêu là tránh làm lộn xộn bộ nhớ cache với kết quả không cần thiết nữa.
Tôi sử dụng SQL_NO_CACHE khi gỡ lỗi tốc độ truy vấn.
Hãy xây dựng. – Pacerier
Khi bạn đang thử nghiệm các truy vấn, thật hữu ích để đo thời gian thực hiện của chúng mà không cần chúng được lấy từ bộ nhớ cache. Tìm nạp từ bộ nhớ cache nhanh hơn nhiều so với tìm nạp từ cơ sở dữ liệu, do đó so sánh kết quả mà không biết liệu đó là từ DB hay bộ nhớ cache không có ý nghĩa. –
- 1. php và mysql, các phương pháp hay nhất
- 2. Chỉ mục MySQL - các phương pháp hay nhất là gì?
- 3. Các phương pháp hay nhất để tự cập nhật các ứng dụng PHP + MySQL là gì?
- 4. Các phương pháp hay nhất về iFrame
- 5. Thông tin đăng nhập/máy chủ của MySQL biến các phương pháp hay nhất
- 6. Các phương pháp hay nhất về Javascript
- 7. Các phương pháp hay nhất để sử dụng các vùng sẵn có EC2 là gì?
- 8. Zend Framework: Sử dụng Mô hình và Chế độ xem, các phương pháp hay nhất
- 9. Các phương pháp hay nhất để tạo thư viện sử dụng các không gian tên .NET
- 10. Các phương pháp hay nhất để sử dụng các tệp tiêu đề C++
- 11. Công cụ và các phương pháp hay nhất để hiểu mã của người khác
- 12. Các phương pháp hay nhất để tương thích ngược API
- 13. Các phương pháp hay nhất để ký hợp đồng .NET?
- 14. Các phương pháp hay nhất về xây dựng một trang web bằng cách sử dụng Node.js
- 15. Các phương pháp hay nhất để sử dụng git với CVS
- 16. Các phương pháp hay nhất để sử dụng AngularJS với Django
- 17. Các phương pháp hay nhất để sử dụng lại nhúng C?
- 18. Các phương pháp hay nhất để sử dụng yêu cầu trong Ruby là gì?
- 19. Chuỗi Python để liệt kê các phương pháp hay nhất
- 20. Các vấn đề cập nhật ứng dụng Android và các phương pháp hay nhất là gì?
- 21. Cách triển khai thiết kế web đáp ứng và các phương pháp hay nhất của mình
- 22. Các phương pháp hay nhất cho pubnub trên android
- 23. Các phương pháp hay nhất về Webrequest Webrequest
- 24. Danh sách SharePoint Các phương pháp hay nhất
- 25. Các phương pháp hay nhất về tối ưu hóa cơ sở dữ liệu MySQL
- 26. Các phương pháp hay nhất về Chẩn đoán mạng?
- 27. Chỉ thị AngularJS - các phương pháp hay nhất khi sử dụng ngModel với tiện ích jQuery
- 28. Tài liệu mã thư viện C++/CLI để sử dụng từ C# - các công cụ và phương pháp hay nhất?
- 29. Các phương pháp hay nhất cho quy trình làm việc của ứng dụng web?
- 30. Các phương pháp hay nhất để phát triển các ứng dụng lớn hơn trên Android
Cụ thể liên quan đến SQL_NO_CACHE - sử dụng tính năng này khi lưu vào bộ nhớ cache kết quả không tạo ra lợi ích để sử dụng lại sau này. Lý do bạn nên làm điều này là bởi vì nếu bạn có nhiều truy vấn mà bộ nhớ cache nhưng không bao giờ được sử dụng, bạn sẽ làm chậm mySQL xuống vì nó dành nhiều thời gian hơn và quản lý bộ nhớ cache không cần thiết. Điều này trở nên đặc biệt rõ ràng khi mọi người thiết lập kích thước query_cache thực sự lớn như thời gian để tuôn ra các mục cũ phát triển với kích thước. Đó là lý do tại sao có tùy chọn 0,1,2 để thay đổi hành vi của query_cache trong mySQL. – Ross
@Michael, Trên thực tế, configuratino được đề xuất cho các máy chủ sản xuất là tắt ** tắt bộ nhớ truy vấn **. – Pacerier
@Pacerier Điều này thực sự phụ thuộc vào khối lượng công việc của bạn. –