1.参考资料
http://www.cnblogs.com/AK2012/archive/2012/12/28/2012-122802.html
2.摘要
优化①:设计规范化表,消除数据冗余
第一范式:属性(字段)的原子性约束,要求属性具有原子性,不可再分割;
第二范式:记录的惟一性约束,要求记录有惟一标识,每条记录需要有一个属性来做为实体的唯一标识。
第三范式:属性(字段)冗余性的约束,即任何字段不能由其他字段派生出来,在通俗点就是:主键没有直接关系的数据列必须消除(消除的办法就是再创建一个表来存放他们,当然外键除外)
如果数据库设计达到了完全的标准化,则把所有的表通过关键字连接在一起时,不会出现任何数据的复本(repetition)。标准化的优点是明显的,它避免了数据冗余,自然就节省了空间,也对数据的一致性(consistency)提供了根本的保障,杜绝了数据不一致的现象,同时也提高了效率。
优化②:适当的冗余,增加计算列
很多情况下会为了提高数据库的运行效率,常常需要降低范式标准:适当增加冗余,达到以空间换时间的目的。
优化③:索引
索引是一个表优化的重要指标,在表优化中占有极其重要的成分,所以将单独写一章”SQL索引一步到位“去告诉大家如何建立和优化索引
优化④:主键和外键的必要性
优化⑥:传说中的‘三少原则’
①:数据库的表越少越好
②:表的字段越少越好
③:字段中的组合主键、组合索引越少越好
当然这里的少是相对的,是减少数据冗余的重要设计理念。
优化⑦:分割你的表,减小表尺寸
优化⑧:字段设计原则
更多的优化的方法可以参考
http://www.cnblogs.com/zengxiangzhan/archive/2009/12/04/1617186.html