有时我们使用的MySQL数据库会在paste(append(strsplit(pc, "")[[1]], "+", nchar(pc) - 3), collapse = "")
[1] "bt4+3xx"
磁盘上生成文件,以便在执行查询时临时存储结果。
在StackOverflow上有很多关于如何禁用此行为或通过使用RAM磁盘加快速度的帖子。
我正在寻找一种优雅的方式来保存生成此类文件的查询,因为我相信大多数这些查询都可以进行优化。
有没有办法记录这些查询?
答案 0 :(得分:0)
鉴于此类查询通常需要很长时间,我们可以假设这些都是慢查询。我们可以log slow queries使用slow_query_log_file
和slow_query_log
变量:
-- set the log file location
SET GLOBAL slow_query_log_file = '/path/to/slow_log_file.log';
-- turn on slow query logging
SET GLOBAL slow_query_log = ON;
确保mysql
用户(或运行MySQL守护程序的用户)具有对目录和文件的写访问权限。