关系型数据库大容量日志恢复模式

本文涉及的产品
云原生数据库 PolarDB MySQL 版,通用型 2核8GB 50GB
云原生数据库 PolarDB PostgreSQL 版,标准版 2核4GB 50GB
日志服务 SLS,月写入数据量 50GB 1个月
简介: 【6月更文挑战第6天】

image.png
关系型数据库的大容量日志恢复模式(Bulk-Logged Recovery Model)是一种特定的数据库恢复模式,它主要用于优化那些包含大量数据修改操作(如大容量插入、更新和删除)的数据库的性能和恢复效率。以下是关于大容量日志恢复模式的详细解释:

工作原理

  • 记录方式:与完整恢复模式(完全记录所有事务)相比,大容量日志恢复模式主要对大容量操作进行最小记录,而对其他事务则进行完全记录。
  • 性能和空间使用:该模式通过减少日志记录来提供最佳性能,并占用最小的日志空间。

优点

  • 媒体故障保护:大容量日志恢复模式能够保护大容量操作不受媒体故障的危害。
  • 性能提升:由于减少了日志记录,数据库的性能得到了显著提升。

缺点

  • 数据丢失风险:该模式会增加大容量复制操作丢失数据的风险,因为它阻止再次捕获对每个事务逐一所做的更改。
  • 日志备份限制:如果日志备份包含大容量日志操作,则无法还原到该日志备份中的特定时点,而只能还原整个日志备份。

注意事项

  • 合并的数据区:在大容量日志恢复模式下,合并的数据区可能使日志备份变得非常庞大。
  • 备份需求:备份日志需要访问包含大容量日志事务的数据文件。如果无法访问任何受影响的数据库文件,则事务日志将无法备份,并且在此日志中提交的所有操作都会丢失。
  • 位图页的使用:为跟踪数据页,日志备份操作依赖于位图页的大容量更改。位图页针对每个区包含一位,对于自上次日志备份后由大容量日志操作所更新的每个区,在位图中将每个位都设置为1。

自动检查点和日志截断

  • 在完整或大容量日志恢复模式下,如果没有其他因素使日志记录保持为活动状态,则到进行第一次完整备份时,自动检查点才会截断事务日志的未使用部分。
  • 第一次完整备份后,截断要求备份事务日志。

总结

