mysql客户端程序 -- mysqldumpslow(慢查询),mysqlbinlog(二进制日志文件),mysqlslap介绍

目录

mysqldumpslow

介绍

慢查询

介绍

慢查询日志

系统变量

使用

常用选项

显示结果

规则

示例

mysqlbinlog

介绍

二进制日志文件

介绍

用处

默认保存路径

一条事件的内容

使用

常用选项

mysqlslap

介绍

注意事项 

使用

示例

测试报告


mysqldumpslow

介绍

汇总/分析慢查询日志文件,便于后续的优化

 

慢查询

介绍

因为各种原因,某些查询语句的执行时间超过设定的阈值

慢查询日志

将慢查询的相关信息记录下来的日志

系统变量

系统中与慢查询可能相关的变量:

其中:

  • long_query_time -- 慢查询的阈值 
  • slow_query_log -- 是否开启慢查询日志
  • slow_query_log_file -- 慢查询日志默认路径

慢日志文件命名规则:

  • 当前主机名 + -slow + .log

使用

  • 因为mysqldumpslow读取的是本地文件,所以不需要输入mysql账号密码

常用选项

-h -- 可以指定分析某台主机的慢日志(系统级别):

-i -- 指定mysql服务器实例的名称(mysql级别):

-s -- 不同的排序方式:

 

显示结果

规则

通常情况下,会将相似的查询分成一组显示,并且进行摘要输出

  • 用N / "S"代替掉原本语句中的数字 / 字符串 

类似于这样的效果:

如果想要看到真实的值,可以使用-a选项

示例

一条记录包含的信息:

  • 语句执行次数 单次总耗时 加锁/释放锁的耗时 获取数据的耗时 用户
  • sql语句

mysqlbinlog

介绍

处理二进制日志文件的程序

  • 可以以文本格式显示文件中的内容

 

二进制日志文件

介绍

每个对数据库/数据做修改的操作,都会被描述成一个事件

  • 每个事件以二进制的形式记录在一个文件中,这个文件就是binlog

用处

主要用于实现主从复制

  • 假设我们有一个主节点(用于写入),两个从节点(用于读取),因为读取的场景会更多
  • 主节点会在每次修改数据时,把对应的事件记录在binlog中
  • 从节点通过读取binlog,将二进制->sql语句,从而达到主从同步的效果

默认保存路径

  • 目录下有很多binlog.00000n的文件 -- 这些都是二进制文件,保存了事件的具体内容
  • n不断递增

一条事件的内容

每个事件以at + 数值 开头

  • 代表这个事件在日志文件中的起始偏移量

server id

  • 默认服务id = 1 
  • 如果在集群环境下,就要为每台主机取不同的id值

end_log_pos 

  • 这个事件在日志文件中的结束偏移量

table id

  • 表id
  • 系统会维护每张表,表id作为标志符

 

使用

这个程序也是访问的本地文件,所以不需要mysql账号密码,直接使用即可

常用选项

--offset -o

  • 跳过日志的前n条记录

 

mysqlslap

介绍

一个诊断程序

  • 用于模拟mysql服务器的客户端负载,并报告每个阶段的时间

注意事项 

  • --create + sql语句
  • --query + .sql文件

在这个文件中,默认情况下,换行符作为每条sql语句的分隔符

  • 也就是需要一行一个sql

 

使用

示例

测试报告

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值