一、查看binlog的启用状态

最常用的mysql版本是5.7,默认不开启binlog,可以在登录mysql之后,利用以下命令查看当前的binlog启用状态:

mysql > show variables like "%log_bin%";

图中显示“ON”,表示已开启binlog,刚安装完mysql5.7之后,默认是“OFF”

二、开启binlog

修改my.cnf配置文件:

vim /etc/my.cnf

在mysqld节点中添加以下参数:

#设置唯一id

server-id=1#开启bin-log,产生的bin-log文件名即为bin-log.*

log-bin=/mnt/logs/mysql/mysql-bin

#指定bin-log为row类别(5.7默认),其他两种是statement、mixed

binlog_format=row

#对指定的数据库开启bin-log,这里是对jw_base数据库开启bin-log服务

binlog-do-db=jw_base

#超过10天的日志文件会被清除

expire_logs_days=10

#默认大于100M时创建新的binlog文件,但出现大事务时可能会超过这个限制

max_binlog_size=100M

上面的参数中,将binlog的保存位置设置为:/mnt/logs/mysql

这个目录要提前创建好,并且对其进行授权:

chown -R mysql.mysql /mnt/logs/mysql

重启mysql服务,使得更改后的配置生效:

#重启服务

systemctl restart mysqld

#停止服务

systemctl stop mysqld

#启动服务

systemctl start mysqld

#查看服务状态

systemctl status mysqld

三、查看日志

MySQL重启后,不出意外的话,就会在指定的位置生成了第一份binlog日志文件:mysql-bin.000001

可通过以下命令查看该日志的内容:

mysqlbinlog --no-defaults --base64-output=decode-rows -v mysql-bin.000001

还可以使用时间范围进行过滤:

mysqlbinlog --no-defaults --base64-output=decode-rows -v --start-datetime='2021-01-01 00:00:00' --stop-datetime='2021-02-01 00:00:00' mysql-bin.000001 | more

如果日志内容太多,不便于查阅,还可以将结果导出到文件中:

mysqlbinlog --no-defaults --base64-output=decode-rows -v --start-datetime='2021-01-01 00:00:00' --stop-datetime='2021-02-01 00:00:00' mysql-bin.000001 > /tmp/binlog001.sql

四、临时关闭binlog

在开启binlog的情况下,当出现大更新量的操作时,日志文件会快速增长,有时会达到很恐怖的程度

因此在进行某些大量更新之前,可以临时关闭binlog:

mysql > set sql_log_bin=0;

待更新完成后,重新打开binlog:

mysql > set sql_log_bin=1;

