第 21 课 PostgreSQL 日志系统

redolog的作用

  • PostgreSQL利用日志文件来防止断电之类的故障导致的数据丢失。
  • 对每个修改数据库内容的操作,都会自动为其生成一条日志记录,并将其记录到日志文件中。
  • 系统默认有三个日志文件,默认名字为 REDOLOG0.ldf,REDOLOG1.ldf,REDOLOG02.ldf。
  • 以循环方式来使用重做日志文件。

日志切换

  • 用户主动切换:用户可以通过命令,主动进行日志切换。
  • 是日志写满需要新日志。当一个日志文件写满之后,数据库会自动进行日志切换。
  • 日志文件发生切换时,系统将执行一个检查点操作。

如果发生日志切换,暂时无法得到下一个可用的日志文件,则PostgreSQL 实例会自动创建一个日志文件。

日志文件有三种状态

  • CURRENT 表示当前正在使用的日志文件。
  • ACTIVE 表示这个日志文件处在激活状态,不能再次被使用。
  • NOACTIVE 表示这个日志文件可以被重用。

日志的重用条件

  • Checkpoint完成
  • 归档完成

归档日志

  • 在日志文件被覆盖之前,KingbaseES能够将已经写满的日志文件通过复制操作系统文件的方式保存到指定位置,称为“归档”。
  • 归档操作由后台进程自动完成。
  • 归档模式:
  • 非归档模式(NOARCHIVELOG Mode)
  • 归档模式( ARCHIVELOG Mode )
  • 是否需要进行归档,取决于对数据库应用环境的可靠性和可用性的要求
    如果数据库运行在非归档模式下,DBA必须定期对数据库进行完全备份。

日志文件的配置

  • 系统默认有三个日志文件,默认大小为100M,初始化的时候可以设置日志文件大小。
  • 初始化后,用户可以根据需要手动的增加、删除日志文件。
  • 日志文件的信息可以通过系统视图 sys_redologs 进行查询。

发现更多宝藏

我在喜马拉雅上分享声音

《PostgreSQL数据库内核分析》,点开链接可以听听,有点意思。

《数据库系统概论(第4版)》,点开链接可以听听,有点意思。

更多IT有声课程,点我发现更多

第 0 课 PostgreSQL 系列文章列表

其他相关文章分享列表:

第 23 课 PostgreSQL 创建自己的数据库、模式、用户
第 22 课 PostgreSQL 控制文件
第 21 课 PostgreSQL 日志系统
第 16 课 查询过程源码分析
第 15 课 PostgreSQL 系统参数配置
第 14 课 PostgreSQL 数据存储结构
第 13 课 PostgreSQL 存储之Page(页面)源码分析
第 12 课 PostgreSQL 认证方式
第 11 课 PostgreSQL 增加一个内核C函数
第 10 课 PostgreSQL 在内核增加一个配置参数
第 09 课 PostgreSQL 4种进程启动方式
第 08 课 PostgreSQL 事务介绍
第 07 课 PostgreSQL 数据库、模式、表、空间、用户间的关系
第 06 课 PostgreSQL 系统表介绍
第 05 课 PostgreSQL 编译源代码进行开发
第 04 课 PostgreSQL 安装最新的版本
第 03 课 PostgreSQL 代码结构
第 02 课 PostgreSQL 的特性、应用、安装
第 01 课 PostgreSQL 简介及发展历程

上面文章都在专辑中:PostgreSQL专辑链接,点我查看

如果有用,可以收藏这篇文件,随时在更新....

更多交流加群: PostgreSQL内核开发群 876673220

亲,记得点赞、留言、打赏额!!!

上一课
下一课

你可能感兴趣的:(第 21 课 PostgreSQL 日志系统)