58到家MySQL数据库开发规范(javamysql数据)
一、基础规范
-
表存储引擎必须使用InnoDB
-
表字符集默认使用utf8,必要时候使用utf8mb4
解读:
(1)通用,无乱码风险,汉字3字节,英文1字节
(2)utf8mb4是utf8的超集,有存储4字节例如表情符号时,使用它
-
禁止使用存储过程,视图,触发器,Event
解读:
(1)对数据库性能影响较大,互联网业务,能让站点层和服务层干的事情,不要交到数据库层
(2)调试,排错,迁移都比较困难,扩展性较差
-
禁止在数据库中存储大文件,例如照片,可以将大文件存储在对象存储系统,数据库中存储路径
-
禁止在线上环境做数据库压力测试
-
测试,开发,线上数据库环境必须隔离
二、命名规范
-
库名,表名,列名必须用小写,采用下划线分隔
解读:abc,Abc,ABC都是给自己埋坑
-
库名,表名,列名必须见名知义,长度不要超过32字符
解读:tmp&#x