MySQL数据库SQL及索引优化的方法

MySQL数据库SQL及索引优化的方法?这个问题可能是我们日常学习或工作经常见到的。希望通过这个问题能让你收获颇深。下面是小编给大家带来的参考内容,让我们一起来看看吧!

                                                           分区允许根据指定的规则,跨文件系统分配单个表的多个部分。表的不同部分在不同的位置被存储为单独的表。

SQL及索引优化

如何发现有问题的SQL?

使用MySQL慢查日志对有效率问题的SQL进行监控

show variables like 'slow_query_log'

set global slow_query_log_file = '/home/mysql/sql_log/mysql-show.log'

set global log_queries_not_using_indexs = on;

set global long_query_time = 1

慢查日志的存储格式

# Time: 140606 12:30:17

// 执行SQL的主机信息
# User@Host: root[root] @ localhost[]

// SQL的执行信息
# Query_time:0.000031 Lock_time:0.000000 Rows_sent: 0 Rows_examined:0

// SQL 执行时间
SET timestamp = 1402029017

// SQL的内容
select CONCAT('storage engine:',@@storage_engine) as INFO;

慢查日志的分析工具

- mysqldumpslow

- pt-query-digest

如何通过慢查询日志发现有问题的SQL?

1. 查询次数多且每次查询占用时间长的SQL

通常为pt-query-digest分析的前几个查询

2.IO大的SQL

注意pt-query-digest分析中的Rows examine项

3.未命中索引的SQL      

注意pt-query-digest分析中Rows examine 和Rows Send对比

相关推荐:

mac使用终端运行mysql,mysql终端,mysql mac,mysql目录,mysql路径,macmysql

Mysql分区|mysql分区表|mysql partition|by range

感谢各位的阅读!看完上述内容,你们对MySQL数据库SQL及索引优化的方法大概了解了吗?希望文章内容对大家有所帮助。如果想了解更多相关文章内容,欢迎关注行业资讯频道。