本文共 815 字,大约阅读时间需要 2 分钟。
所有数据库对像名称必须使用小写字母并用下划线分割
不同的数据库名:DbName dbname 不同的表名:Table table tabLe所有数据库对像名称禁止使用MySQL保留关建字
数据库对像的命名要能做到见名识义,并且最好不要超过32个字符 临时库表必须以tmp为前缀并以日期为后缀 备份库,备份表必须以bak为前缀并以日期为后缀 所有存储相同数据的列名和列类型必须-致,一般作为关联列Mysql5.5使用之前Myisam(默认存储引擎)情况
所有表必须使用Innodb存储引擎5.6以后的默认引擘
支持事务,行级锁,更好的恢复性,高并发下性能更好
数据库和表的字符集统一使用UTF8
统一字符集可以避免由于字符集转换产成的乱码MySQL中UTF8字符集汉字点3个字节, ASCI码占用1个字节
如果用varchar(255)那么就会占用255*3=765个字节
所有表和字段都需要添加注释
使用comment从句添加表和列的备注 从一开始就进行数据字典的维护尽量控制单表数据量的大小,建议控制在500万以内
500万并不是MySQL数据库的限制 修改表结构,备份,恢复都会有很大问题 可以用历史数据归档,分库分表等手段来控制数据量大小谨慎使用MySQL分区表
分区表在物理.上表现为多个文件,在逻辑上表现为- -个表 谨慎选择分区键,跨分区查询效率可能更低 建议采用物理分表的方式管理大数据尽量做到冷热数据分离,减小表的宽度
减少磁盘I0 ,保证热数据的内存缓存命中率 利用更有效的利用缓存,避免读入无用的冷数据 经常-起使用的列放到一个表中禁止在表中建立预留字段
预留字段的命名很难做到见名识义 预留字段无法确认存储的数据类型,所以无法选择合适的类型 对预留字段类型的修改,会对表进行锁定禁止在数据库中存储图片,文件等=进制数据
禁止在线上做数据库压力测试 禁止从开发环境,测试环境直连生产环境数据库
转载地址:http://aattf.baihongyu.com/