[英]Truncate Slow Query Log in MySQL
在 MySQL 运行时截断 MySQL 慢查询日志(主要在 Linux 下,但 Windows 很容易知道)的最安全方法是什么?
安全的意思是:
无论是否正在运行的应用程序打开文件,都要截断文件:
> /var/logs/your.log
在你的shell提示符下。
从这里 :
您可以移动打开的文件,然后告诉mysqld刷新日志,这将打开一个新日志。
shell> cd mysql-data-directory
shell> mv mysql.log mysql.old
shell> mv mysql-slow.log mysql-slow.old
shell> mysqladmin flush-logs
如果这是一个持续关注的问题,你应该看看logrotate,因为它可以为你做这件事。
我不知道echo > file.log
,虽然它有意义。 我一直使用cat /dev/null > file.log
。
此外,应该注意的是,不删除正在写入的日志文件非常重要,因为打开它的程序将继续写入该文件。 很难弄清楚为什么你的所有硬盘空间都消失了!
请记住,仅删除 (rm) 或移动 (mv) 文件不会释放空间,直到 mysql 重新启动。
在 ubuntu 和 MariaDB 上,我用它来清空 mysql-slow.log 使用的磁盘空间而无需重新启动。
echo > /var/lib/mysql/mysql-slow.log
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.