最近正在学习mysql,又恰好看了博主shayang88"高性能的mysql"系列教程,就自己跟着试验了一下,亲自感受了慢查询。

参考博文:http://janephp.blog.51cto.com/4439680/130692

  • 慢查询的配置文件修改:

    mysql 慢查询亲自体验_慢查询

  • 几个配置文件参数的意义:

    slow_query_log = on;开启慢查询日志

    slow_query_log_file = ....指定日志文件存放位置,可以为空,系统会给一个缺省的文件host_name-slow.log

long_query_time=1 ;查过一秒的查询就会被认为是慢查询

log_queries_not_using_indexes;记录下来没有使用索引的查询

log_slow_admin_statements ;执行速度较慢的管理命令也会被记录

如果按照博主shayang88博文中的设置会报错,纠结很久,后来才发现是参数不一样,开启慢查询日志存放两个参数不一样,我想可能是版本不同的原因吧

  • 创建数据库表

mysql 慢查询亲自体验_mysql_02

  • 编写存储过程,用于生成500W的记录。

mysql 慢查询亲自体验_mysql_03

mysql 慢查询亲自体验_慢查询_04

mysql 慢查询亲自体验_慢查询_05

  • 调用存储过程,向表中插入500W的记录

    mysql 慢查询亲自体验_mysql_06

  • 插入数据竟然用了20分钟2.22秒,时间比博主shayang88测试的时间长了很多,这难道是跟我电脑的性能有关?

  • 查询数据之一:

mysql 慢查询亲自体验_慢查询_07

貌似也比博主shayang88的测试时间长了不少啊

  • 查询数据之二:

mysql 慢查询亲自体验_慢查询_08

  • 最后来一条慢查询:

  • mysql 慢查询亲自体验_慢查询_09最后查看慢查询日志,会发现有日志记录。