StarRocks 备份与恢复
官网地址:备份与恢复
StarRocks 版本: 3.4.0-e94580b
部署信息:3 fe + 3 be 混部
备份仓库:minio
前言
很久就知道StarRocks 有备份与恢复功能,最近在一个项目上遇到了点问题,需要使用备份恢复功能,提前测试一下,外部存储系统选择是: MinIO。
StarRocks 支持在以下外部存储系统中备份数据:
- Apache™ Hadoop® (HDFS)集群
- AWS S3
- Google GCS
- 阿里云 OSS
- 腾讯云 COS
- 华为云 OBS
- MinIO
StarRocks 支持备份以下对象:
- 内部数据库、表(所有类型和分区策略)和分区
- External Catalog 的元数据(自 v3.4.0 开始支持)
- 同步物化视图和异步物化视图
- 逻辑视图(自 v3.4.0 开始支持)
- UDF(自 v3.4.0 开始支持)
说明
StarRocks 存算分离集群不支持数据备份和恢复。
创建备份仓库
-- 以下示例在 Minio 存储桶 srb 中创建仓库 minio_repo
drop repository minio_repo;
CREATE REPOSITORY minio_repo
WITH BROKER
ON LOCATION "s3a://srb/ods"
PROPERTIES(
"fs.s3a.access.key" = "access_key", -- minio 账号
"fs.s3a.secret.key" = "secret_key", -- minio 密码
"fs.s3a.endpoint" = "http://192.168.1.x:9000", -- minio 访问地址
"fs.s3a.connection.establish.timeout" = "15000" -- 超时时间 15秒
);
查看备份仓库
SHOW REPOSITORIES

查看minio 对应桶,已经创建了目录:

备份表
-- 以下示例在数据库 ods 中为表 ods_ticket_scenic_flow 创建数据快照 ods_ticket_scenic_flow_backup 并备份至仓库 minio_repo 中。
BACKUP SNAPSHOT ods.ods_ticket_scenic_flow_backup
TO minio_repo
ON (ods_ticket_scenic_flow);
查看备份任务
-- 查看备份任务
show backup
可以查看备份任务的各个状态,直到完成

查看备份
-- 查看备份
SHOW SNAPSHOT ON minio_repo;

恢复表
执行恢复表的SQL,从 minio_repo 使用备份 ods_ticket_scenic_flow_backup 恢复表 ods_ticket_scenic_flow
RESTORE SNAPSHOT ods.ods_ticket_scenic_flow_backup
FROM minio_repo
ON (ods_ticket_scenic_flow)
PROPERTIES (
"backup_timestamp"="2025-12-11-10-56-00-538",
"replication_num" = "3"
);
备份数据库
执行备份恢复SQL:
-- 备份数据库 ods 到 minio_repo 中。
BACKUP SNAPSHOT ods.ods_backup TO minio_repo;
-- 查看备份任务
show backup;
-- 查看备份快照
SHOW SNAPSHOT ON minio_repo;
-- 恢复备份 ods_backup 到数据库 ods_demo
RESTORE SNAPSHOT ods_demo.ods_backup
FROM `minio_repo`
PROPERTIES("backup_timestamp" = "2025-12-11-15-41-07-777");
-- 查看恢复任务
show restore;
查看恢复数据库:

查看恢复的表:

查看表数据:

- 结尾表达一下对starrocks 感谢的感谢,文档写得真详细
浙公网安备 33010602011771号