我正在尝试mysqlbinlog
在其中的某个位置对最新的二进制日志文件进行部分处理(尝试仅提取一个查询)。
mysqlbinlog --start-position=1234 --stop-position=1234 /var/lib/mysql/mysql-bin.000021
输出包含:
警告:此二进制日志正在使用或未正确关闭。
我如何强制MySQL开始记录下一个binlog文件(即mysql-bin.000022
)并释放原始文件以便我可以使用mysqlbinlog
它?
这个问题还有其他解决方案吗?
您可以使用FLUSH LOGS在 binlog 达到最大大小之前轮换它。
如果您已经知道相关查询的位置,那么您没有理由不能 mysqlbinlog 一个打开的二进制日志。当然,在打开日志后您不会看到任何添加到日志中的内容,但是您可以通过 less 进行管道传输并搜索查询。