大容量日志恢复模式是一个在特定场景下(如大量数据修改操作)优化性能和恢复效率的数据库恢复模式。然而,它也存在一定的数据丢失风险,并且在使用时需要注意备份和恢复的细节。在选择是否使用该模式时,需要综合考虑数据库的具体需求、性能和恢复要求。

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
目录
打赏
0
2
2
0
283
分享
相关文章
【YashanDB 知识库】用 yasldr 配置 Bulkload 模式作单线程迁移 300G 的业务数据到分布式数据库,迁移任务频繁出错
问题描述 详细版本:YashanDB Server Enterprise Edition Release 23.2.4.100 x86_64 6db1237 影响范围: 离线数据迁移场景,影响业务数据入库。 外场将部分 NewCIS 的报表业务放到分布式数据库,验证 SQL 性能水平。 操作系统环境配置: 125G 内存 32C CPU 2T 的 HDD 磁盘 问题出现的步骤/操作: 1、部署崖山分布式数据库 1mm 1cn 3dn 单线启动 yasldr 数据迁移任务,设置 32 线程的 bulk load 模式 2、观察 yasldr.log 是否出现如下错
MySQL崩溃保险箱:探秘Redo/Undo日志确保数据库安全无忧!
《MySQL崩溃保险箱:探秘Redo/Undo日志确保数据库安全无忧!》介绍了MySQL中的三种关键日志:二进制日志(Binary Log)、重做日志(Redo Log)和撤销日志(Undo Log)。这些日志确保了数据库的ACID特性,即原子性、一致性、隔离性和持久性。Redo Log记录数据页的物理修改,保证事务持久性;Undo Log记录事务的逆操作,支持回滚和多版本并发控制(MVCC)。文章还详细对比了InnoDB和MyISAM存储引擎在事务支持、锁定机制、并发性等方面的差异,强调了InnoDB在高并发和事务处理中的优势。通过这些机制,MySQL能够在事务执行、崩溃和恢复过程中保持
166 3
DZ社区 mysql日志清理 Discuz! X3.5数据库可以做定期常规清理的表
很多站长在网站日常维护中忽略了比较重要的一个环节,就是对于数据库的清理工作,造成数据库使用量增加必须多的原因一般有2个:后台站点功能开启了家园,此功能现在很少有论坛会用到,但是灌水机会灌入大量垃圾信息致使站长长时间未能发觉;再有就是程序默认的一些通知类表单会存放大量的、对于网站日常运行并无意义的通知信息。
176 2
数据库启用慢速查询日志如何增强 Postgres 可观测性
数据库启用慢速查询日志如何增强 Postgres 可观测性
83 1
支持配置审计日志的存储数据库
审计日志作为企业监管平台的重要依据,同时也是“等保三级”认证的必要考察项之一。Dataphin V4.3版本支持设置平台日志的存储数据源,帮助用户快速获取审计日志,同时介绍了不同部署模式的Dataphin如何查看审计日志的方法。
184 5
基于SQL Server事务日志的数据库恢复技术及实战代码详解
基于事务日志的数据库恢复技术是SQL Server中一个非常强大的功能,它能够帮助数据库管理员在数据丢失或损坏的情况下,有效地恢复数据。通过定期备份数据库和事务日志,并在需要时按照正确的步骤恢复,可以最大限度地减少数据丢失的风险。需要注意的是,恢复数据是一个需要谨慎操作的过程,建议在执行恢复操作之前,详细了解相关的操作步骤和注意事项,以确保数据的安全和完整。
320 0
PolarDB开源数据库进阶课11 激活容灾(Standby)节点
本文介绍了如何激活PolarDB容灾(Standby)节点,实验环境依赖于Docker容器中用loop设备模拟共享存储。通过`pg_ctl promote`命令可以将Standby节点提升为主节点,使其能够接收读写请求。激活后,原Standby节点不能再成为PolarDB集群的Standby节点。建议删除对应的复制槽位以避免WAL文件堆积。相关操作和配置请参考系列文章及视频教程。
20 1
PolarDB开源数据库进阶课17 集成数据湖功能
本文介绍了如何在PolarDB数据库中接入pg_duckdb、pg_mooncake插件以支持数据湖功能, 可以读写对象存储的远程数据, 支持csv, parquet等格式, 支持delta等框架, 并显著提升OLAP性能。
27 0
PolarDB开源数据库进阶课15 集成DeepSeek等大模型
本文介绍了如何在PolarDB数据库中接入私有化大模型服务,以实现多种应用场景。实验环境依赖于Docker容器中的loop设备模拟共享存储,具体搭建方法可参考相关系列文章。文中详细描述了部署ollama服务、编译并安装http和openai插件的过程,并通过示例展示了如何使用这些插件调用大模型API进行文本分析和情感分类等任务。此外,还探讨了如何设计表结构及触发器函数自动处理客户反馈数据,以及生成满足需求的SQL查询语句。最后对比了不同模型的回答效果,展示了deepseek-r1模型的优势。
49 0
PolarDB开源数据库进阶课14 纯享单机版
PolarDB不仅支持基于“共享存储+多计算节点”的集群版,还提供类似开源PostgreSQL的单机版。单机版部署简单,适合大多数应用场景,并可直接使用PostgreSQL生态插件。通过Docker容器、Git克隆代码、编译软件等步骤,即可完成PolarDB单机版的安装与配置。具体操作包括启动容器、进入容器、克隆代码、编译软件、初始化实例、配置参数及启动数据库。此外,还有多个相关教程和视频链接供参考,帮助用户更好地理解和使用PolarDB单机版。
26 0

热门文章

最新文章

AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等