可以使用这些 API 调用执行数据库的备份和恢复任务。
备份和还原
- 1: GET backups
- 2: POST backups/:config_script_base
- 3: GET backups/:config_script_base/:archive_id
- 4: POST restore/:archive_id
1 - GET backups
返回已为 VBR 配置文件 (*.ini)(驻留在 /opt/vertica/config
中)创建的所有备份列表,并提供有关每个备份的详细信息。
资源 URL
https://<NODE>:5444/backups
认证
请求头中需要包含 VerticaAPIKey。
API 密钥必须具有受限 级别或更高级别的安全性。
参数
无。
示例请求
响应:
{
"data": [
{
"backups": [
{
"archive_id": "v_vdb_bk_snapshot_20190305_174428",
"version": "v9.2.1-20190305",
"href": "/backups/fullbk/v_vdb_bk_snapshot_20190305_174428",
"exclude_patterns": "",
"backup_type": "full",
"include_patterns": "",
"epoch": "16",
"objects": "",
"hosts": "v_vdb_bk_node0001(10.20.91.240), v_vdb_bk_node0002(10.20.91.241), v_vdb_bk_node0003(10.20.91.242), v_vdb_bk_node0004(10.20.91.243), v_vdb_bk_node0005(10.20.91.244)"
},
{
"archive_id": "v_vdb_bk_snapshot_20190305_174025",
"version": "v9.2.1-20190305",
"href": "/backups/fullbk/v_vdb_bk_snapshot_20190305_174025",
"exclude_patterns": "",
"backup_type": "full",
"include_patterns": "",
"epoch": "16",
"objects": "",
"hosts": "v_vdb_bk_node0001(10.20.91.240), v_vdb_bk_node0002(10.20.91.241), v_vdb_bk_node0003(10.20.91.242), v_vdb_bk_node0004(10.20.91.243), v_vdb_bk_node0005(10.20.91.244)"
}
],
"config_file": "/opt/vertica/config/fullbk.ini",
"config_script_base": "fullbk",
"num_backups": 2
}
],
"href": "/backups",
"mime-type": "application/vertica.databases.json-v2"
}
2 - POST backups/:config_script_base
为 VBR 配置脚本 :config_script_base
中定义的备份创建新的备份作业。VBR 配置脚本必须驻留在 /opt/vertica/configuration
中。:config_script_base
值不包含 .ini 文件名扩展名。
要确定有效的 :config_script_base
值,请参阅 GET backups。
返回一个作业 ID,它可用于确定作业的状态。
资源 URL
https://<NODE>:5444/backups/:config_script_base
认证
请求头中需要包含 VerticaAPIKey。
API 密钥必须具有受限 级别或更高级别的安全性。
参数
无。
示例请求
响应:
{
"id": "CreateBackup-VMart-1404750602.03",
"url": "/jobs/CreateBackup-VMart-1404750602.03"
}
3 - GET backups/:config_script_base/:archive_id
返回有关特定备份的详细信息。您必须提供 :config_script_base
。此值为驻留在 /opt/vertica/config
中的 VBR config 文件(没有扩展名 .ini)的名称。:archive_id
是 GET backups 命令返回的 backup 字段的值。
资源 URL
https://<NODE>:5444/backups/:config_script_base/:archive_id
认证
请求头中需要包含 VerticaAPIKey。
API 密钥必须具有受限 级别或更高级别的安全性。
参数
无。
示例请求
响应:
{
"archive_id": "v_vdb_bk_snapshot_20190304_204814",
"config_file": "/opt/vertica/config/fullbk.ini",
"objects": "",
"href": "/backups/fullbk/v_vdb_bk_snapshot_20190304_204814",
"exclude_patterns": "",
"epoch": "16",
"include_patterns": "",
"backup_type": "full",
"version": "v9.2.1-20190304",
"hosts": "v_vdb_bk_node0001(10.20.91.240),
v_vdb_bk_node0002(10.20.91.241),
v_vdb_bk_node0003(10.20.91.242),
v_vdb_bk_node0004(10.20.91.243),
v_vdb_bk_node0005(10.20.91.244)"
}
4 - POST restore/:archive_id
创建新的恢复作业,以从 :archive_id
所标识的备份存档恢复数据库。:archive_id
是 GET backups 命令返回的 backup 字段的值。
返回一个作业 ID,它可用于确定作业的状态。请参阅GET jobs。
资源 URL
https://<NODE>:5444/restore/:archive_id
认证
请求头中需要包含 VerticaAPIKey。
API 密钥必须具有受限 级别或更高级别的安全性。
参数
无。
示例请求
响应:
{
"id": "RestoreBackup-VMart-1404760113.71",
"url": "/jobs/RestoreBackup-VMart-1404760113.71"
}