如何以往任何時候都依賴於...索引是優化的一種方式。 首先,您可以使用以下條目識別緩慢查詢:log-slow-queries long_query_time = value my.cnf 這讓您知道是否需要進行優化。
接下來讓MySQL的解釋查詢。 最有價值的是possible_keys:item_name,categoryid和使用的密鑰密鑰:item_name並查看是否存在:using_filesort。最後一個(using_filesort)說,你應該使用索引來節省響應時間
但是!,因爲每個使用表中的一個鍵也是值得思考聚集在某些方面:
聯合索引:
- (類別ID,ITEM_NAME)當你WHERE部分
categoryid="iao" AND item_name="xyz"
- (ITEM_NAME,類別ID)當你WHERE部分
item_name="xyz" AND categoryid="iao"
--->的順序是非常重要的!
如果您WHERE部分是item_name="xyz" AND categoryid="iao"
使用兩個指標:1, 指數:ITEM_NAME有助於節省時間 2.指數:類標識符是已失去的時間
的使用組合索引,你會獲得最大的效益當你的哪裏部分利用ORDER BY
例如:哪裏部分是item_name="xyz" AND categoryid="iao" ORDER BY date_added
。在這種情況下,組合索引:(item_name,categoryid,date_added)保存時間。
而且是做正確的方式:
索引消耗通過索引(DELETE, UPDATE, REPLACE, INSERT
)時間,節省時間每個SELECT
所以,這意味着我可以不用擔心由於指標的休閒創建類別ID索引經常更新展示和訪問。謝謝。 – kb0000 2012-03-05 05:40:16
是你可以說 – 2012-03-05 05:42:56