<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          mysql查詢緩存簡單使用

          共 2350字,需瀏覽 5分鐘

           ·

          2021-03-15 09:27

          點擊上方藍(lán)色字體,選擇“標(biāo)星公眾號”

          優(yōu)質(zhì)文章,第一時間送達(dá)

            作者 |  pedro7

          來源 |  urlify.cn/VZR3Qn

          76套java從入門到精通實戰(zhàn)課程分享

          MySQL是一個關(guān)系型數(shù)據(jù)庫管理系統(tǒng),由瑞典MySQL AB 公司開發(fā),屬于 Oracle 旗下產(chǎn)品。MySQL 是最流行的關(guān)系型數(shù)據(jù)庫管理系統(tǒng)之一,在 WEB 應(yīng)用方面,MySQL是最好的 RDBMS (Relational Database Management System,關(guān)系數(shù)據(jù)庫管理系統(tǒng)) 應(yīng)用軟件之一。

          當(dāng)我們開啟Mysql的查詢緩存,當(dāng)執(zhí)行完全相同的SQL語句的時候,服務(wù)器就會直接從緩存中讀取結(jié)果。當(dāng)數(shù)據(jù)被修改, 之前的緩存會失效,所以修改比較頻繁的表不適合做查詢緩存。

          一、查詢緩存的實現(xiàn)流程

          二、配置查詢緩存

          1、查看當(dāng)前的mysql數(shù)據(jù)庫是否支持查詢緩存

          SHOW VARIABLES LIKE 'have_query_cache';

          2、查看當(dāng)前mysql是否開啟了查詢緩存

          SHOW VARIABLES LIKE 'query_cache_type';

          3、查看查詢緩存的占用大小

          SHOW VARIABLES LIKE 'query_cache_size';

          4、查看查詢緩存的狀態(tài)變量

          SHOW STATUS LIKE 'Qcache%';

          參數(shù)含義
          Qcache_free_blocks查詢緩存中的可用內(nèi)存塊數(shù)
          Qcache_free_memory查詢緩存的可用內(nèi)存量
          Qcache_hits查詢緩存命中數(shù)
          Qcache_inserts添加到查詢緩存的查詢數(shù)
          Qcache_lowmen_prunes由于內(nèi)存不足而從查詢緩存中刪除的查詢數(shù)
          Qcache_not_cached非緩存查詢的數(shù)量(由于 query_cache_type 設(shè)置而無法緩存或未緩存)
          Qcache_queries_in_cache查詢緩存中注冊的查詢數(shù)
          Qcache_total_blocks查詢緩存中的塊總數(shù)

          三、開啟查詢緩存

          MySQL的查詢緩存默認(rèn)是關(guān)閉的,需要手動配置參數(shù) query_cache_type , 來開啟查詢緩存。query_cache_type
          該參數(shù)的可取值有三個

          含義
          OFF 或 0查詢緩存功能關(guān)閉
          ON 或 1查詢緩存功能打開,SELECT的結(jié)果符合緩存條件即會緩存,否則,不予緩存,顯式指定 SQL_NO_CACHE,不予緩存
          DEMAND 或 2查詢緩存功能按需進(jìn)行,顯式指定 SQL_CACHE 的SELECT語句才會緩存;其它均不予緩存

          1、在usr/my.cnf中進(jìn)行配置(配置文件也可能在/etc/my.cnf)

          2、重啟服務(wù)

          service mysql restart

          3、測試!

          測試

          四、查詢緩存SELECT選項

          可以在SELECT語句中指定兩個與查詢緩存相關(guān)的選項

          • SQL_CACHE : 如果查詢結(jié)果是可緩存的,并且 query_cache_type 系統(tǒng)變量的值為ON或 DEMAND ,則緩存查詢 結(jié)果 。

          • SQL_NO_CACHE : 服務(wù)器不使用查詢緩存。它既不檢查查詢緩存,也不檢查結(jié)果是否已緩存,也不緩存查詢結(jié)果

          SELECT SQL_CACUE id,name FROM customer;
          SELECT SQL_NO_CACHE id,name FROM customer;

          五、查詢緩存失效現(xiàn)象

          1、SQL語句不一致

          要想命中緩存,查詢的SQL語句必須一致

          SQL1:select count(*) from tb_item;
          SQL2:select count(*) from tb_Item;

          2、查詢語句有一些不確定的值

          SQL1:select * from tb_item where updatetime < now() limit 1;
          SQL2:select user();
          SQL3:select database();

          3、不使用任何表查詢語句

          select 'A';

          4、查詢mysql、information_schema或performance_schema數(shù)據(jù)庫中的表

          select * from information_schema.engines;

          5、在存儲的函數(shù)、觸發(fā)器或事件主體內(nèi)執(zhí)行的查詢

          如題

          6、表更改導(dǎo)致緩存刪除

          如果表更改,則使用該表的所有高速緩存查詢都將變?yōu)闊o效并從高速緩存中刪除。這包括使用 MERGE 映射到 已更改表的表的查詢。一個表可以被許多類型的語句,如被改變 INSERT, UPDATE, DELETE, TRUNCATE TABLE, ALTER TABLE, DROP TABLE,或 DROP DATABASE 。


          以上便是關(guān)于mysql查詢緩存簡單使用總結(jié)




          粉絲福利:Java從入門到入土學(xué)習(xí)路線圖

          ??????

          ??長按上方微信二維碼 2 秒


          感謝點贊支持下哈 

          瀏覽 52
          點贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  天天操天天日天天摸 | 国模私拍一区二区三区 | 黑人大屌视频 | 日本亚洲色大成网站 | 天天爽天天爽 |