禁止使用儲存過程,檢視,觸發器,event
禁止在資料庫中儲存大檔案,例如**,可以將大檔案儲存在物件儲存系統,資料庫中儲存路徑
測試,開發,線上資料庫環境必須隔離
庫名,表名,列名必須見名知義,長度不要超過 32 字元
庫備份必須以 bak 為字首,以日期為字尾
從庫必須以-s
為字尾
備庫必須以-ss
為字尾
禁止使用外來鍵,如果要保證完整性,應由應用程式實現
建議將大字段,訪問頻度低的字段拆分到單獨的表中儲存,分離冷熱資料(具體參考:《如何實施資料庫垂直拆分》)
根據業務區分使用datetime/timestamp
必須把字段定義為not null
並設預設值
使用int unsigned
儲存ipv4
,不要用char(15)
使用varchar(20)
儲存手機號,不要使用整數
使用tinyint
來代替enum
組合索引欄位數不建議超過 5 個
不建議在頻繁更新的字段上建立索引
非必要不要進行join
查詢,如果要進行join
查詢,被join
的字段必須型別相同,並建立索引
理解組合索引最左字首原則,避免重複建設索引,如果建立了(a,b,c),相當於建立了(a), (a,b), (a,b,c)
insert
必須指定字段,禁止使用insert into t values()
隱式型別轉換會使索引失效,導致全表掃瞄
禁止在where
條件列使用函式或者表示式
禁止負向查詢以及%
開頭的模糊查詢
禁止大表join
和子查詢
同乙個欄位上的or
必須改寫問in
,in
的值必須少於 50 個
應用程式必須捕獲 sql 異常
mysql 使用規範 MySQL使用規範
一 表設計類 強制類規範 1.建立表的儲存引擎必須是innodb。2.每個表必須顯式的指定乙個主鍵。3.不允許使用聯合主鍵。4.不允許使用外來鍵。5.不允許存在和主鍵重複的索引。6.自增長字段必須是主鍵或唯一索引。7.不允許在資料庫中儲存諸如,影像之類的二進位制資料。8.不允許使用text型別字段 ...
mysql 使用規範 MySQL使用規範
mysql使用規範 一 核心規範 www.2cto.com 1.不用資料庫做運營,如md5 order by rand 2.控制單錶資料量 a 單錶純int不超過1000w b 單錶含char不超過500w c 單庫不超過300 400個表 3.表字段數少而精 a 影響因素 i.io高效 ii.全表...
mysql使用規範 MySQL使用規範 MySQL
bitscn.com mysql使用規範 一 核心規範 1.不用資料庫做運營,如md5 order by rand 2.控制單錶資料量 a 單錶純int不超過1000w b 單錶含char不超過500w c 單庫不超過300 400個表 3.表字段數少而精 a 影響因素 i.io高效 ii.全表遍歷...