首批通过分布式安全可靠测评,为关键业务系统打造
备份前准备
更新时间:2026-06-10 10:00:27
在进行备份前,需要配置备份目的端及备份相关的参数。
配置备份目的端
使用
root用户登录数据库的sys租户。配置备份目的端。
目前,OceanBase 数据库支持 NFS、阿里云 OSS 和华为云 OBS 作为备份目的端。
例如:
NFS
注意
使用 NFS 作为备份目的端时,需要注意以下事项:
backup_dest的值不支持设置为带有问号(?)的字符串。backup_dest的值必须设置为绝对路径,保证 OBServer 对backup_dest具有写权限 。必须保证所有 OBServer 都挂载了同一个服务器的 NFS。同时,为保证备份的顺利进行,务必使用本文档中推荐的参数挂载 NFS。挂载 NFS 具体操作请参见 部署 NFS 客户端。
设置备份目的端并开启备份后,备份文件通常存放在以集群名命名的目录中,同一备份目的端可以存放不同集群的备份文件。如果在设置目的端时,备份目的端所在的目录中出现了与当前集群名相同的目录,则要求该目录(以集群名命名的目录)为空。
设置备份目的端的示例如下:
obclient> ALTER SYSTEM SET backup_dest='file:///data/nfs/backup';阿里云 OSS
当使用 OSS 作为备份目的端时,除了设置备份目的端,您还可以通过
delete_mode参数来配置备份文件的清理模式。delete_mode参数当前支持以下两种备份文件的清理模式:delete:表示清理模式为直接删除满足要求的备份文件。配置为该模式后,当您通过自动或手动的方式清理备份文件时,对于满足清理要求的备份文件,系统会直接将其删除。该模式为默认的清理模式,如果不配置
delete_mode参数,则使用默认清理模式delete。tagging:表示清理模式为对满足清理要求的备份文件设置 Tag,备份文件将仍然保留。配置为该模式后,当您通过自动或手动的方式清理备份文件时,对于满足清理要求的备份文件,系统会给这些文件设置标签,标签的
key为"delete_mode",value为"tagging",以便后续您可以通过设置的标签在 OSS 上对这些文件的生命周期进行管理。
设置
delete模式或tagging模式后,自动清理备份数据的相关操作请参见 自动清理备份的数据;手动清理备份数据的相关操作请参见 手动清理备份的数据。设置备份目的地并配置备份文件的清理模式的示例如下:
obclient> ALTER SYSTEM SET backup_dest='oss://oceanbase-test-bucket/backup/?host=xxx.aliyun-inc.com&access_id=xxx&access_key=xxx&delete_mode=delete';注意
backup_dest设置完成且发起过备份后,将无法再修改delete_mode参数的值。禁止单独开启 OSS 的备份自动过期功能,必须配合OceanBase 数据库的
delete_mode参数使用。
华为云 OBS
obclient> ALTER SYSTEM SET backup_dest='obs//oceanbase-test-appid/backup?host=obs.cn-east-2.myhuaweicloud.com&access_id=xxx&access_key=xxx‘;
备份目的端配置成功后,如果您已经发起了备份和备份的备份操作,您也可以根据业务需要,在进行以下操作后,更换备份目的端:
停止备份任务。
具体操作请参见 停止备份。
(建议)停止清理备份的任务。
具体操作请参见 停止清理备份数据(集群级别)。
停止备份备份的任务。
具体操作请参见 停止备份备份。
(建议)停止清理备份的备份的任务。
具体操作请参见 停止清理备份的备份数据。
(可选)配置备份参数
使用
root用户登录数据库的sys租户。通过配置项
backup_dest_option设置备份相关的参数。可设置的备份参数如下:
log_archive_checkpoint_interval参数log_archive_checkpoint_interval参数用于控制冷分区 Checkpoint 任务的生成间隔,以推进其归档进度。说明
在日志备份过程中,有写入的分区由 Clog 被归档来推进其归档进度,由于冷分区没有日志写入,故需要引入 Checkpoint 任务来推进冷分区的归档进度。
如果不通过配置项
backup_dest_option设置,则默认使用集群级别的配置项log_archive_checkpoint_interval的值。如果配置项backup_dest_option和log_archive_checkpoint_interval均未设置,则使用默认值120s。如果配置项backup_dest_option和log_archive_checkpoint_interval均已设置,则以backup_dest_option配置的值为准。建议使用配置项backup_dest_option来设置。recovery_window参数recovery_window参数用于控制备份数据可恢复的时间窗口,以及作为判断备份数据是否过期的依据。例如,设置recovery_window=7d表示从当前时间往前推,7 天内的数据保证可恢复,且与这 7 天数据恢复无关的备份数据将被视为过期的数据。recovery_window参数的使用示例及详细说明请参见 自动清理备份的数据。如果不通过配置项
backup_dest_option设置,则默认使用集群级别的配置项backup_recovery_window的值。如果配置项backup_dest_option和backup_recovery_window均未设置,则使用默认值0,表示备份数据不过期。如果配置项backup_dest_option和backup_recovery_window均已设置,则以backup_dest_option配置的值为准。建议使用配置项backup_dest_option来设置。对于自动清理场景,备份的数据过期后,系统会按照一定的规则自动清理过期的数据。
对于手动清理的场景,备份的数据过期后,管理员可以手动清理过期的备份数据。
auto_delete_obsolete_backup参数auto_delete_obsolete_backup参数用于控制是否启动自动清理功能。例如,设置auto_delete_obsolete_backup=true表示系统将会自动清理过期的备份数据。如果不通过配置项
backup_dest_option设置,则默认使用集群级别的配置项auto_delete_expired_backup的值。如果配置项backup_dest_option和auto_delete_expired_backup均未设置,则系统会使用默认值false,表示不自动清理过期的备份数据。如果配置项backup_dest_option和auto_delete_expired_backup均已设置,则以backup_dest_option配置的值为准。建议使用配置项backup_dest_option来设置。log_archive_piece_switch_interval参数log_archive_piece_switch_interval参数用于控制自动按照时间段来切日志文件的目录,默认值为0,表示不切分 Piece, 有效范围为 [1d, 7d]。如果需要开启切分 Piece 的备份,则需要配置此参数。
backup_copies参数backup_copies参数用于指定一个备份级的冗余度。默认值为0。如果设置了backup_backup_dest,建议该参数设置为2,其有效范围为 [0,8]。如果
backup_copies设置为小于2,则在清理备份时,系统不会考虑备份备份是否已成功;如果backup_copies设置为2,则仅当成功备份备份数据到backup_backup_dest后才会自动清理backup_dest下的备份。如果未设置备份备份,建议此参数使用默认值。
更多配置项
backup_dest_option的使用说明,请参见 backup_dest_option。示例如下:
obclient> ALTER SYSTEM SET backup_dest_option='log_archive_checkpoint_interval=2m&recovery_window=7d&auto_delete_obsolete_backup=true&log_archive_piece_switch_interval=1d&backup_copies=0';