mysql的物理设计_MySQL 数据库设计 笔记与总结(3)物理设计

【物理设计的工作】

① 选择合适的数据库管理系统:Oracle,SQLServe,MySQL,PgSQL

② 定义数据库、表及字段的命名规范

③ 根据所选的 DBMS 系统选择合适的字段类型

④ 反范式化设计 —— 考虑读效率,在一些表中增加适当的冗余(空间换时间)

【数据库选择】

ea71e0fa20cd29fcda6a492657cf7b29.png

【MySQL 常用的存储引擎】

9268b4cbdafec270837dd026b382ab38.png

注:Archive 主要用于存储日志;Ndb cluster 是 MySQL 集群(内存型集群)所使用的存储引擎。

【表及字段的命名规则】

1675c57bddaf8e12512082dce3613cd4.png

90a3c01f7aaaeadb05b140418ef6068b.png

bb97e365bc62b9bf1c83bceb957cadb6.png

【建立数据库及表结构 —— 字段类型的选择原则】

9496e0602754629a6bbe94689f3362ed.png

eb65d512732d9aa478feb939d3ddfa72.png

(个人经验,选择 Datetime 方便查看,同时 Datetime 也可以直接比较大小)

dca1b473be6b560ed1bea2d4d61b97d1.png

注:TIMESTAMP 最大 2037 年。

6feb68bc145629fc6c821fc33692e17b.png

【具体选择字段类型】

2551c36301dc0b0ed1038a02cc0f5492.png

身份证号或者电话这种长度固定的数据,可以使用 char 来存储。

a097b6a5b29d6d6c4e5ba005d995b81c.png

ff327059fb6b535abb008b83acb10b53.png

【如何选择主键】

e356488b4d088e493978d90d67f17951.png

【避免使用外键约束】

664e29eca5d71cf392fcf5967757253e.png

【避免使用触发器】

f0671d4e92ff355a9c1b85cf79e27ac2.png

【关于预留字段】

d0c65446823edca137507f919d7698f3.png

【反范式化】

e307394b0503701f5ba1ab69c578355c.png

ee4a5bc7a0af71bb43f4f51fe36b5a2b.png

如何查询订单信息?

a4c2f2eabaa5565ceb6ea6f5ac8ca43e.png

如何查询订单详情?

47862bdc2358dce89a4e2461d51e8117.png

【反范式化的设计】

a0c98484ec0ebf81b1f98bbd37680790.png

如何查询订单信息?

55aa0b0d94f4634cea6b52f3d0f472f1.png

如何查询订单详情?

bdc88e705ccaa282d0760d10e5893e88.png

【为什么反范式化】

① 减少表的关联数量

② 增加数据的读取效率

③ 反范式化一定要适度

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值