mysql优化 慢查询(一)

本文涉及的产品
云数据库 RDS MySQL,集群版 2核4GB 100GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用版 2核4GB 50GB
简介: 1.显示慢查询的一些参数的命令:show variables like '%slow%';结果如图 2.上面四个参数的意思是:   log_slow_queries  off    表示“慢查询”是“关闭的状态”   slow_launch_time  2     表示“查询时间超过2秒就...

1.显示慢查询的一些参数的命令:show variables like '%slow%';结果如图

2.上面四个参数的意思是:

  log_slow_queries  off    表示“慢查询”是“关闭的状态”

  slow_launch_time  2     表示“查询时间超过2秒就记录到慢查询日志中”;

  slow_queries_log  off   表示慢查询日志开关是关着的

  slow_query_log_file "路径"   表示慢查询日志存放完整路径

3.开启慢查询的功能

    使用命令:set global log_slow_queries=on;   这样就开启了慢查询的功能,此参数打开了,slow_query_log就自动变成了on,关闭了的话也跟着关闭。

   

4. 其实slow_launch_time的设定跟慢查询日志的查询阀值设定不同,表示了thread create的一个阀值,

     如果thread create的时间超过了这个值,这变量slow_launch_time的值加1.

  set global log_launch_time=1  这里的时间值必须是整数,否则的话就话执行出错

    慢查询的查询阀值是long_query_time 默认是10秒

5.设置slow_query_log_file的值是字符串必须用引号引起来。

 

要真正修改慢查询得去修改mysql的文件,内容添加如下

long_query_time=0  只要是执行的都写入了慢查询日志
log_slow_queries=on   慢查询开关
slow_query_log =on    慢查询日志开关
slow_query_log_file="D:/phpStudy/1.log"  慢查询日志文件

 

并且还得重新启动mysql才会生效

 

 慢查询的日志结构如下:

MySQLa, Version: 5.5.40-log (MySQL Community Server (GPL)). started with:
TCP Port: 3306, Named Pipe: (null)
Time                 Id Command    Argument
# Time: 150705 18:31:54
# User@Host: root[root] @ localhost [127.0.0.1]
# Query_time: 0.012001  Lock_time: 0.001000 Rows_sent: 51  Rows_examined: 51
use weixin;
SET timestamp=1436092314;
show databases;
# Time: 150705 18:32:55
# User@Host: root[root] @ localhost [127.0.0.1]
# Query_time: 0.002000  Lock_time: 0.001000 Rows_sent: 1  Rows_examined: 1
SET timestamp=1436092375;
show variables like  "%query_time%";
# Time: 150705 18:33:03
# User@Host: root[root] @ localhost [127.0.0.1]
# Query_time: 0.001000  Lock_time: 0.000000 Rows_sent: 0  Rows_examined: 0
use chlitina;
SET timestamp=1436092383;
use `chlitina`;
# User@Host: root[root] @ localhost [127.0.0.1]
# Query_time: 0.031001  Lock_time: 0.001000 Rows_sent: 869  Rows_examined: 869
SET timestamp=1436092383;
select * from wp_consultant;
# Time: 150705 18:33:40
# User@Host: root[root] @ localhost [127.0.0.1]
# Query_time: 0.052003  Lock_time: 0.001000 Rows_sent: 869  Rows_examined: 1738
SET timestamp=1436092420;
select * from wp_consultant order by id desc;

 

    

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
9天前
|
存储 关系型数据库 MySQL
MySQL 上亿大表,如何深度优化?
【8月更文挑战第11天】随着大数据时代的到来,MySQL 作为广泛使用的关系型数据库管理系统,经常需要处理上亿级别的数据。当数据量如此庞大时,如何确保数据库的查询效率、稳定性和可扩展性,成为了一个亟待解决的问题。本文将围绕 MySQL 上亿大表的深度优化,分享一系列实用的技术干货,帮助你在工作和学习中应对挑战。
25 1
|
19天前
|
SQL canal 关系型数据库
(二十四)全解MySQL之主从篇:死磕主从复制中数据同步原理与优化
兜兜转转,经过《全解MySQL专栏》前面二十多篇的内容讲解后,基本对MySQL单机模式下的各方面进阶知识做了详细阐述,同时在前面的《分库分表概念篇》、《分库分表隐患篇》两章中也首次提到了数据库的一些高可用方案,但前两章大多属于方法论,并未涵盖真正的实操过程。接下来的内容,会以目前这章作为分割点,开启MySQL高可用方案的落地实践分享的新章程!
127 1
|
24天前
|
SQL 缓存 关系型数据库
MySQL 查询索引失效及如何进行索引优化
MySQL 查询索引失效及如何进行索引优化
63 1
|
4天前
|
存储 SQL 关系型数据库
探索MySQL的执行奥秘:从查询执行到数据存储与优化的深入解析
探索MySQL的执行奥秘:从查询执行到数据存储与优化的深入解析
|
8天前
|
SQL 关系型数据库 MySQL
MySQL——开启慢查询
MySQL——开启慢查询
15 0
|
30天前
|
缓存 关系型数据库 MySQL
MySQL优化
【7月更文挑战第21天】MySQL优化
40 1
|
11天前
|
运维 关系型数据库 MySQL
"MySQL运维精髓:深入解析数据库及表的高效创建、管理、优化与备份恢复策略"
【8月更文挑战第9天】MySQL是最流行的开源数据库之一,其运维对数据安全与性能至关重要。本文通过最佳实践介绍数据库及表的创建、管理与优化,包括示例代码。涵盖创建/删除数据库、表结构定义/调整、索引优化和查询分析,以及数据备份与恢复等关键操作,助您高效管理MySQL,确保数据完整性和系统稳定运行。
26 0
|
1月前
|
关系型数据库 MySQL 调度
MySQL高级功能与优化策略深度探索
MySQL高级功能与优化策略深度探索
|
13天前
|
SQL 缓存 关系型数据库
MySQL配置简单优化与读写测试
MySQL配置简单优化与读写测试
|
23天前
|
分布式计算 关系型数据库 MySQL
MySQL超时参数优化与DataX高效数据同步实践
通过合理设置MySQL的超时参数,可以有效地提升数据库的稳定性和性能。而DataX作为一种高效的数据同步工具,可以帮助企业轻松实现不同数据源之间的数据迁移。无论是优化MySQL参数还是使用DataX进行数据同步,都需要根据具体的应用场景来进行细致的配置和测试,以达到最佳效果。