一、数据表数据类型优化
1. tinyint、smallint、bigint
考虑空间的问题,考虑范围的问题
2.char、varchar
存储字符串长度是否固定
3.enum
特定、固定的分类可以使用enum存储,效率更快
4.IP地址的存储
使用ip2long()函数,将IP地址转为整型
使用long2ip()函数,将整型转化为IP地址
二、索引的优化
索引的创建原则
索引不是越多越好,在合适的字段上创建合适的索引
复合索引的前缀原则:like查询%问题、全表扫描优化、or条件索引使用情况、字符串类型索引失效的问题
三、SQL语句的优化
1.优化查询过程中的数据访问
使用Limit、返回列不用*
2.优化长难句的查询语句
变复杂为简单、切分查询、分解关联查询、
四、优化特定类型的查询语句
优化count()
优化关联查询
优化子查询
优化Group by 和 distinct
优化limit 和 union
五、存储引擎的优化
尽量使用InnoDB存储引擎
六、数据表结构设计的优化
1.分区操作
通过特定的策略对数据表进行物理拆分
多用户透明
partition by
2.分库分表
水平拆分
垂直拆分
七、数据库架构的优化
主从复制
读写分离
双主热备
负载均衡
八、MySQL的负载均衡
通过LVS的三种基本模式实现负载均衡
MyCat数据库中间件实现负载均衡