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

网站建设协低价格的网站建设公司

网站建设协,低价格的网站建设公司,freenom怎么做网站,营销策划机构在 MySQL 数据库中#xff0c;binlog#xff08;二进制日志#xff09;、redo log#xff08;重做日志#xff09;和 undo log#xff08;回滚日志#xff09;起着至关重要的作用。它们共同保障了数据库的高可用性、数据一致性和事务的可靠性。下面将对这三大日志进行详…在 MySQL 数据库中binlog二进制日志、redo log重做日志和 undo log回滚日志起着至关重要的作用。它们共同保障了数据库的高可用性、数据一致性和事务的可靠性。下面将对这三大日志进行详细的介绍。 一、binlog二进制日志 1. 定义与作用 Binlog 是 MySQL 数据库的二进制日志它记录了数据库的所有变更操作包括数据的插入、更新、删除等。主要作用有以下两点 主从复制在主从复制架构中主库将数据库的变更操作记录在 binlog 中然后从库通过读取主库的 binlog 来实现数据同步。这样可以实现数据库的扩展和高可用性。数据恢复如果数据库出现故障可以通过备份的数据库文件和 binlog 来恢复到故障发生前的状态。 2. 特点 逻辑日志binlog 记录的是数据库的逻辑操作例如 SQL 语句。这意味着它可以跨不同的数据库版本使用因为它记录的是逻辑操作而不是物理操作。可配置性可以通过配置参数来决定哪些数据库、哪些表的操作被记录在 binlog 中。还可以配置 binlog 的格式如 STATEMENT记录 SQL 语句、ROW记录行级变更和 MIXED混合模式。可被多个从库读取主库生成的 binlog 可以被多个从库同时读取实现主从复制的扩展。 3. 工作原理 当数据库执行一个事务时如果事务涉及到对数据的修改操作MySQL 会将该事务的 SQL 语句记录到 binlog 中。主库将 binlog 发送给从库从库通过读取 binlog 并执行其中的 SQL 语句来实现数据同步。 二、redo log重做日志 1. 定义与作用 Redo log 是 MySQL 数据库的重做日志它记录了对数据页的物理修改操作。主要作用是保证事务的持久性即当数据库发生故障时通过 redo log 可以恢复未写入磁盘的数据。 2. 特点 物理日志redo log 记录的是对数据页的物理修改操作例如某个数据页的某个偏移量处的值被修改为某个特定的值。循环写入redo log 是循环写入的当空间写满后会从头开始覆盖旧的日志。为了防止覆盖未写入磁盘的数据MySQL 会在覆盖旧日志之前将其写入磁盘。先写日志后写磁盘在事务提交时MySQL 会先将 redo log 写入磁盘然后再将数据页写入磁盘。这样可以保证在数据库发生故障时能够通过 redo log 恢复未写入磁盘的数据。 3. 工作原理 当事务对数据进行修改时MySQL 首先将修改操作记录在 redo log 中并将数据页的修改标记为 “脏页”。后台有一个线程会定期将 “脏页” 写入磁盘。如果在写入磁盘之前数据库发生故障那么在数据库重新启动时可以通过 redo log 来恢复 “脏页” 中的数据。 三、undo log回滚日志 1. 定义与作用 Undo log 是 MySQL 数据库的回滚日志它记录了事务对数据的反向操作用于撤销事务的修改。主要作用有以下两点 事务回滚如果事务执行过程中出现错误可以通过 undo log 来撤销事务对数据的修改实现事务的回滚。MVCC多版本并发控制为了实现 MVCCMySQL 需要保存数据的多个版本。undo log 中记录了数据的旧版本通过它可以实现数据的多版本并发控制。 2. 特点 逻辑日志undo log 记录的是事务对数据的反向操作是逻辑日志。与事务相关每个事务都有自己的 undo log用于回滚该事务对数据的修改。可用于 MVCCundo log 中的旧版本数据可以用于实现 MVCC提高数据库的并发性能。 3. 工作原理 当事务对数据进行修改时MySQL 会同时在 undo log 中记录反向操作。如果事务需要回滚MySQL 可以通过 undo log 中的反向操作来撤销事务对数据的修改。在 MVCC 中当一个事务读取数据时MySQL 会根据事务的隔离级别和当前数据的版本从 undo log 中找到合适的版本返回给事务。 四、三大日志的关系 Binlog、redo log 和 undo log 在 MySQL 数据库中相互配合共同保障了数据库的高可用性和数据一致性。它们之间的关系如下 binlog 与 redo log 的关系binlog 是逻辑日志记录的是数据库的逻辑操作redo log 是物理日志记录的是对数据页的物理修改操作。在主从复制中主库将 binlog 发送给从库从库通过执行 binlog 中的 SQL 语句来实现数据同步。而在事务提交时MySQL 会先将 redo log 写入磁盘然后再将 binlog 写入磁盘这样可以保证在数据库发生故障时能够通过 redo log 恢复未写入磁盘的数据同时也可以通过 binlog 进行数据恢复和主从复制。redo log 与 undo log 的关系redo log 用于保证事务的持久性undo log 用于事务回滚和 MVCC。当事务对数据进行修改时MySQL 会同时将修改操作记录在 redo log 和 undo log 中。如果事务需要回滚MySQL 可以通过 undo log 中的反向操作来撤销事务对数据的修改如果数据库发生故障MySQL 可以通过 redo log 来恢复未写入磁盘的数据。binlog、redo log 和 undo log 的整体关系这三种日志在 MySQL 数据库中共同作用保证了数据库的高可用性、数据一致性和事务的可靠性。binlog 用于主从复制和数据恢复redo log 用于保证事务的持久性undo log 用于事务回滚和 MVCC。它们相互配合使得 MySQL 数据库能够在各种情况下保持数据的完整性和一致性。
http://www.w-s-a.com/news/778725/

相关文章:

  • 研发网站建设报价深圳网站建设前十名
  • 宠物发布网站模板wordpress中文免费电商模板
  • 济南做网站创意服装品牌策划公司
  • 本地电脑做视频网站 外网连接不上软件商城源码
  • 足球直播网站怎么做crm系统介绍
  • 株洲网站建设联系方式东莞凤岗网站制作
  • 小纯洁网站开发如何注册域名
  • 网上做试卷的网站如何把刚做的网站被百度抓取到
  • 滕州网站建wordpress用户中心按钮不弹出
  • 清远新闻最新消息福建seo搜索引擎优化
  • 凡客建站网微信网站怎么做的
  • 网站建设费怎么写会计科目行业网站建设公司
  • 网站里的友情链接网站建设个人简历的网页
  • 佛山自助建站软件湖南seo优化推荐
  • 免费微信微网站模板下载不了优化人员配置
  • wordpress 导航网站主题画流程图的网站
  • 皮卡剧网站怎样做排名网
  • 网站开发 兼职哪个网站是做安全教育
  • 商品展示类网站怎么用群晖nas做网站
  • 长腿蜘蛛wordpresssem优化推广
  • 中国铁路建设监理协会官方网站深圳福田区怎么样
  • 互联网网站开发发展wordpress文章自定义栏目
  • 众筹网站平台建设工信部网站备案系统
  • 网站301重定向代码wordpress 加子目录
  • 淄博网站制作优化推广asp做学生信息网站
  • 海口招商建设有限公司网站淮安哪有专业做网站的公司
  • 喀什哪有做网站的国内正规seo网络推广
  • 网站设计初步规划公司网页打不开是什么原因
  • 深圳企业网站建设推广服务php做的商城网站设计论文
  • 韩雪冬网站手机网站开发 宽度