1.建立索引
(1)合理的索引能夠加速資料讀取效率,不合理的索引反而會拖慢回應速度;
(2)索引越多,更新資料的速度越慢
(3)盡量在MyIsam作為引擎的時候使用索引
(4)可在條件陳述句上建立索引,where,order by
2.大量資料查詢時存盤引擎使用MyISAM
MyISAM與InnoDB的區別
MyISAM:高性能讀取,適合大量資料查詢;適合做很多count的計算;表級鎖,開銷小;不支持事務;不支持外鍵
InnoDB:適用于高并發的頻繁修改表;支持事務;行級鎖,消耗大;不適合建索引;支持外鍵
3.SQL優化
(1)減少查詢欄位,避免select * ,需要什么欄位查詢什么欄位;
(2)一次性對同一個表插入多條資料,可以拼接,效率更高 insert into persona(name,age) values ('aa','12'),('dd','22'),('ww','32');
4.合理的欄位型別
(1)避免使用NULL型別,應使用NOT NULL或者特殊字符(0,1)作為默認值
(2)盡可能使用更小的欄位,MySQL從磁盤讀取資料后會存盤到記憶體中,資料型別越小占用的空間越小
(3)優先使用定長型
5.避免在索引欄位上進行運算
盡量避免在WHERE子句中對欄位進行函式或運算式操作,如:select * from T1 where F1/2 = 100 應該為 select * from T1 where F1 = 100*2
6.盡量使用數字型欄位
7.能夠使用between就不要用in
8.能夠使用distinct就不要用group by
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/265314.html
標籤:MySQL
上一篇:open
下一篇:🍖事務隔離機制
