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

浅谈MySQL3种日志

浅谈MySQL3种日志

日志是mysql数据库的重要组成部分,记录着数据库运行期间各种状态信息。mysql日志主要包括错误日志、查询日志、慢查询日志、事务日志、二进制日志几大类。作为开发,我们重点需要关注的是二进制日志(binlog)和事务日志(包括redo
log和undo log),本文接下来会详细介绍这三种日志。

Binlog(二进制日志),是MySQL数据库中用来记录数据库变更操作的日志文件。它包含了对数据库中数据进行增删改操作的SQL语句,可以用来进行数据备份、数据恢复、主从复制等操作。

Redo Log(重做日志),是MySQL数据库中用来记录事务发生的变更操作的日志文件。当事务提交时,重做日志会记录下事务对数据库的影响,以便在数据库发生故障崩溃时进行数据恢复。

Undo Log(回滚日志),是MySQL数据库中用来记录事务的撤销操作的日志文件。当事务需要回滚时,回滚日志会记录下该事务对数据库的原始状态,以便在事务回滚时进行数据恢复。

使用场景:

  1. Binlog可以用来进行数据备份和恢复。通过定期备份Binlog日志,可以保证在数据库发生故障时能够快速地进行数据恢复。

  2. Binlog还可以用来进行数据库的主从复制。主数据库会将自己的Binlog日志发送给从数据库,从数据库会根据收到的Binlog日志进行数据更新,从而实现主从数据的同步。

  3. Redo Log在数据库发生故障时可以用来进行数据恢复。当数据库发生故障崩溃时,根据Redo Log中的记录,可以重新执行未提交的事务,从而恢复数据库到崩溃前的状态。

  4. Undo Log在事务回滚时用来进行数据恢复。当事务需要回滚时,根据Undo Log中的记录,可以将数据库恢复到事务开始之前的状态,保证数据的一致性。

综上所述,Binlog、Redo Log和Undo
Log在MySQL数据库中都扮演着重要的角色,用来进行数据备份、数据恢复、主从复制以及事务回滚等操作。

相关文章:

  • 如何通过 Nginx 反向代理提高网站安全性和性能?
  • 【常用工具】7-Zip 解/压缩软件——基本使用方法
  • Spark性能调优
  • 2024年航海制造工程与海洋工程国际会议(ICNMEME2024)
  • git仓库批量备份
  • LeetCode 54 螺旋矩阵
  • 扩展学习|商业智能和大数据分析的研究前景(比对分析)
  • 【Vue.js设计与实现】第一篇:框架设计概览-阅读笔记(持续更新)
  • 【Linux笔记】文件描述符与重定向
  • 《统计学习方法:李航》笔记 从原理到实现(基于python)-- 第5章 决策树(代码python实践)
  • ingres nginx 反向代理常见配置(持续更新)
  • 盘点Python网页开发轻量级框架Flask知识
  • C++ 数论相关题目 博弈论 Nim游戏
  • 微信小程序(二十五)条件判断语句与结构隐藏
  • Django视图函数技巧,从入门到实战
  • Android单元测试 - 几个重要问题
  • AngularJS指令开发(1)——参数详解
  • CentOS 7 防火墙操作
  • JavaWeb(学习笔记二)
  • Laravel核心解读--Facades
  • ng6--错误信息小结(持续更新)
  • Python3爬取英雄联盟英雄皮肤大图
  • Spring-boot 启动时碰到的错误
  • 海量大数据大屏分析展示一步到位:DataWorks数据服务+MaxCompute Lightning对接DataV最佳实践...
  • 实现菜单下拉伸展折叠效果demo
  • 我建了一个叫Hello World的项目
  • 原生js练习题---第五课
  • 如何在招聘中考核.NET架构师
  • 曜石科技宣布获得千万级天使轮投资,全方面布局电竞产业链 ...
  • ​决定德拉瓦州地区版图的关键历史事件
  • # Kafka_深入探秘者(2):kafka 生产者
  • #14vue3生成表单并跳转到外部地址的方式
  • (01)ORB-SLAM2源码无死角解析-(66) BA优化(g2o)→闭环线程:Optimizer::GlobalBundleAdjustemnt→全局优化
  • (16)UiBot:智能化软件机器人(以头歌抓取课程数据为例)
  • (9)STL算法之逆转旋转
  • (TOJ2804)Even? Odd?
  • (第二周)效能测试
  • (经验分享)作为一名普通本科计算机专业学生,我大学四年到底走了多少弯路
  • (三十五)大数据实战——Superset可视化平台搭建
  • (十五)Flask覆写wsgi_app函数实现自定义中间件
  • (十一)手动添加用户和文件的特殊权限
  • (使用vite搭建vue3项目(vite + vue3 + vue router + pinia + element plus))
  • (一)Java算法:二分查找
  • (转)shell中括号的特殊用法 linux if多条件判断
  • (转)大型网站的系统架构
  • (转)清华学霸演讲稿:永远不要说你已经尽力了
  • ****Linux下Mysql的安装和配置
  • .chm格式文件如何阅读
  • .htaccess配置重写url引擎
  • .NET CLR基本术语
  • .net web项目 调用webService
  • .NET 使用 JustAssembly 比较两个不同版本程序集的 API 变化
  • .NET大文件上传知识整理
  • .Net中间语言BeforeFieldInit
  • .Net转前端开发-启航篇,如何定制博客园主题