MySQL優化

1.創建索引併發

  (1)合理的索引可以加速數據讀取效率,不合理的索引反而會拖慢響應速度;函數

  (2)索引越多,更新數據的速度越慢高併發

  (3)儘可能在MyIsam做爲引擎的時候使用索引性能

  (4)可在條件語句上創建索引,where,order by優化

2.大量數據查詢時存儲引擎使用MyISAM索引

  MyISAM與InnoDB的區別事務

  MyISAM:高性能讀取,適合大量數據查詢;適合作不少count的計算;表級鎖,開銷小;不支持事務;不支持外鍵內存

  InnoDB:適用於高併發的頻繁修改表;支持事務;行級鎖,消耗大;不適合建索引;支持外鍵效率

3.SQL優化select

  (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

相關文章
相關標籤/搜索