人大金仓数据库的归档日志

归档日志

归档日志是非活动的WAL日志备份。通过使用归档日志,可以保留所有WAL日志的历史记录,当数据库处于ARCHIVELOG模式并进行日志切换时,后台进程archiver process会将WAL日志的内容保存到归档日志中,当数据库出现介质失败时,使用数据文件备份、归档日志、在线WAL日志可以完全恢复数据库。

什么情况下会触发WAL日志归档?

  1. 手动切换时,会触发WAL日志归档。
  2. WAL segment file写满时,会触发WAL日志归档。
  3. 设置archive_timeout时,定时触发WAL日志归档。
  4. 数据库正常关闭时,会触发WAL日志归档。

  • 归档——启用WAL归档
  1. 通过修改kingbase.conf开启归档
    1. 建立归档目录
    2. 配置相关参数

 

    1. 重启KES实例
    2. 查看参数
    3. 手动切换归档
    4. 查看归档日志文件

 

  1. 通过ALTER SYSTEM命令开启归档
  1. 建立归档目录
  2. 配置相关参数
  3. 重启KES实例

 

  1. 查看参数
  2. 手动切换归档
  3. 查看归档日志文件

 

 

  1. archive_command 归档命令详细

临时启用和禁用归档方法

方法1——通过逻辑运算符设置。

注意:

当文件标识符archive_active存在时,则会执行归档命令

归档标识文件archive_active需要手工创建。

方法2——通过shell设置

 

注意:

这里使用了shell的选择结构语句。

当文件标识archive_artive存在时,则会执行归档命令。

  • 归档——触发WAL归档

1、手工切换WAL日志

使用select sys_switch_wal(); 函数可以手工切换WAL日志。

  1. 执行sys_switch_wal()。
  2. 当前写入的wal日志信息会切换到新的日志文件中。
  3. 将旧的WAL日志归档到/archive/目录中。

 

2、WAL日志写满

WAL日志被写满后会触发归档,WAL segment file大小默认为16M。

  1. 创建t01表。
  2. 批量插入数据。
  3. KES会自动发生日志切换并执行归档。

 

3、设置archive_timeout

通过设置archive_timeout参数,可以让数据库周期性的执行日志切换和归档操作。

  1. 每60s触发一次WAL日志切换。
  2. 每60s触发一次WAL日志归档。

 

4、fast或者smart方式正常关闭数据库

使用fast或者smart方式关闭实例时,数据库会再关闭自动执行切换和归档。

 

  • 归档——清理WAL归档
  1. 手工清理归档日志
  1. 确定可以清楚的WAL日志文件
  2. 手工清理WAL日志归档文件

 

  1. 自动清理归档日志
  1. 编辑脚本sys_archive_clean.sh
    • 填写数据目录:/KingbaseES/V8/data
    • 填写软件家目录:/KingbaseES/V8/Server
    • 填写归档目录:/archive

 

  1. 使用sys_controldata 查看最后归档点
  2. 使用sys_archivecleanup命令清除最新归档点之前的WAL日志。

定时启动脚本

 

  • 归档——常用归档配置
  1. 压缩归档

 

  1. 配置远程归档

 

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

黑马金牌编程

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值