### 數據庫設計規范:總結
所有數據庫對象名稱必須使用小寫字母并用下劃線分割
所有數據庫對象名稱禁止使用Mysql保留關鍵字
數據庫對象的命名要能做到見名識義,并且最好不要超過32個字符
數據庫設計規范:
臨時庫必須以tmp為前綴并以日期為后綴
備份庫,備份表必須以bak為前綴并以日期為后綴
-------
所有存儲相同數據的列名和列類型必須一致
=======================================
數據庫明明規范總結
所有數據庫對象名稱必須小寫
命名要能做到見名識義,禁止使用Mysql保留關鍵字
臨時表以tmp_開頭,備份表以bak_開頭,并以時間戳結尾
所有存儲相同數據的列名和列類型必須一致
數據庫基本設計規范:
所有表必須使用Innodb存儲引擎
5.6以后的默認引擎
支持事務,行級鎖,更好的恢復性,高并發下性能更好
數據庫和表的字符集同意使用UTF8
統一字符集可以避免由于字符集轉換產生的亂碼
MySQL中的UTF8字符集漢字點3個字節,ASCII碼占用1個字節
所有表和字段都需要添加注釋
使用comment從句添加表和列的備注
從一開始就進行數據字典的維護
盡量控制單表數據量的大小,建議控制在500萬以內
500萬并不是MySQL數據庫的限制
可以用歷史數據歸檔,分庫分表等手段來控制數據量的大小
Msql最多可以存儲多少萬數據呢?
這種限制取決于存儲設置和文件系統。。
謹慎使用MySQL分區表
because分區表在物理上表現為多個文件,在邏輯上表現為一個表
謹慎選擇分區鍵,跨分區查詢效率可能更低
(大表)建議采用物理分表的方式管理大數據
盡量做到冷熱數據分離,減小表的寬度
減少磁盤IO,保證熱數據的內存緩存命中率
利用更有效的利用緩存,避免讀入無用的冷數據
經常一起使用的列放到一個表中
禁止在表中建立預留字段
預留字段的命名很難做到見名識義
預留字段無法確認存儲的數據類型,所以無法選擇合適的類型
對預留字段類型的修改,會對表進行鎖定
(修改一個字段的成本,大于新增字段)
禁止在數據庫中存儲圖片,文件等二進制數據
禁止在線上做數據庫壓力測試(會產生大量垃圾數據)
禁止從開發環境,測試環境直接連接生產環境數據庫
====================
數據庫進步設計規范總結
所有表必須使用Innodb存儲引擎
所有表和字段都需要添加注釋,并使用UTF8字符集
盡量控制單表數據量的大小,并且把冷熱數據分離
禁止使用預留字段以及在表中存儲打的二進制數據
索引設計規范
索引對數據庫的查詢性能來說是非常重要的
1.限制每張表上的索引數量,建議單張表索引不超過5個
索引并不是越多越好!索引可以提高效率同樣可以降低效率
禁止給表 中的每一列都建立單獨的索引
- 空白目錄
- Php
- 協議
- composer
- PhpStrom漢
- 數據庫設計
- 數據結構
- 函數
- 正則表達式
- 函數
- 篩選——搜索
- json
- 自定義函數
- Html5
- js
- qq調用
- xdebug 安裝
- 慕課網
- 快速上手Linux 玩轉典型應用
- 微信小程序商城構建全棧應用
- 筆記
- 日志
- 算法
- 排序
- ThinkPhp5.0_框架
- 協議
- 【模型】
- 1_phpstrom自動創建模型
- Model_1001
- Token
- BaseModel.php
- A001Model.php
- 1對多——模型實現
- 嵌套關聯關系
- 隱藏模型字段
- 范例
- 自定義模型基類BaseModel.php
- 定義API版本號V1,V2
- 數據庫
- 語法
- 點擊刷新驗證碼
- 修改文件
- 規范代碼
- 調用第三方類庫
- 隱藏index.php
- 雜項
- 項目
- api
- 篩選__搜索
- 【生成隨機字符串】
- 自動加載配置信息extra
- 【驗證】
- BaseValidate.php
- TestValidate.php
- 事務回滾
- Laravel5_框架
- 協議
- 函數
- 0010
- ————————————————
- 代碼規范_dow
- MySQL
- 優化Mysql
- 回收站ss
- tp5.1Mysql 優化
- 【看云】標簽
- 回收站
- trainer_pic
- 【HTTP】協議
- 199fit雜項
- 【php 錯誤提示信息】
- 日志a
- 測試測試
- 2002
- 項目
- 健身房
- 錢包
- 鄧士鵬
- 1001