mysql binlog c++_关于MySQL的日志管理(binlog)相关推荐

  1. MySQL数据库——5分钟带你了解日志管理、数据备份与恢复!!!

    MySQL数据库--5分钟带你了解日志管理.数据备份与恢复!!! 前言 一.MySQL日志管理 1.1 日志的分类 1)错误日志 2) 通用查询日志 3) 二进制日志(binlog) 4) 慢查询日志 ...

  2. MySQL学习笔记_关于MySQL的字符类型VARCHAR长度知识总结

    MySQL学习笔记_关于MySQL的字符类型VARCHAR长度知识总结 一.VARCHAR存储和行长度限制 1.VARCHAR(N)中,N指的是字符的长度,VARCHAR类型最大支持65535,指的是 ...

  3. mysql binlog 备份_做好mysql运维,必须熟练掌握备份和恢复,实战一次不行多来几次...

    原文:https://www.toutiao.com/i6855460778359816715/ 平台:头条 作者:程序员不就是0和1 一. 备份恢复策略 进行备份或恢复操作时需要考虑一些因素: 1. ...

  4. mysql binlog跟踪_在MySQL中使用init-connect与binlog来实现用户操作追踪记录

    在MySQL中使用init-connect与binlog来实现用户操作追踪记录 分类: MySQL 前言: 测试环境莫名其妙有几条重要数据被删除了,由于在binlog里面只看到是公用账号删除的,无法查 ...

  5. mysql 关闭主从_取消mysql主从复制关系

    mysql主从复制中,需要将主从复制关系清除,需要取消其从库角色.这可通过执行RESET SLAVE ALL清除从库的同步复制信息.包括连接信息和二进制文件名.位置.从库上执行这个命令后,使用show ...

  6. mysql ab复制_实现mysql的ab复制(a-b-b,a-b-c)

    实验环境准备: 三台虚拟机,IP分别为master: 192.168.2.1   slave:192.168.2.2   slave1:192.168.2.3 将192.168.2.1的主机做为mys ...

  7. mysql 写磁盘_图解MySQL | [原理解析] MySQL insert 语句的磁盘写入之旅

    作者及简介: 黄 炎,爱可生首席技术官: 王 悦,爱可生研发团队成员,负责数据库管理平台相关项目的开发和故障排查,好奇 MySQL 技术原理及各类数据库实现方案. 本文来源:转载自公众号-图解 MyS ...

  8. datax导入MySQL报错_导入MySQL方法对比

    使用datax导入 1.使用自增id 记录数 耗时(秒) TPS 4248882 347 12244 33404813 4038 8272 2.不使用自增id,使用雪花算法生成id后导入 记录数 耗时 ...

  9. mysql多大_洞悉MySQL底层架构:游走在缓冲与磁盘之间

    提起MySQL,其实网上已经有一大把教程了,为什么我还要写这篇文章呢,大概是因为网上很多网站都是比较零散,而且描述不够直观,不能系统对MySQL相关知识有一个系统的学习,导致不能形成知识体系.为此我撰 ...

最新文章

  1. linux 公私钥生成,[c++,openssl,RSA] linux下编程实现生成公私钥对_1
  2. 奇迹暖暖登录一直显示服务器满,奇迹暖暖无法登录解决办法
  3. 刚刚,国家新型互联网交换中心(以及新公司)正式成立!不止于降低网间结算费用...
  4. 简单的二叉树创建与遍历
  5. 华为服务器gpu卡型号,gpu服务器与配置
  6. STM32出现HardFault故障的解决方法
  7. 瞎折腾-CentOS 7.4 编译4.16.2版kernel 并安装
  8. html表格怎么改圆角边框,Table元素设置圆角border
  9. ADF12C UI根据row重定位VO的当前行
  10. 大家口中所说的A站、B站、C站、D站、E站、F站、G站、H站、I站、J站、K站、L站、M站、N站、O站、P站、Q站、R站、S站、T站、U站、V站、W站、X站、Y站、Z站都是什么网站?
  11. 毫米波雷达探测技术,雷达人体存在感应器,实时检测静止存在应用
  12. 计算机控制器的简写,工业控制常用英语及缩写
  13. python建模概述
  14. windows电脑连接公共wifi登陆界面无法弹出怎么办?
  15. 庄懂21课 塞博小人
  16. C++沙海拾遗(三)
  17. 微信公众号使用:微信公众平台企业类型的微信认证申请流程
  18. QuickCam Gev 2.0 开发
  19. 云服务PaaS、SaaS、IaaS
  20. 什么是VPS? 它是如何用于自动驾驶的?

热门文章

  1. const 指针_C语言学习日记(11)——const与指针
  2. 2017.10.22 诸神眷顾的幻想乡 失败总结
  3. 【英语学习】【WOTD】bower 释义/词源/示例
  4. mysql8.0.11密码_mysql8.0.11安装和修改密码(转载)
  5. 虚幻4 捏脸和换装系统实现
  6. Keras-10 模型可视化
  7. Fix Backup Database is terminating abnormally When performing a Farm Backup
  8. jquery判断toggle当前状态
  9. 删除WinXP下打开最近文档后,产生的无效快捷方式
  10. 全阶滑模观测器程序_滑模观测器转子估算程序