【问题标题】:Disable MySQL general logging without restarting?在不重新启动的情况下禁用 MySQL 常规日志记录?
【发布时间】:2009-08-28 13:19:40
【问题描述】:

我可以在不重新启动服务器的情况下完全禁用常规日志记录吗?

因为,根据文档:

SET sql_log_bin = {0|1}

如果客户端具有SUPER 权限,则禁用或启用当前连接的二进制日志记录(sql_log_bin 是一个会话变量)。如果客户端没有该权限,则该语句将被拒绝并出现错误。

我可以在不重启 MySQL 的情况下启用/禁用通用日志吗?

【问题讨论】:

  • @shantanuo:你还活着吗?解决方案有效吗?

标签: mysql logging


【解决方案1】:

对于现在使用 5.1 的任何人,您都可以使用这些命令(必须查找它们并出现此问答)

SET GLOBAL log_output='TABLE'; #or FILE

SET GLOBAL general_log='OFF'; #or ON

SET GLOBAL slow_query_log='ON'; #or OFF

TABLE 会将它们存储在 mysql.general_log 和 mysql.slow_log 表中,而不是在开发中用于查看和截断的文件中。

【讨论】:

  • 感谢您的信息。服务器重启后是否保存了配置文件?
  • @zeflex 不,您必须将其添加到 my.cnf 文件以保留设置。
【解决方案2】:

对于 MySQL 5.0,“会话 sql_log_off 变量可以设置为 ONOFF 以禁用或启用当前连接的一般查询日志记录。” [MySQL Doc, Log file]

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-12-12
    • 1970-01-01
    • 1970-01-01
    • 2016-09-02
    • 2016-09-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多