MySQL的查詢快取功能何時該開啟
MySQL的查詢快取功能何時該開啟
背景描述
查詢快取(Query Cache,簡稱QC),儲存SELECT語句及其產生的資料結果。
適用場景
用於頻繁提交同一個語句,並且該表資料變化不是很頻繁的場景,例如一些靜態頁面,或者頁面中的某塊不經常發生變化的資訊。
由於查詢快取需要快取最新資料結果,因此表資料發生任何變化(insert、update、delete或其他可能產生資料變化的操作),都會導致查詢快取被重新整理。因而,對於一個更新頻率非常低而只讀查詢頻率非常高的場景下,開啟查詢快取還是比較有優勢的。
不適用場景
查詢快取嚴格要求2次SQL請求要完全一樣,包括SQL語句,連線的資料庫、協議版本、字符集等因素都會影響。下面為查詢快取不適用的幾個場景:
- 子查詢;
- 過程、函式、觸發器、event中呼叫的SQL,或者引用到這些結果的;
- 查詢中涉及一些特殊函式時,例如:BENCHMARK()、CURDATE()、CURRENT_TIME()、CURRENT_TIMESTAMP()、NOW()、SLEEP()、CONNECTION_ID()、CURRENT_DATE()、CURRENT_USER()、PASSWORD()、RAND()、UUID()、ENCRYPT()、LAST_INSERT_ID()等等;
- 查詢涉及到mysql,information_schema或performance_schema。
- 類似SELECT…LOCK IN SHARE MODE、SELECT…FOR UPDATE、SELECT..INTO OUTFILE/DUMPFILE、SELECT * FROM ... WHERE autoincrement_col IS NULL的查詢;
- SELECT執行計劃用到臨時表;
- 未引用任何表的查詢,例如SELECT 1+2;
- 查詢產生了告警(warnings);
- SELECT語句中存在SQL_NO_CACHE關鍵字;
- 涉及到分割槽表。
可見,使用查詢的快取的限制非常多。當使用場景中以只讀為主,很少有更新的情況時,再考慮 開啟查詢快取。
開啟查詢快取
設定選項query_cache_type = 1 ,同時設定query_cache_size = 67108864;
注:query_cache_size的值設定在100MB以內即可。在MySQL裡查詢快取是由一個全域性鎖在控制,每次更新查詢快取的記憶體塊都需要進行鎖定。
關閉查詢快取
設定選項query_cache_type = 0,同時設定query_cache_size = 0。
About Me
........................................................................................................................ ● 本文作者:小麥苗,部分內容整理自網路,若有侵權請聯絡小麥苗刪除 ● 本文在itpub、部落格園、CSDN和個人微 信公眾號( DB寶)上有同步更新 ● 本文itpub地址: http://blog.itpub.net/26736162 ● 本文部落格園地址: http://www.cnblogs.com/lhrbest ● 本文CSDN地址: https://blog.csdn.net/lihuarongaini ● 本文pdf版、個人簡介及小麥苗雲盤地址: http://blog.itpub.net/26736162/viewspace-1624453/ ● 資料庫筆試面試題庫及解答: http://blog.itpub.net/26736162/viewspace-2134706/ ● DBA寶典今日頭條號地址: ........................................................................................................................ ● QQ群號: 230161599 、618766405 ● 微 信群:可加我微 信,我拉大家進群,非誠勿擾 ● 聯絡我請加QQ好友 ( 646634621 ),註明新增緣由 ● 於 2020-05-01 06:00 ~ 2020-05-30 24:00 在西安完成 ● 最新修改時間:2020-05-01 06:00 ~ 2020-05-30 24:00 ● 文章內容來源於小麥苗的學習筆記,部分整理自網路,若有侵權或不當之處還請諒解 ● 版權所有,歡迎分享本文,轉載請保留出處 ........................................................................................................................ ● 小麥苗的微店: ● 小麥苗出版的資料庫類叢書: http://blog.itpub.net/26736162/viewspace-2142121/ ● 小麥苗OCP、OCM、高可用網路班: http://blog.itpub.net/26736162/viewspace-2148098/ ● 小麥苗騰訊課堂主頁: https://lhr.ke.qq.com/ ........................................................................................................................ 使用 微 信客戶端掃描下面的二維碼來關注小麥苗的微 信公眾號( DB寶)及QQ群(DBA寶典)、新增小麥苗微 信, 學習最實用的資料庫技術。
........................................................................................................................ |
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/26736162/viewspace-2692161/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- mysql的查詢快取說明MySql快取
- mysql查詢快取簡單使用MySql快取
- Mysql 查詢快取 query_cacheMySql快取
- MySQL查詢快取引數詳解MySql快取
- MySQL開啟慢查詢MySql
- MySQL加速查詢速度的獨門武器:查詢快取(QueryCache)MySql快取
- 方法快取與查詢快取
- hibernate的查詢快取薦快取
- MySQL 4.1.0 中文參考手冊 --- 6.9 MySQL 查詢快取 (轉)MySql快取
- redis 快取 singlefly 查詢Redis快取
- hibernate的查詢快取和二級快取的配合使用快取
- linux下開啟mysql慢查詢,分析查詢語句LinuxMySql
- MySQL查詢擷取分析MySql
- 執行緒的快取何時重新整理?執行緒快取
- 查詢快取(query_cache)的影響快取
- 海量資料的查詢快取問題快取
- MYSQL開啟慢查詢日誌實施MySql
- mysql開啟檢視慢查詢日誌MySql
- MySQL查詢時間段MySql
- Mysql第十日字符集,XA事務,查詢快取MySql快取
- day03-商家查詢快取02快取
- mysql5.7.10開啟慢查詢詳解MySql
- 如何在MySQL中開啟慢查詢日誌?MySql
- 電商小白該選擇怎樣的快遞查詢工具?
- 微服務複雜查詢之快取策略微服務快取
- day02-2-商鋪查詢快取快取
- 老司機使用 Redis 快取複雜查詢Redis快取
- mybatis入門基礎(八)-----查詢快取MyBatis快取
- Mysql 查詢時間轉換MySql
- MySQL查詢取別名報錯MySql
- MySQL新加使用者和開啟慢查詢MySql
- 【Mysql】mysql開啟審計功能MySql
- Mysql優化_慢查詢開啟說明及Mysql慢查詢分析工具mysqldumpslow用法講解MySql優化
- iOS開發-清理快取功能的實現iOS快取
- 開啟查詢慢查詢日誌引數
- Doris2.0的Analyze功能,能讓查詢變快不?
- localstorage實現帶過期時間的快取功能快取
- 關於分頁查詢結果的快取問題快取