资讯专栏INFORMATION COLUMN

实时查看MySQL执行的语句

elarity / 439人阅读

摘要:我们在追查问题和性能调优时,有时希望看到当前都有哪些命令正在被执行,让我们迅速找到热点命令。下面我们就来介绍下如何查看当前正在执行的语句。如果不是通过配置文件的方式变更状态,会在重启后失效。参考资料查看实时执行的语句用命令管理启停

我们在追查MySQL问题和性能调优时,有时希望看到当前都有哪些命令正在被执行,让我们迅速找到热点命令。下面我们就来介绍下如何查看当前正在执行的MySQL语句。

日志LOG

我们之前在 用service命令管理mysql启停 文章中已经使用过MySQL的错误日志,它在my.cnf配置文件中指定位置:

[mysqld]
log-error = /user/local/mysql/log/mysql.err

该参数指定了错误文件位置,能够记录所有的错误日志,在问题追查时非常关键。类似的,我们还可以指定常规日志:

[mysqld]
# 控制是否开启常规日志
general_log=true
# 指定常规日志的文件路径
general_log_file=/usr/local/mysql/log/mysql.log

这个配置默认是关闭的,因为这个日志文件会膨胀的很快,在大型业务中可能很快耗尽磁盘空间,因此一般只在追查问题时临时打开,使用完成后关闭。

如果我们更改了这个配置,需要重启MySQL服务。

查看常规日志是否打开
mysql> show variables like "general%";
+------------------+--------------------------------+
| Variable_name    | Value                          |
+------------------+--------------------------------+
| general_log      | ON                            |
| general_log_file | /usr/local/mysql/log/mysql.log |
+------------------+--------------------------------+
2 rows in set (0.00 sec)

如果我们想要更改该参数,可以使用:

mysql> set global general_log=off;
Query OK, 0 rows affected (0.01 sec)

由于general_log是全局的变量,因此必须带上global参数。如果不是通过配置文件的方式变更状态,会在MySQL重启后失效。

查看实时日志

如果我们已经打开了常规日志的记录,我们可以通过常规日志文件的查看来得到实时日志:

# -f 代表会实时读取该文件的更新内容
tail -f /usr/local/mysql/log/mysql.log

然后你就能在终端里看到MySQL的实时执行记录,如果觉得刷新过快,也可以使用vim/tail等方法来查看该日志文件进行分析。

参考资料

MySQL查看实时执行的SQL语句:https://www.awaimai.com/1910....

用service命令管理mysql启停:https://segmentfault.com/a/11...

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/49382.html

相关文章

  • MYSQL事件

    摘要:事件简介事件是在相应的时刻调用的过程式数据库对象。由于他们彼此相似,所以事件也称为临时性触发器。创建事件一条语句创建一个事件。可选项,默认是即计划任务执行完毕后自动该事件则不会掉。对于递归调度的事件,结束日期不能在开始日期之前。 1 事件简介 事件(event)是MySQL在相应的时刻调用的过程式数据库对象。一个事件可调用一次,也可周期性的启动,它由一个特定的线程来管理的,也就是所谓...

    flyer_dev 评论0 收藏0
  • MySQL性能调优与架构设计(五)—— 影响MySQL Server性能相关因素

    摘要:要么因为并发的问题造成统计结果不准确,要么因为锁资源争用严重造成整体性能的下降。所以我们应该从应用程序着手分析一个应用程序架构的不同设计对整个系统性能的影响更合适。而类型数据的处理性能要远比类型数据的处理性能低下很多。 前言 大部分人通常认为一个数据库应用系统的性能瓶颈,最容易出现在数据的操作方面,而数据库应用系统的大部分数据操作都是通过数据库管理软件所提供的相关的接口完成。所以,数...

    hiyayiji 评论0 收藏0
  • mysql主从复制 主主复制

    摘要:一数据库复制实现原理的主从复制功能是基于操作日志的,其过程如下从数据库执行,开启主从复制开关从数据库的线程会使用主数据上授权的用户请求连接主数据库,并请求指定的日志。 一、数据库复制 replication 实现原理 mysql 的主从复制功能是基于 binlog 操作日志的,其过程如下: 从数据库执行 start salve ,开启主从复制开关 从数据库的 io 线程会使用主数据上...

    ?xiaoxiao, 评论0 收藏0
  • 开源|性能优化利器:数据库审核平台Themis选型与实践

    摘要:正是存在问题,促使我们考虑引入数据库审核平台。的确,与很多互联网公司相比,数据库数十套的估摸并不是太大但与互联网类公司不同,类似宜信这类金融类公司对数据库的依赖性更大,大量的应用是重数据库类的,且其使用复杂程度也远比互联网类的复杂。 作者:韩锋 出处:DBAplus社群分享 Themis开源地址:https://github.com/CreditEaseDBA 拓展阅读:宜信开源|数...

    li21 评论0 收藏0
  • 开源|性能优化利器:数据库审核平台Themis选型与实践

    摘要:正是存在问题,促使我们考虑引入数据库审核平台。的确,与很多互联网公司相比,数据库数十套的估摸并不是太大但与互联网类公司不同,类似宜信这类金融类公司对数据库的依赖性更大,大量的应用是重数据库类的,且其使用复杂程度也远比互联网类的复杂。 作者:韩锋 出处:DBAplus社群分享 Themis开源地址:https://github.com/CreditEaseDBA 拓展阅读:宜信开源|数...

    wenhai.he 评论0 收藏0

发表评论

0条评论

elarity

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<