mysql建表的最佳实践是什么

mysql建表的最佳实践是什么

参与13

2同行回答

杨博杨博课题专家组IT顾问某科技公司
1.范式和反范式结合,优先采用范式。不过业务特点不一样做法不一样。2.索引控制在5个以内。3.考虑好容量,对于容量大的表做好数据和索引拆分。显示全部

1.范式和反范式结合,优先采用范式。不过业务特点不一样做法不一样。

2.索引控制在5个以内。

3.考虑好容量,对于容量大的表做好数据和索引拆分。

收起
互联网服务 · 2017-05-17
浏览2644
晓黎 邀答
WentasyWentasy数据库管理员ChainONE
我简单列一下:表名跟业务绑定,表名使用小写字母和下划线命名除存放日志的表和中间临时表外,其他表原则上必须有主键创建表必须包含行记录的创建时间字段和修改时间字段优先选择存储引擎类型为 InnoDB表和字段必须有 Comment 注释字符集优先选择 UTF-8根据数据尺寸决定数据长...显示全部

我简单列一下:

  • 表名跟业务绑定,表名使用小写字母和下划线命名
  • 除存放日志的表和中间临时表外,其他表原则上必须有主键
  • 创建表必须包含行记录的创建时间字段和修改时间字段
  • 优先选择存储引擎类型为 InnoDB
  • 表和字段必须有 Comment 注释
  • 字符集优先选择 UTF-8
  • 根据数据尺寸决定数据长度,尽量减少冗余
  • 组合索引不能超过5列,最好保持在 3 列以内
  • 组合索引最常使用的字段或区分度高的字段考虑放在索引第一列
  • 索引不宜太多,维护索引也需要成本,单表索引数量建议不超过 5 个
  • 尽量避免使用触发器、存储过程、自定义函数(UDF)、视图
  • 预估容量,是否需要使用分区表,是否需要分表分库
  • 所有字段建议设置默认值,INT 为 0,VARCHAR 为 ''
收起
互联网服务 · 2017-05-19
浏览2408

提问者

陈宇
陈宇0622
系统工程师某银行
擅长领域: 存储灾备服务器

问题来自

相关问题

相关资料

相关文章

问题状态

  • 发布时间:2017-05-17
  • 关注会员:3 人
  • 问题浏览:5426
  • 最近回答:2017-05-19
  • X社区推广