一、基礎規(guī)范
解讀:支持事務、行級鎖、并發(fā)性能更好、CPU及內存緩存頁優(yōu)化使得資源利用率更高
解讀:萬國碼,無需轉碼,無亂碼風險,節(jié)省空間
解讀:N年后誰tm知道這個r1,r2,r3字段是干嘛的
解讀:高并發(fā)大數(shù)據(jù)的互聯(lián)網(wǎng)業(yè)務,架構設計思路是“解放數(shù)據(jù)庫CPU,將計算轉移到服務層”,并發(fā)量大的情況下,這些功能很可能將數(shù)據(jù)庫拖死,業(yè)務邏輯放到服務層具備更好的擴展性,
(5)禁止存儲大文件或者大照片
二、命名規(guī)范
(7)線上環(huán)境、開發(fā)環(huán)境、測試環(huán)境數(shù)據(jù)庫內網(wǎng)域名遵循命名規(guī)范
線上環(huán)境:dj.xxx.db
測試環(huán)境:dj.xxx.tdb
線上從庫:dj.xxx-s.db
(8)庫名、表名、字段名:小寫,下劃線風格,不超過32個字符,必須見名知意,禁止拼音英文混用
三、表設計規(guī)范
(11)單表列數(shù)目必須小于30
解讀:
b)主鍵要選擇較短的數(shù)據(jù)類型, Innodb引擎普通索引都會保存主鍵的值,較短的數(shù)據(jù)類型可以有效的減少索引的磁盤空間,提高索引的緩存效率
(13)禁止使用外鍵,如果有外鍵完整性約束,需要應用程序控制
用以性能優(yōu)先
(14)必須把字段定義為NOT NULL并且提供默認值
a)null的列使索引/索引統(tǒng)計/值比較都更加復雜,對MySQL來說更難優(yōu)化
c)null值需要更多的存儲空,無論是表還是索引中每行中的null的列都需要額外的空間來標識
就不會包含name為null值的記錄
解讀:會浪費更多的磁盤和內存空間,非必要的大量的大字段查詢會淘汰掉熱數(shù)據(jù),導致內存命中率急劇降低,影響數(shù)據(jù)庫性能
解讀:使用整數(shù)吧,小數(shù)容易導致錢對不上
解讀:
b)手機號會去做數(shù)學運算么?
(18)禁止使用ENUM,可使用TINYINT代替
a)增加新的ENUM值要做DDL操作
b)ENUM的內部實際存儲就是整數(shù),你以為自己定義的是字符串?
分享文章:學習數(shù)據(jù)庫必須要了解這18條
新聞來源:http://jinyejixie.com/news16/105366.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站制作、品牌網(wǎng)站建設、建站公司、外貿建站、面包屑導航、小程序開發(fā)
廣告
聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經(jīng)允許不得轉載,或轉載時需注明來源:
創(chuàng)新互聯(lián)