数据库

首页 » 常识 » 预防 » MySQL数据库开发的三十六条军规
TUhjnbcbe - 2021/1/21 16:27:00

本文为系列文章,主要介绍36条来自一线的MySQL数据库开发实战经验,每一条经验背后都是血淋林的教训,若有一条让你有所受益,本文的目的就达到了。

本文将36条*规做了如下分类:

一.核心*规(5)二.字段类*规(6)三.索引类*规(5)四.SQL类*规(15)五.约定类*规(5)

为了避免收藏不看,让大家更有耐心看下去,印象更深刻些,小编将按以上分类分5次分别发布这些内容,本文是其中的第1篇,首先介绍核心*规:

1、尽量不在数据库做运算?别让脚趾头想事情

?那是脑瓜子的职责

?让数据库多做她擅长的事:

√尽量不在数据库做运算

√复杂运算移到程序端CPU

√尽可能简单应用MySQL

?反例:md5()/OrderbyRand()2、控制单表数据量?一年内的单表数据量预估

√纯INT不超W

√含CHAR不超W

?合理分表不超载,可以按以下字段

USERID

DATE

AREA

….

?建议单库不超过-个表

3、保持表身段苗条?表字段数少而精,好处如下

√IO高效

√全表遍历

√表修复快

√提高幵发

√altertable快

?单表多少字段合适?见下文?单表1G体积W行评估

√顺序读1G文件需N秒

√单行不超过Byte

√单表不超50个纯INT字段

√单表不超20个CHAR(10)字段

?单表字段数上限控制在20~50个平衡范式不冗余?平衡是门艺术

√严格遵循三大范式?

√效率优先、提升性能

√没有绝对的对不错

√适当时牺牲范式、加入冗余

√但会增加代码复杂度拒绝3B

?数据库幵发像城市交通

√非线性增长

?拒绝3B详细解析见后续文章核心*规小结

?尽量不在数据库做运算

?控制单表数据量

?保持表身段苗条

?平衡范式不冗余

?拒绝3B

正文结束

推荐阅读↓↓↓

1.不认命,从10年流水线工人,到谷歌上班的程序媛,一位湖南妹子的励志故事

2.如何才能成为优秀的架构师?

3.从零开始搭建创业公司后台技术栈

4.一位程序员妹纸讲述她是如何拿到美团offer的?

5.37岁程序员被裁,天没找到工作,无奈去小公司,结果懵了...

6.北京西二旗生存现状:钱好挣,饭难吃

7.五轮面试,阿里offer到手!!

8.15张图看懂瞎忙和高效的区别!

一个人学习、工作很迷茫?

点击「阅读原文」加入我们的小圈子!

预览时标签不可点收录于话题#个上一篇下一篇
1
查看完整版本: MySQL数据库开发的三十六条军规