ITPub博客

首页 > 数据库 > 数据库开发技术 > 【巨杉数据库Sequoiadb】sdb backupOffline 相关问题

【巨杉数据库Sequoiadb】sdb backupOffline 相关问题

原创 数据库开发技术 作者:CherylRAnthony 时间:2019-07-31 10:12:31 0 删除 编辑

【 问题 1 】
目前 sdb 的 backupOffline 方法,支持增量 备 份 时 ,不阻塞数据 库 的 读 写 请 求。
如果有如下 场 景
1
昨天的 备 份 lsn 为 1000
2
今天 执 行增量 备 份 时 , lsn 为 1200
3
执行增量备份过程中, lsn 变为 1300
则本次增量备份,是备份了 lsn 从 1000 - 1200 , 还 是 1000 - 1300 ?

【 问题 2 】
目前 backupOffline 方法,支持 执 行 group 进行备份,也是支持全集群进行备份。
我自己理解,全集群 备 份和指定 group 备份,都是由数据库找到每个 group 的

master 节点进行相关的备份。
换言之, backupOffline 方法依 赖 master 节点。
由于增量 备 份,需要依 赖 上一个 备 份点的 lsn 号,所以如果用 户 在 执 行 本次增量 备 份 时 ,某个 group 的 master 节点发生变化,数据库会如何表现?
如果在全集群做增量 备 份,假 设 有三个 group , 只有其中一个 group 的 master 发生了切换,对于其余两个 group 来 说 ,是否会生成新的增量 备 份文件? 还 是会自 动 回 滚 ?  

【解决 办 法】
问题 1 :
执行增量备份过程 中,如果数据 库 仍在 进 行操作,是有可能将一部分的操作 备 份成功的,也就是 备 份的 lsn 是 备 份 1000~1300 之 间 。
问题 2 :
1
、 执 行增量 备 份 过 程中, 节 点切主并不会影响本次 备 份 过 程, 备 份的 结 果是原主 节 点 产 生增量 备 份。
2
、在全集群做了全量 备 份的情况下,如 group1/2/3 均做了全量 备 份,即在每个 group 的主 节 点都做了全量 备 份,然后有一个 group 的主 节 点 变动 了,如 group1 的主 节 点从 A 机器切 换 到了 B 机器,此 时进 行全局的增量 备 份,其余两个 group 依旧是会 备 份成功的,只有切主的 group1 的主 节 点增量 备份失败,因为其新主节点在进行增量备份时发现没有全量备份,会抛出 -264 错误,可以通过 getLastErrObj() 查看更详细的错误。  

【 问题补 充】
解决方法 2 中提到:
有切主的 group1 的主 节 点增量 备 份失 败 ,因 为 其新主 节 点在 进 行增量 备 份 时发现 没有全量 备份
我想 问 一下是如何判断 该节 点是否有全量 备 份,是通 过检查备 份目 录 是否存在全量 备 份的文件 吗 ?

【解决 办 法】
查看节点是否有全量备份可以通过 db.listBackup() 查看备份信息,如改节点的备份信息中有 "EnsureInc": false , 则该备 份是全量 备 份文件。    

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69935160/viewspace-2652305/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2019-06-25

  • 博文量
    71
  • 访问量
    55600