#yasbak
yasbak是YashanDB提供给第三方,用于对接备份恢复功能的工具。支持客户端方式部署,提供非侵入式的备份恢复对接方案。
- yasbak实际上对yasrman的二次封装,保存了yasrman执行过程中必须的一些参数,减少了用户的输入参数数量。
- 备份恢复语法详细说明请参考工具手册yasrman。
# 前提条件
- 对接的YashanDB需使用命令行方式部署。
- 推荐以非root用户执行yasbak。
- 关闭所有服务器防火墙或保证所有服务器间网络通信正常。
# 注意事项
(一)使用本方式执行数据库备份时,要求:
- 数据库集群运行于OPEN状态,所有节点在线(如果有部分备库异常,只要不影响对应的主库事务执行,则不影响备份)。
- 所有节点均开启归档模式。
- yasrman工具对应的catalog文件已经创建。
- 备份命令仅SYS超级用户或拥有SYSDBA、SYSBACKUP权限的用户才可执行。恢复命令仅SYS用户才可执行。
- 备份操作不允许与表空间、数据文件(例如redo文件等)的增删、resize操作并发,需要等待任一操作完成后才可执行。
(二)使用本方式执行数据库恢复时,要求:
- 所有数据库节点为NOMOUNT状态。
- 所有节点的残留文件已经清理。
- 数据库集群的部署状态和备份时保持一致,例如节点个数、监听地址、路径等信息没有发生变化。
(三)使用本方式执行归档日志恢复时,要求:
- 数据库执行完RESTORE命令且未执行RECOVER的MOUNT状态。
(四)在执行增量备份集恢复时需注意如下事项:
- 假如零级增量备份指定tag为incr_0,普通一级增量备份指定tag为incr_1_1,incr_1_2... (按顺序发起备份):
- 当指定tag为incr_1_2的一级增量备份恢复时,必须保证tag为incr_0的零级增量备份以及tag为incr_1_1的普通一级增量备份的备份文件保存目录存在且完整,否则将触发 YAS-00313 错误。
- 假如零级增量备份指定tag为incr_0,累积一级增量备份指定tag为incr_1_1,incr_1_2... (按顺序发起备份):
- 当指定tag为incr_1_2的一级增量备份恢复时,必须保证tag为incr_0的零级增量备份的备份文件保存目录存在且完整,否则将触发 YAS-00313 错误。
- 假如零级增量备份指定tag为incr_0,累积一级增量备份指定tag为incr_1_1,普通一级增量备份指定tag为incr_1_2,累积一级增量备份指定tag为incr_1_3,普通一级增量备份指定tag为incr_1_4... (按顺序发起备份):
- 当指定tag为incr_1_4的一级增量备份恢复时,必须保证tag为incr_0、incr_1_3的增量备份的备份文件保存目录存在且完整,否则将触发 YAS-00313 错误。
- 当指定tag为incr_1_3的一级增量备份恢复时,必须保证tag为incr_0的零级增量备份的备份文件保存目录存在且完整,否则将触发 YAS-00313 错误。
- HA模式下,由于每个复制组的备份集只保存在主节点,所以同一个复制组内,需要增量备份集及其依赖的备份集,都在同一个节点上。