【数据库】Mysql数据库设计

一、数据库对象命名原则

  1. 所有数据库对象名称必须使用小写字母可选用下划线分割(因为linux下对文件名的大小写敏感);
  2. 所有数据库对象名称定义禁止使用Mysql保留关键字;
  3. 数据库对象的命名要能做到见名识义,并且最好不要超过32个字;
  4. 临时库表必须以tmp为前缀并以日期为后缀;
  5. 备份库,备份表必须以bak为前缀并以日期为后缀;
  6. 所有存储相同数据的列名和列类型必须一致(即关联两个表的列,如果类型不同,会影响查询效率);
  7. 所有表必须使用Innodb存储引擎;
  8. 数据库和表的字符集统一使用UTF8;
  9. 所有表和字段都需要添加注释;
  10. 尽量控制单表数据量的大小,建议控制在500万以内(500万并不是MySQL数据库的限制,限制取决于存储设置和文件系统,解决方案:可以用历史数据归档,分库分表等手段来控制数据量大小);
  11. 谨慎使用MySQL分区表(分区表在物理上表现为多个文件,在逻辑上表现为一个表);
  12. 尽量做到冷热数据分离,减小表的宽度(作用:减少磁盘IO,保证热数据的内存缓存命中率,更有效的利用缓存,避免读入无用的冷数据);
  13. 禁止在表中建立预留字段;
  14. 禁止在数据库中存储图片,文件等二进制数据;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值