mysql数据库调优的若干方式及高频知识点

一.明确调优的核心指标

响应时间,命中率(缓存、索引),扫描行数

二.调优方式

1.慢查询定位

slow_query_log=on

long_query_time=1  # 阈值,超过1s的查询会被记录

可以在日志中看到查询耗时、扫描行数、锁等待,是否使用索引等

2.explain

explain + sql语句,可以输出数据库的执行过程,看到用了哪些索引和扫描的范围

3.SQL优化

只取需要的字段,查询字段的值类型一致,用join替代in,分页优化(覆盖索引+limit),批量插入

4.索引优化

组合索引保证左前缀原则,适当增加覆盖索引

5.配置参数调优

innodb_buffer_pool_size 缓冲池大小: 70% of RAM
max_connections 最大连接数: 500
innodb_thread_concurrency =0    不限制线程并发
query_cache_type = 1                -- 开启查询缓存
query_cache_size = 64M              -- 缓存大小

注意,查询缓存在数据更

你可能感兴趣的:(Mysql,数据库,mysql)