您的位置:首页 > 数据库

合理优化数据库表结构提高项目执行效率[数据库设计]

2016-09-18 16:17 633 查看
数据库表设计优化:

有时为了提高数据库效率,可适当考虑反三范式,适当添加冗余字段,减少多表去关联查询。

使用索引

2.1 数据库表设计时要合理的去使用普通索引、主键索引、唯一索引、全文索引以及复合(组合)索引。
2.2 何时创建索引:
(1) 较频繁的作为查询条件的字段;
(2) 唯一性太差的字段(如性别/状态字段等),即使我们频繁作为查询的条件,匀不适合创建索引;
(3) 数据更新非常频繁的字段(如统计平台当前的在线人数字段/商品的销售数量字段等)是不适合创建索引。
2.3 具体索引的使用请查看: http://yaowusheng.blog.51cto.com/11020801/1853754

注意: 创建索引是需要开销的,会占用一定的磁盘空间; 索引数据牵移难度大;为了维护索引文件,会导致增、删、改操作变慢,请勿过度使用索引,合理使用索引至关重要。

3.选择合适的MySQL存储引擎:
3.1 myisam储存引擎
如果表对事务要求不高,同时是以查询和添加为主的,考虑myisam储存引擎(如bbs的发帖表和回复表);
3.2 innodb储存引擎
对事务要求高,保存的数据都是重要的数据,建议使用innodb储存引擎(如账号表、订单表等重要的表);
3.3 memory储存引擎
数据变化频繁,不需要入库,同时又频繁的查询和修改,可考虑使用memory储存引擎(注意:插入的数据不会被持久化到磁盘空间,只是临时保存到了内存中,关闭了数据就会丢失);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  优化 优化表