MySQL Query Cache
設定:
1. 修改 /etc/my.cnf 檔案
# vi /etc/my.cnf
2.在 [mysqld] 裡加入下面這2行
query_cache_size=2m
query_cache_type = 1
註:
query_cache_type = 1 => 全部使用 query cache
query_cache_type = 2 => 選擇性使用或不使用 query cache
SELECT SQL_CACHE ‘*’ FROM table => 使用 query cache
SELECT SQL_NO_CACHE ‘*’ FROM table => 不使用 query cache
query_cache_size=2m : 設定cache大小
3. 重啟MySQL
# /etc/local/mysql/share/mysql/mysql.server restart
指令:
1. 查看是否有開啟 query cache
mysql> SHOW VARIABLES LIKE ‘have_query_cache’;
have_query_cache = YES 表示有開啟
2.查看緩衝的情況
mysql> show status like ‘Qca%’;
3.伺服器執行了多少 SELECT 語句
mysql> show status like ‘Com_sel%’;
實際測試:
使用 phpmyadmin 一次查詢五萬筆資料
未使用 query cache
第一次
第二次
第三次
第四次
第五次
使用 query cache
第一次
第二次
第三次
第四次
第五次
結論:
經過測試後發覺有使用 query ache 後, 第一次之後的查詢時間就明顯的減少很多,雖然看起來好像沒有減少多少,但是當資料量多或是更多人使用查詢時,效果就可以明顯感覺出來了, 而且這個測試只是五萬筆資料測試而已,
沒有留言:
張貼留言