在 MySQL 运行时,如何最安全地截断 MySQL 慢查询日志(主要是在 Linux 下,但知道 Windows 的方法会更方便)?
所谓安全,指的是:
- 不应该引起任何权限问题
- 下次追加内容时不应该跳回到原来的大小
为了截断一个文件,无论它是否被正在运行的应用程序打开,请执行以下操作:
> /var/logs/your.log
在您的命令提示符下。
来源于这里:
你可以移动打开的文件,然后告诉mysqld刷新日志,这将打开一个新的日志。
shell> cd mysql-data-directory
shell> mv mysql.log mysql.old
shell> mv mysql-slow.log mysql-slow.old
shell> mysqladmin flush-logs
echo > file.log
,但它很有道理。我一直使用cat /dev/null > file.log
。echo > /var/lib/mysql/mysql-slow.log
write()
系统调用是否可以与另一个交错使用。另一方面,我不认为记录器会使用多个write()
来写入日志行。 - vartec