开发者

MySQL 的 binlog(Binary Log)日志关闭的方法

目录
  • 如何关闭 mysql 的 binlog(Binary Log)日志
    • 1. 什么是 MySQL binlog?
    • 2. 检查 binlog 是否开启
    • 3. 关闭 MySQL binlog 方法
      • 3.1临时关闭 binlog(仅对当前会话生效)
      • 3.2永久关闭 binlog(修改配置文件)
    • 4. 清理已有 binlog 文件(可选)
      • 方法 1:手动清理 binlog
      • 方法 2:删除 binlog 文件(需谨慎)
    • 5. 结论

    如何关闭 MySQL 的 binlog(Binary Log)日志

    1. 什么是 MySQL binlog?

    MySQL 的 binlog(Binary Log,二进制日志) 是记录数据库更改的日志文javascript件,主要用于:

    • 数据恢复:通过 mysqlbinlog 工具恢复数据。
    • 主从复制:主库通过 binlog 传输数据变更到从库。
    • 审计:记录数据库的写入操作。

    但在某些情况下(如单机数据库、测试环境、磁盘空间有限时),可以关闭 binlog 以减少磁盘占用和 I/O 负担。

    2. 检查 binlog 是否开启

    在 MySQL 终端或命令行中执行:

    SHOW VARIABLES LIKE 'log_bin';

    如果返回 ON,说明 binlog 已启用;如果返回 OFF,说明 binlog 已关闭。

    检查 binlog 文件:

    SHOW BINARY LOGS;

    如果 binlog 已开启,会列出日志文件。

    3. 关闭 MySQL binlog 方法

    注意:关闭 binlog 后,MySQL 将不再记录数据变更,主从复制会受到影响。

    3.1临时关闭 binlog(仅对当前会话生效)

    SET SQL_LOG_BIN=0;

    ⚠️ 该方法仅对当前会话有效,MySQL 重启后 binlog 仍会生效。

    3.2永久关闭 binlog(修改配置文件)

    要永久关闭 binlog,需要修改 MySQL 配置文件 my.cnf(linux/MACOS)或 my.ini(Windows)。

    步骤 1:编辑 MySQL 配置文件
    • Linux/macOS:
      sudo nano /etc/my.cnf
    • Windows:

      找到 my.ini(通常在 C:\ProgramData\MySQLphp\MySQL Server X.Y\my.ini)。

    步骤 2:注释或删除 binlog 相关配置

    找到 [mysqldpython] 部分,并注释或删除以下行:

    #log-bin=mysql-bin  # 注释或删除此行
    #server-id=1        # 如果是主从复制,需修改 server-id

    如果有 binlog_format,也可以删除或注释掉。

    步骤 3:重启 MySQL

    修改完配置文件后,重启 MySQL 使其生效:

    sudo systemctl restart mysql  # Linux(使用 systemd)
    service mysql restart         # Linux(使用 SysVinit)
    net stop mysql && net start mysql  # Windows
    步骤 4:验证 binlog 是否关闭
    SHOW VARIABLES LIKE 'log_bin';

    返回 OFF 说明已成功关闭。

    4. 清理已有 binlog 文件(可选)

    如果 binlog 关闭后仍然占用大量磁盘http://www.devze.com空间,可以手动删除:

    方法 1:手动清理 binlog

    RESET MASTER;

    PURGE BINARY LOGS TO 'mysql-bin.000010';

    方法 2:删除 binlog 文件(需谨慎)

    如果 binlog 目录存储大量 .00000X 文件,可以手动删除:

    rm -rf /var/lib/mysql/mysql-bin.*

    ⚠️ 注意:此操作不可逆,请谨慎执行!

    5. 结论

    • Binlog 主要用于数据恢复、审计和主从复制。
    • 在单机环境、测试环境或无主从需求时,可以关闭 binlog 以提高性能。
    • 关闭 binlog 需修改 MySQL 配置文件并重启 MySQL。
    • 关闭后可手动清理已有的 binlog 文件以释放磁盘空间。

    到此这篇关于如何关闭 MySQL 的 binlog(Binary Log)日志的文章就介绍到这了,更多相关mysql binlog日志内容请搜索编程客栈(www.devze.com)以前的文章或继续浏览下面的相关文章希望大家以后多多支持www.devze.com编程客栈(www.devze.com)!

    0

    上一篇:

    下一篇:

    精彩评论

    暂无评论...
    验证码 换一张
    取 消

    最新数据库

    数据库排行榜