MySQL - 將索引載入到快取中語句



MySQL CACHE INDEX 語句用於將表的索引分配給鍵快取。此語句僅適用於 MyISAM 表。您可以使用 SET GLOBAL 語句建立鍵快取。

MySQL LOAD INDEX INTO CACHE 語句用於將表的索引預載入到預設鍵快取或使用 CACHE INDEX 語句分配給它的快取中。此語句僅適用於 MyISAM 表。

語法

以下是 MySQL LOAD INDEX INTO CACHE 語句的語法:

LOAD INDEX INTO CACHE
   tbl_name
      [PARTITION (partition_list)]
      [{INDEX|KEY} (index_name[, index_name] ...)]
      [IGNORE LEAVES]

示例

假設我們使用 CREATE 語句建立了新的資料庫和名為 temp 的表,如下所示:

CREATE TABLE temp (
ID INT, 
Name VARCHAR(100), 
Age INT, 
City VARCHAR(100)) ENGINE = MyISAM ;

現在,讓我們向 temp 表中插入一些記錄:

INSERT INTO temp values
(1, 'Radha', 29, 'Vishakhapatnam'),
(2, 'Dev', 30, 'Hyderabad');

還假設我們在上面建立的表上建立了索引:

CREATE INDEX sample_index ON temp (name) USING BTREE;
CREATE INDEX composite_index on temp (ID, Name); 

現在,使用 SET GLOBAL 語句建立一個新的鍵快取:

SET GLOBAL TestCache.key_buffer_size=128*1024;

讓我們將表 temp 的索引分配給鍵快取 TestCache

CACHE INDEX temp IN TestCache;

輸出

以下是上述查詢的輸出:

操作 訊息型別 訊息文字
sample.temp 分配到鍵快取 狀態 OK

以下查詢預載入上述分配的鍵快取:

LOAD INDEX INTO CACHE temp IGNORE LEAVES;

輸出

執行上述查詢後,將產生以下輸出:

操作 訊息型別 訊息文字
demo.temp 預載入鍵 狀態 OK
廣告
© . All rights reserved.