如何在MySQL上将查询记录到stdout?

MySQL 5.6.26

尝试将查询记录到stdout在下面不起作用,

$mysqld --general_log=1 --general_log_file=/dev/stdout

最佳答案 你不能,不能直接.
The query logs only go to files, tables or nowhere.他们似乎没有去/ dev / stdout,也没有尊重
the - convention.别担心,有更好的方法.

如果你想要做的就是查看日志中的查询日志,你可以使用各种Unix实用程序来传输日志文件. tail -f是一种选择.

tail -f /path/to/query.log

我更喜欢用less打开日志,并使用F命令在文件添加时继续读取.它就像tail -f但你也可以滚动并搜索文件.

$less /path/to/query.log
~
~
/opt/local/lib/mysql56/bin/mysqld, Version: 5.6.27-log (Source distribution). started with:
Tcp port: 0  Unix socket: (null)
Time                 Id Command    Argument
151004 16:10:51     1 Connect   schwern@localhost as  on 
                    1 Query     select @@version_comment limit 1
151004 16:10:53     1 Query     select 1
151004 16:10:54     1 Quit      
Waiting for data... (interrupt to abort)
点赞