mysql - 尝试隔离每个主机的 pt-query-digest

标签 mysql bash percona mysql-slow-query-log pt-query-digest

我很难想出正确的语法来为我的慢速查询日志文件提取特定主机信息:

我正在使用以下内容:

sudo pt-query-digest mysql-slow.log --since "2017-05-07 22:00:00" --until "2017-05-08 22:00:00" --filter ‘$event->{host} !~ m/^ip-1-1-1-1/’ > slow.log

在这种情况下,我试图排除所有 1.1.1.1 的 IP。我不知道出了什么问题。

最佳答案

使用 ascii 引号 ('),而不是这个非 ascii 引号 (');

假设 m/^ip-1-1-1-1/ 有效,它将捕获 ip-1-1-1-1ip-1-1-1-123。所以你可能需要一些东西来终止 ip。也许 m/^ip-1-1-1-1$/

在不将 arg 隐藏在单引号中的情况下,shell 将(至少)$event 解释为 shell 变量,将 {...} 解释为某种东西,并且!~ 作为某种东西。

关于mysql - 尝试隔离每个主机的 pt-query-digest,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43858746/

相关文章:

php - 2 PDO中的mysql查询?

bash - 如何阻止 perl 消息 "XXX is deprecated use YYY instead"进入 stderr?

如果没有结果,MySql 选择默认值?

javascript - 使用 highcharts 在 php、mysql 中制作图表

linux - 如何在 bash 中将自己的值添加到此脚本中

mysql - 需要mysql查询/配置优化

ubuntu - 安装percona时出错

php - PHP PDO 是否有内置方法以 ID 作为键返回结果作为数组?

bash - 在不使用 "source"的情况下读取 BASH 中的配置文件