2010-02-09 39 views
6

Tôi đang thiết lập bộ nhớ cache trong MySQL.query_cache_min_res_unit; Nó là gì và nó làm gì?

Ai đó có thể giải thích query_cache_min_res_unit? Nó làm gì?

Tôi đã đọc hướng dẫn và nó không giải thích tốt như vậy.

tin chi tiết được đánh giá cao ... Hoặc ví dụ ...

Cảm ơn

Trả lời

6

query_cache_min_res_unit là một biến mà có thể được sử dụng cho các truy vấn tối ưu hóa, tùy thuộc vào lớn các kết quả đặt bạn có thể làm việc với.

Theo định nghĩa, giá trị là tối thiểu lượng bộ nhớ mà MySQL sẽ phân bổ để lưu trữ truy vấn.

Bạn muốn giá trị này xấp xỉ kích thước truy vấn trung bình. Mỗi cơ sở dữ liệu có các giá trị khác nhau cho mức tối thiểu, tùy thuộc vào số lượng lớn các bộ bạn đang làm việc.

Dưới đây là của tôi:

mysql> show variables like "query%"; 
+------------------------------+---------+ 
| Variable_name    | Value | 
+------------------------------+---------+ 
| query_alloc_block_size  | 8192 | 
| query_cache_limit   | 1048576 | 
| query_cache_min_res_unit  | 4096 | 
| query_cache_size    | 0  | 
| query_cache_type    | ON  | 
| query_cache_wlock_invalidate | OFF  | 
| query_prealloc_size   | 8192 | 
+------------------------------+---------+ 
7 rows in set (0.25 sec) 

Như bạn có thể thấy, giá trị nhỏ nhất của tôi là 4096 byte.

Theo dõi, bạn có thể đọc thêm tại Optimizing the MySQL Query Cache

+0

Cảm ơn, tôi nghĩ tôi hiểu. Bài viết đó rất hay! Btw, tôi nghĩ rằng các con số trong các biến là byte, không KB ... Tôi không chắc chắn mặc dù ... Cảm ơn :) –

+0

Bạn có thể là chính xác, tôi sẽ chỉnh sửa nó anyways vì bây giờ tôi nghi ngờ bản thân mình. –

+0

bộ nhớ cache truy vấn phân bổ các khối với kích thước tối thiểu được đưa ra bởi biến hệ thống query_cache_min_res_unit. Khi một truy vấn được thực hiện, khối kết quả cuối cùng được cắt thành kích thước dữ liệu thực tế để bộ nhớ không sử dụng được giải phóng. – user1342336

Các vấn đề liên quan