基础
- 表存储引擎必须使用InnoDB。
- 表字符集默认使用utf8,必要时候使用utf8mb4。
- utf8通用,无乱码风险,汉字3字节,英文1字节。
- utf8mb4是utf8的超集,有存储4字节例如表情符号时使用它。
- 禁止使用存储过程、视图、触发器、Event。
- 对数据库性能影响较大,对于互联网业务,能让站点层和服务层干的事情就不要交到数据库层。
- 调试、排错、迁移都比较困难,扩展性较差。
- 禁止在数据库中存储大文件,例如照片,可以将大文件存储在对象存储系统,数据库中存储路径。
- 禁止在线上环境做数据库压力测试。
- 测试、开发、线上数据库环境必须隔离。
命名
- 库名、表名、列名必须用小写,采用下划线分隔。
- 库名、表名、列名必须见名知义,长度不要超过32字符。
- 库备份必须以bak为前缀,以日期为后缀。
- 从库以