1. 程式人生 > >資料庫設計需要注意什麼?

資料庫設計需要注意什麼?

1.資料庫表、欄位必須必須加入中文註釋

因為時間一長如果名字有不是很規範,你不知道這些欄位做什麼用的.

 

2.禁止使用儲存過程、檢視、觸發器、event

因為在高併發量的情況下,我們應該把計算轉移到服務層,否則這些功能很可能把資料庫拖垮。

 

3.禁止儲存大檔案和圖片

不能讓資料庫做它不擅長的事情,大檔案和照片都存在檔案系統中,資料庫存放URL

 

4.禁止使用外來鍵,如果有外來鍵完整性約束,需要應用程式控制

外來鍵會導致表與表之間耦合,update和delete操作都會涉及相關聯的表,十分影響sql的效能,甚至會造成死鎖,高併發情況下容易造成資料庫效能下降,高併發場景下資料庫使用以效能為主。

 

5.使用varchar(20)儲存手機號

因為有的國家代號或者區號什麼的,會出現+-(),varchar可以支援模糊查詢,例如 like "138%"

 

6.單表索引建議控制在5個以內,單索引欄位數不允許超過5個

欄位超過5個時,實習已經起不到有效過濾資料的作用。

 

7.禁止在更新十分頻繁,區別度不高的屬性上加索引

更新會變更B+樹,更新頻繁的欄位建立索引會大大降低資料庫效能

性別這種區分度不大的屬性,建立索引是沒什麼意義的,不能有效過濾資料,效能和全表掃描類似

 

8.建立組合索引,必須把區分度高的欄位放在前面

能夠更加