1. 程式人生 > >mysql資料庫表設計和優化

mysql資料庫表設計和優化

一 mysql資料庫表設計原則


1,資料庫命名原則:英文字母,多個單詞間用下劃線'_',單詞儘量簡潔、見名知意
2,資料庫表命名原則:英文字母,多個單詞間用下劃線'_',單詞儘量簡潔、見名知意

3,資料庫表字段型別:儘量用int型,固定長度用char,使用varchar的範圍儘量貼合實際,能用tinyint就不要用int和smallint,最好給欄位設定預設值,預設值不為null;

4,資料庫表字段索引:主鍵必須設定索引,例如user_name欄位,索引名為user_name_index,索引不必設定太多

5,資料庫正規化

第一正規化:欄位值具有原子性,即欄位值不可分割

第二正規化:一個表必須有主鍵,即一行資料可以獨立區別

第三正規化:一個表中不能包含關聯表中其他非關鍵字的資訊,即不要有冗餘

二 sql優化


1,務必不要使用select * ,儘量使用limit,我們要優化的目的就是儘量不去做全表掃描

2,頻繁查詢的where子語句的條件加上索引

3,where 子語句的連線不要使用or,這樣會使引擎放棄索引,直接全表掃描

4,sql語句不要做太多關聯,最好簡單分開