嗨,我正在使用RHEL7上安装的MySQL服务器5.5.58。
我正在尝试通过 显示引擎innodb状态 跟踪年轻的页面。 我想从innodb监视器输出中过滤此信息。 以下是我在Linux命令行中使用的命令,但无法提供所需的输出。我正在尝试将此命令放在shell脚本中,以便跟踪更改。
mysql --defaults-extra-file=/etc/mysqldump.cnf --pager="egrep -i pages made young" -e "show engine innodb status;"
它给我所有输出,但不过滤。
我尝试将行(pager =“ egrep -i年轻的页面”)添加到其他配置文件中 --defaults-extra-file /etc/mysqldump.cnf 以及配置文件 /etc/my.cnf ,但信息未过滤。
How do you set a default pager for the MySQL client?和How to pass --pager option to mysql command line->没有帮助。
mysql手册页上说,有效的传呼机越少越多,cat [>文件名],依此类推。此选项仅在Unix上并且仅在交互模式下有效。。列表中不包括grep或egrep过滤器。
这是否意味着我不能在Linux命令行上使用它?
当我从mysql shell中使用它时,没有问题。
[bunny@localhost]> pager egrep -i 'pages made young'; show engine innodb status;
PAGER set to 'egrep -i 'pages made young''
Pages made young 323890330, not young 0
Pages made young 40605338, not young 0
Pages made young 40353291, not young 0
Pages made young 40467266, not young 0
Pages made young 40284375, not young 0
Pages made young 40783248, not young 0
Pages made young 40164275, not young 0
Pages made young 40682690, not young 0
Pages made young 40549847, not young 0
1 row in set (0.00 sec)
请帮助。我有什么想念的吗?