規範背景與目的
mysql資料庫與 oracle、 sql server 等資料庫相比,有其核心上的優勢與劣勢。我們在使用mysql資料庫的時候需要遵循一定規範,揚長避短。本規範旨在幫助或指導rd、qa、op等技術人員做出適合線上業務的資料庫設計。在資料庫變更和處理流程、資料庫表設計、sql編寫等方面予以規範,從而為公司業務系統穩定、健康地執行提供保障。
1.基礎規範
1.必須使用innodb儲存引擎
好處: 支援事務、行級鎖、併發效能更好、cpu及記憶體快取頁優化使得資源利用率更高
2.建立資料庫時必須顯式指定字符集,並且字符集只能是utf8或者utf8mb4
好處: 國際統通編碼,無需轉碼,無亂碼風險,節省空間
3.禁止使用儲存過程、檢視、觸發器、event
原因:高併發大資料的網際網路業務,架構設計思路是「解放資料庫cpu,將計算轉移到服務 層」,併發量大的情況下,這些功能很可能將資料庫拖死,業務邏輯放到服務層具備更好的 擴充套件性,能夠輕易實現「增機器就加效能」。資料庫擅長儲存與索引,cpu計算還是上移吧。
4.禁止儲存大檔案或者大**
原因:為何要讓資料庫做它不擅長的事情?大檔案和**儲存在檔案系統,資料庫裡可以存檔案訪問連線 5.單庫表數目必須小於500
2.命名規範 MySQL資料庫設計規範
禁止使用mysql保留關鍵字 資料庫物件的命名要見名識義,並且最好不要超過32個字元 臨時庫表必須以tmp為字首並以日期為字尾 備份庫表必須以bak為字首並以日期為字尾 所有儲存相同資料的列名和列型別必須一致 資料庫和表的字符集統一使用utf 8。所有表和字段都要新增注釋 create table ...
MySQL資料庫設計規範
1.庫名,表名,欄位名必須使用小寫字母,多個單詞中間用下劃線隔開 2.庫名,表名,欄位名支援最多32個字元,易於辨識和減少傳輸量不要超過32 3.庫名,表名,欄位名禁止使用mysql保留關鍵字 4.臨時庫,臨時表名必須以tmp為字首並以日期為字尾 5.備份庫,備份表名必須以bak為字首並以日期為字尾...
MYSQL資料庫設計規範
資料庫設計規範 命名規範 小寫字母開頭單詞之間使用下劃線分割 大小寫敏感 禁止使用保留關鍵字 不要超過32個字元 臨時表以tmp為字首 時間為字尾 備份表 bak為字首 時間為字尾 所有儲存相同資料型別的列名和列型別必須一致 所有表必須使用innodb儲存引擎 原因 預設儲存引擎 進行了很多優化 支...