优化方向
数据表数据类型优化
字段使用什么样的数据类型更合适,性能更快
tinyint(年龄),smallint(古树的年龄)、bigint(上千万数字,上亿)——考虑空间,范围问题
char,vachar:长度一定的时候使用char
enum :特定,固定的分类可以使用enum存储,效率更快,存储空间小
IP地址的存储:整型来存储ip地址
索引优化
索引并不是越多越好,在合适的字段上创建合适的索引
复合索引的前缀原则
like查询的%的问题
全表扫描优化
or条件索引使用情况
字符串类型索引失效问题
SQL语句优化
优化查询过程中的数据访问
使用limit,返回列不用*
优化长难句的查询语句
边复杂为简单,切分查询,分解关联查询
优化特定类型的查询语句
优化count();优化关联查询;子查询,优化Group by 和distinct ;优化limit和union
存储引擎优化
尽量使用InnoDB存储引擎
数据表结构设计的优化
分区操作,分表操作
通过特定的策略对数据库表进行物理拆分,partition by——分区
水平拆分,垂直拆分
数据库服务器架构的优化
主从复制
读写分离
双主热备
负载均衡
LVS的三种基本模式实现负载均衡
MyCat数据库中间建实现负载均衡