MySQL性能优化

查询缓存

查询缓存(Query Caching)缓存了SELECT查询及其结果数据集,当执行一个同样的SELECT查询时,MySQL会从内存中直接取出结果,加快了查询执行速度、减小了数据库的压力。执行SHOW VARIABLES LIKE 'have_query_cache';可以查看MySQL查询缓存是否打开,开启查询缓存只需配置my.cnf文件即可,具体如下:

  query_cache_type = 1
  query_cache_size = 128M
  query_cache_limit = 1M

保存好后重启MySQL。

存储引擎

MySQL常用存储引擎是MyISAM和InnoDB,二者区别如下:

MyISAM

查询速度快;
支持表级锁,在上锁期间表上不能进行其他操作;
支持全文检索;
支持数据压缩、自我复制、查询缓存、数据加密;
不支持外键;
不支持事务,所以也就没有COMMIT和ROLLBACK操作;
不支持集群数据库。

InnoDB

支持行级锁;
支持外键,对外键约束强制;
支持事务,可执行COMMIT和ROLLBACK操作;
支持数据压缩、自我复制、查询缓存、数据加密;
可用在集群环境,但并不完全支持。InnoDB表可以转换为NDB存储引擎,这样就能用在集群环境。

posted @ 2017-06-17 15:47  chaojianok  阅读(306)  评论(0编辑  收藏  举报