登录
首页 >  数据库 >  MySQL

mysql数据库建表的几点建议

来源:SegmentFault

时间:2023-02-24 17:58:22 484浏览 收藏

小伙伴们有没有觉得学习数据库很有意思?有意思就对了!今天就给大家带来《mysql数据库建表的几点建议》,以下内容将会涉及到MySQL,若是在学习中对其中部分知识点有疑问,或许看了本文就能帮到你!

  1. 绝大多数表单表列数保持在15个以内,如果你的字段超过15个,你应该考虑根据业务对表做垂直分表,数据拆分,这样既保证业务数据清晰,又能减轻单表读写压力
  2. 列数据选择正确的相关类型存储,如 int,char, varchar
  3. 建表时同时建立索引(当然视情况而定,有的表不需要建索引,就不要画蛇添足了), 避免上线后发现各种慢的问题再去建索引,这样直接影响线上业务,如果刚好需要建索引的表数据量大,且读写访问频繁,则很大几率直接导致服务宕机(线上环境你敢让服务宕机?),虽然可以通过其他工具或复制表的方式规避这个问题,但是如果开始就能建好,何必后面的这些麻烦呢
  4. 建大数据量表时,同时建立分区,例如按时间分区,按自增ID分区,避免上线后修改,影响线上业务,当然分区也只是一种方式,你也可以提前设计好分库分表模式或单库分表模式,这里分表指水平分表,垂直分表终究还是无法解决单表数据量大的问题,总之提前设计好,不然就是给自己或者后面来的人挖坑
  5. 列字段设置相关默认值,避免出现为(null, none)时,程序在对取出的数据做比较或判断时出现异常,而这个异常出现概率极低,导致测试也没发现(本人亲身经历,int字段默认为null, 取出的数据有些为数字,有些为null,导致测试环境程序没问题,线上环境出错)

到这里,我们也就讲完了《mysql数据库建表的几点建议》的内容了。个人认为,基础知识的学习和巩固,是为了更好的将其运用到项目中,欢迎关注golang学习网公众号,带你了解更多关于mysql的知识点!

声明:本文转载于:SegmentFault 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>