Mysql效能調優

2021-08-17 03:08:06 字數 798 閱讀 8256

mysql 效能調優有很多方面,主要是這幾個方面

1 正規化 是指表的列具有原子性,不可再拆分,只要資料庫是線性的,都自動滿足1nf。

2 正規化 表中的紀錄是唯一的。

3 正規化 表中資料不應該有冗餘,如果通過某個欄位就能得到跟該字段相關的資訊,就沒必要將這些資訊,再存放到該表中。

在3nf中,可能會對查詢效率有所影響,這就需要我們進行分析,到底是降低正規化方便查詢,還是優化業務,遵守正規化。

常用的索引: 主鍵索引,普通索引,唯一索引,全文索引。

主鍵索引: primary key 一般設定id列為主鍵,那麼id就是主鍵索引。主鍵索引不能為null

普通索引:index ,可以是單列,也可以是多列。

唯一索引:unique 顧名思義,唯一索引的那一列或者多列組成的不能重複,唯一索引可以為null。

全文索引:針對myisam 有用,針對檔案文字的檢索。

使用索引可以提高查詢效率,同時也會影響insert,update,delete的效率。

所以:

另外索引有最左原則:

假如有個索引是由begintime和endtime兩列組成。那麼根據最左原則,可供使用的索引由begintime_endtime 和begintime兩個,不包括endtime。

對於一些模糊查詢like,or等,盡量不使用,

水平分割:比如客戶表,可以根據規則,將大量的客戶分散到不同的表中。

垂直分割:對於一條記錄裡有很多欄位不使用,就可以將該錶水平分割。

mysql效能調優

1.對查詢進行優化,應盡量避免全表掃瞄,首先應考慮在 where 及 order by 涉及的列上建立索引。2.應盡量避免在where子句中對字段進行null判斷,否則會導致引擎放棄使用索引而進行全表掃瞄。3.應盡量避免在where子句中使用 或 操作符,否則會導致引擎放棄使用索引而進行全表掃瞄。4...

MySQL效能調優

1 經常用來讀的表使用myisam儲存引擎 2 其餘的表都用innodb儲存引擎 1 在select where order by常涉及到的字段上建立索引 2 where子句中不使用 否則將放棄使用索引進行全表掃瞄 3 盡量避免用null值判斷,否則會全表掃瞄 示例 select id from t...

mysql效能調優

1.伺服器效能引數查詢 show global session status like 引數 一些常用的效能引數如下 connections 連線mysql伺服器的次數。uptime mysql伺服器的上線時間。slow queries 慢查詢的次數。innodb rows read select查...