我直接把慢查询日志改名,之后新建立同名慢查询日志 
(group:mysql  owner:mysql)
发现没有记录插入这个慢查询日志中(是否一定要数据库重启)?

解决方案 »

  1.   

    你是怎么操作的?直接操作系统改名还是my.cnf 中改了个名。
      

  2.   

    如果是在my.cnf 中改也设置,需要重启后才生效。
      

  3.   

    如 原来的慢查询日志名字是 myslow.log
    现在我将它改为myslow2.log
    之后另外新建立myslow.log,  直到现在没有看到这个日志有记录插入
      

  4.   

    请说明你的操作步骤,因为我根本不知道你的"现在我将它改为myslow2.log" 是 mv myslow.log myslow2.log 还是在my,cnf 中做了个修改。
      

  5.   

    我做的是 mv myslow.log myslow2.log 
    我没有权限动my cnf文件的 
      

  6.   

    没有试过。 你不妨提交一下大的查询,看看写到哪儿去了。看一下系统变量 | log_slow_queries                | ON
    | slow_query_log                  | ON
    | slow_query_log_file             |
      

  7.   

    only | log_slow_queries                | ON 
    没有 slow_query_log    这个参数提交1个大查询 没有看到他写文件
      

  8.   

    提交大查询 ,发现他写到myslow2.log  文件里去了 
    跟据myslow2.log之前的文件对比 ,以及这个文件的修改时间判断。现在我应该如何在不修改配置文件的条件下 实现慢查询日志的清空???
      

  9.   

    查看myslow2.log的内容 发现确实那个大查询是写到这个文件里去了 
    如何解释  如何是慢查询日志的清空???
      

  10.   

    那估计是 mysqld 一直打开着这个文件的句柄,所以即使你更名,或者移动了,但mysqld仍然会向打开着的这个文件中写入数据。
    这种情况下,只能重启mysqld了。
      

  11.   

    我的想法是先把这个文件 copy成另外1个文件
    之后清空这个文件(请问有什么命令可以清空一个log文件)
      

  12.   

    1,先建一个文件www.log
    2,tail -n 200 /目录/file.log>>www.log
    3,cp www.log file.log
      

  13.   

    你先作备份那个文件cp a.log b.log然后直接把原文件里面的记录清空:cat /dev/null > a.log