数据表数据类型的优化

  • tinyint,smallint,bigint按需选择数据类型
  • 使用整形存储IP地址

索引优化

  • 建立合适的索引

    • 索引并不是越多越好,在合适的自段上创建合适的索引
    • 复合索引的前缀原则
    • like查询%的问题
    • 全表扫描优化
    • or条件索引适用情况
    • 字符串类型索引失效问题

SQl语句的优化

  • 优化查询过程数据访问

    • 使用Limit
    • 返回列不使用*
  • 优化长难句查询语句

    • 复杂变为简单
    • 切分查询
    • 分解关联查询
  • 优化特定类型查询语句

    • 优化count()
    • 优化关联查询
    • 优化子查询
    • 优化limit和union

存储引擎的优化

  • 尽量实用InnoDB

数据表结构设计的优化

  • 分区操作

    • 通过特定的策略对数据表进行物理拆分
    • 对用户透明
    • partition by
  • 分库分表

    • 水平拆分
    • 垂直拆分

数据库服务器架构的优化

  • 主从复制
  • 读写分离
  • 双主热备
  • 负载均衡

    • 通过LVS三种基本模式实现负载均衡
    • 使用MyCat数据库中间件实现负载均衡