BACKUP语句用于备份整个数据库或者部分表进行完整备份或增量备份,同时支持指定时间戳备份。
BACKUP <targets...> INTO <location...>
[ AS OF SYSTEM TIME <expr> ]
[ INCREMENTAL FROM <location...> ]
[ WITH <option> [= <value>] [, ...] ]
<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://n/path/mydatest |
全量备份生成的备份数据,大概与集群存储占用容量相同。
backup into 'nodelocal://1/backup';
backup database guar into 'nodelocal://1/backup_datadb';
backup guar.trans,guar.tb_bs into 'nodelocal://1/backup_data'
backup database guar into 'nodelocal://1/backup_db' incremental from 'nodelocal://1/backup_data';
backup database guar into 'nodelocal://1/backup_data' AS OF SYSTEM TIME '-20s' WITH revision_history;
注意:
推荐使用nfS
共享存储模式
使用nfs模式必须在hubble.service文件中 ExecStart 启动中指定外部⽬录--external-io-dir=
/data_shares