当前位置: 首页 > article >正文

【Mysql】Mysql/Mariadb开启binlog日志

前言

   MySQL 的二进制日志(Binary Log,简称 binlog)用于记录数据库的所有更改操作,包括数据更改(如 INSERT, UPDATE, DELETE)和结构更改(如 CREATE TABLE, ALTER TABLE)。二进制日志的主要用途包括数据恢复、主从复制和审计等

一、查看是否开启binlog

  通过执行以下sql语句来验证当前数据库是否开启了binlog日志功能,该语句会返回一个结果集,显示 log_bin 变量的值。如果 log_bin 的值为 ON,则表示二进制日志已开启;如果为 OFF,则表示未开启。

SHOW VARIABLES LIKE 'log_bin';

在这里插入图片描述

二、配置Mysql开启binglog

  在mysql或者mariad的配置文件中找到[mysqld]位置,如果没有自行添加,然后在下面配置如下内容:

#在[mysqld]中添加:
# 开启 binlog,指定二进制日志文件的路径和前缀
log_bin =/opt/mariadb/data/mariadb-bin.log
# 设置服务器ID,确保每个服务器的ID唯一
server-id = 1
# 指定二进制日志索引文件的路径和文件名
log_bin_index = master-bin.index
# 指定要记录的数据库,如果不配置 binlog_do_db,则默认情况下,所有数据库的更改都会被记录到二进制日志中
binlog_do_db = test
# 指定要记录的表(例如对people表进行binlog记录)
binlog-do-table=test.people
# 指定binlog格式,ROW:记录每一行数据的变化;STATEMENT记录执行的 SQL 语句;MIXED:自动选择使用 ROW 或 STATEMENT 格式,默认 ROW
binlog_format = ROW
# 指定不记录二进制日志的数据库,binlog_do_db和binlog_ignore_db为互斥选项,一般只需要一个即可
#binlog_ignore_db =test
# 可选:设置binlog过期时间,单位为天
#expire_logs_days = 7

其中binlog_format二进制日志格式说明

1、ROW格式‌
‌优点‌:记录每一行数据的变化,不会出现某些特定情况下无法正确复制的问题。
‌缺点‌:日志量大,特别是执行alter table等语句时,会产生大量日志‌。
2‌、Statement格式‌
‌优点‌:日志量少,对I/O影响小,日志记录清晰易读。
‌缺点‌:在某些情况下,从库复制可能会出现错误‌(如使用非确定性函数)。
3‌、Mixed格式‌
结合了Statement和Row两种模式的优点,避免了它们的缺点。默认情况下使用Statement格式,但在需要时切换到Row格式‌

三、重启mysql/mariadb是配置生效

执行以下命令重启mysql/mariadb,

sudo systemctl restart mariadb

如果使用docker

docker restart 容器ID

四、验证

如图验证已经开启了binlog

SHOW VARIABLES LIKE 'log_bin';

在这里插入图片描述

为了帮助更多像你一样的读者,我将持续在专栏中分享技术干货和实用技巧。如果你觉得这篇文章对你有帮助,可以考虑关注我的专栏,谢谢。


http://www.kler.cn/a/459012.html

相关文章:

  • FastAPI 响应模型与自定义响应
  • node.js之---CommonJS 模块
  • 算法题(25):只出现一次的数字(三)
  • 在Ubuntu 18.04.6 LTS安装OpenFace流程
  • 日志聚类算法 Drain 的实践与改良
  • xdoj 有序数列插值
  • STM32 高级 物联网通讯之蓝牙通讯
  • Spring AI OpenAI Spring Boot Starter 底层原理详解与技术演示
  • CSS 过渡动画效果
  • C#高级篇 反射和属性详解【代码之美系列】
  • Path-of-Thoughts:将“思维链“升级为“思维图“,三阶段框架取代单一推理,提升大模型复杂关系推理准确性至88.2%与效率提升5%
  • WPF 绘制过顶点的圆滑曲线 (样条,贝塞尔)
  • java里classpath都包含哪些范围?
  • afsim源码编译生成出现错误解决方法
  • 单片机中运行多个定时器
  • 【Docker】离线安装 Docker
  • SELECT 语句用法大全:数据库查询的核心力量
  • 【网络安全实验室】基础关实战详情
  • 【发票提取明细+发票号改名】批量提取PDF电子发票明细导出Excel表格并改名技术难点,批量PDF多区域内容识别提取明细并用内容改名的小结
  • Azure Function 解决跨域问题
  • 算法训练营Day28 | leetcode 122.买卖股票的最佳时机II 55.跳跃游戏 45.跳跃游戏II
  • nginx中的proxy_set_header参数详解
  • 18、【OS】【Nuttx】用gdb调试nuttx os
  • 轮胎识别数据集,可对生产流水线里的轮胎图片标注,支持yolo,coco json,voc xml格式的标注,一共785张采集图片
  • IDEA XML 文件 SQL 提示
  • 【每日学点鸿蒙知识】桌面快捷方式API、Swiper显示异常、Page防止截屏、Tabs组件监听显示隐藏、PDF翻页回调