BACKUP语句用于备份整个数据库或者部分表进行完整备份或增量备份,同时支持指定时间戳备份。
BACKUP <table_pattern [,table_pattern]>||<DATABASE> db_name TO destination
[AS OF SYSTEM TIME <TIMESTAMP>
[INCREMENTAL FROM <full_backup_location> ]
<TIMESTAMP>
可以指定备份截止日期时间 <full_backup_location>
增量备份 注意:
只有admin角色用户可以运行BACKUP备份命令
如表存在外键约束,序列,视图,交错表。必须同时备份其依赖的对象
恢复的表从目标数据库继承特权授予;它们不保留来自备份表的特权授予,因为恢复集群可能有不同的用户。
备份路径拥有2种模式,http和NFS模式,推荐使用NFS
稳定性和速度更优
每个备份的路径必须是唯一的,备份的目的地/位置的URL必须使用以下格式:
[scheme]://[host]/[path]?[parameters]
类型 | schema | host | 参数 | 示例 |
---|---|---|---|---|
http | http | 主机地址 | N/A | http://localhost:8080/mydatest |
NFS/Local | nodelocal | 节点ID或为空 | N/A | nodelocal:///path/mydatest |
全量备份生成的备份数据,大概与集群存储占用容量相同。
backup database zl to 'nodelocal:///k2/f3_1';
backup zl.tt,zl.f2 to 'nodelocal:///zl_t_bak'
backup database zl to 'nodelocal:///k2/f3_3' incremental FROM 'nodelocal:///k2/f3_1';
backup zl.tt,zl.f2 to 'nodelocal:///zl_t_bak_2' incremental from 'nodelocal:///zl_t_bak';
backup database zl to 'nodelocal:///k2/f3_5' AS OF SYSTEM TIME '-20s'; --备份20s之前的数据
注意:
推荐使用nfS
共享存储模式
使用nfs模式必须在hubble.service文件中 ExecStart 启动中指定外部⽬录--external-io-dir=
/data_shares