mysql 優化筆記

1.要有好的表結構

時間類型用int存儲

參考阿里mysql手冊

2.作爲條件的字段要加索引 where,order by group by 等,避免全表掃描,臨時表

3.重複、冗餘的索引要清除 (information_schema),或使用pt-duplicate-key-checker工具

SELECT a.TABLE_SCHEMA 數據名,a.TABLE_NAME 表名,a.INDEX_NAME 索引1,b.INDEX_NAME 索引2,a.COLUMN_NAME 重複列名 FROM STATISTICS a JOIN 
STATISTICS b ON a.TABLE_SCHEMA=b.TABLE_SCHEMA AND a.TABLE_NAME=b.TABLE_NAME
AND a.SEQ_IN_INDEX=b.SEQ_IN_INDEX AND a.COLUMN_NAME=b.COLUMN_NAME
WHERE a.SEQ_IN_INDEX=1 AND a.INDEX_NAME<>b.INDEX_NAME

4.limit偏移量高時需優化(索引覆蓋)

5.使用聯合索引時,把離散度 [select count(distinct col) from table] 高的字段放到前面 列: index_lh(col2,col1) col2離散度高,能夠快速檢索出結果

6.使用explain查看sql執行計劃

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章