更新时间:2022-04-12 GMT+08:00
分享

恢复到新实例

功能介绍

根据备份恢复新实例。

接口约束

  • 该接口只支持恢复到按需计费的实例。
  • 目标实例与源实例的数据库类型必须一致。
  • 根据时间点恢复到新实例目前有副本集实例和4.0版本的集群实例支持该功能。

调试

您可以在API Explorer中调试该接口。

URI

  • URI格式

    POST https://{Endpoint}/v3/{project_id}/instances

  • URI样例

    https://dds.cn-north-1.myhuaweicloud.com/v3/97b026aa9cc4417888c14c84a1ad9860/instances

  • 参数说明
    表1 参数说明

    名称

    是否必选

    描述

    project_id

    租户在某一region下的project ID。

请求消息

  • 参数说明
    表2 参数说明

    名称

    是否必选

    参数类型

    描述

    name

    String

    实例名称。用于表示实例的名称,允许和已有名称重复。

    • 实例名称长度在4个到64个字节之间,必须以字母或中文字开头,区分大小写,可以包含字母、数字、中划线、下划线或中文(一个中文字符占用3个字节),不能包含其他特殊字符。

    availability_zone

    String

    可用区ID。

    取值:非空,请参见地区和终端节点

    vpc_id

    String

    虚拟私有云ID。

    获取方法请参见《虚拟私有云API参考》中“VPC”的内容。

    取值:非空,字符长度校验,严格UUID正则校验。

    subnet_id

    String

    子网ID。

    获取方法请参见《虚拟私有云API参考》中“子网”的内容。

    security_group_id

    String

    指定实例所属的安全组ID。

    获取方法请参见《虚拟私有云API参考》中“安全组”的内容。

    password

    String

    数据库密码。

    取值范围:长度为8~32位,必须是大写字母(A~Z)、小写字母(a~z)、数字(0~9)、特殊字符~!@#%^*-_=+?的组合。

    建议您输入高强度密码,以提高安全性,防止出现密码被暴力破解等安全风险。

    不传该参数时,实例创建完成后,如需连接实例,请先为实例设置密码,具体请参见重置管理员密码

    disk_encryption_id

    String

    磁盘加密时的密钥ID,严格UUID正则校验。

    不传该参数时,表示不进行磁盘加密。

    flavor

    Array of objects

    实例规格详情。详情请参见表表4

    获取方法请参见查询数据库规格中参数的值。

    restore_point

    Object

    恢复到新实例备份信息详情。详情请参见表3

    backup_strategy

    Object

    高级备份策略。详情请参见表5

    enterprise_project_id

    String

    企业项目ID。

    • 对于未开通企业多项目服务的用户,不传该参数。
    • 对于已开通企业多项目服务的用户,不传该参数时,表示为default企业项目。

    获取方式请参见《企业管理API参考》的“查询企业项目列表”响应消息表“enterprise_project字段数据结构说明”的“id”。

    ssl_option

    String

    SSL开关选项。

    取值:

    • 取“0”,表示DDS实例默认不启用SSL连接。
    • 取“1”,表示DDS实例默认启用SSL连接。

    不传该参数时,默认启用SSL连接。

    dss_pool_id

    String

    Dec用户专属存储ID,默认为空。仅Dec用户支持该参数。

    server_group_policies

    Array of strings

    Dec用户云服务器组关联的策略名称列表。取值包括:

    • 取“anti-affinity”,表示DDS实例开启反亲和部署,反亲和部署是出于高可用性考虑,将您的Primary、Secondary和Hidden节点分别创建在不同的物理机上。

    DEC用户不传该参数时,默认不开启反亲和部署。仅DEC用户支持该参数。

    表3 restore_point字段数据结构说明

    名称

    是否必选

    参数类型

    描述

    instance_id

    String

    实例ID,可以调用“查询实例列表”接口获取。如果未申请实例,可以调用“创建实例”接口创建。

    • 当type为“backup”,为非必选。
    • 当type为“timestamp”,为必选。

    type

    String

    恢复方式,枚举值:

    • “backup”,表示使用备份文件恢复,按照此方式恢复时,当“type”字段为非必选时,“backup_id”必选。
    • “timestamp”,表示按时间点恢复,按照此方式恢复时,当“type”字段必选时,“restore_time”必选。

    backup_id

    String

    用于恢复的备份ID。当使用备份文件恢复时需要指定该参数。

    说明:

    当“type”字段为非必选时,“backup_id”必选。

    restore_time

    Integer

    恢复数据的时间点,格式为UNIX时间戳,单位是毫秒,时区为UTC。

    说明:

    当“type”字段必选时,“restore_time”必选。

    表4 flavor字段数据结构说明

    名称

    是否必选

    参数类型

    描述

    type

    String

    节点类型。

    取值:

    • 集群实例包含mongos、shard和config节点,各节点下该参数取值分别为“mongos”、“shard”和“config”。
    • 副本集实例下该参数取值为“replica”。
    • 单节点实例下该参数取值为“single”。

    num

    String

    节点数量。

    取值:

    • 集群实例下“shard”类型不传该参数。
    • 集群实例下“mongos”类型的节点数量可取2~32。
    • “config”类型的组数量只能取1。
    • “replica”类型的组数量只能取1。
    • “single”类型的节点数量只能取1。

    size

    String

    磁盘大小。

    取值:必须为10的整数倍。单位为GB。

    • 对于集群实例,shard组可取10GB~2000GB,并且大于等于原实例的磁盘大小,config组仅可取20GB。mongos节点不涉及选择磁盘,该参数无意义。
    • 对于副本集实例,可取10GB~3000GB,并且大于等于原实例的磁盘大小。
    • 对于单节点实例,可取10GB~1000GB,并且大于等于原实例的磁盘大小。

    spec_code

    String

    资源规格编码。获取方法请参见查询数据库规格中参数“spec_code”的值。

    表5 backup_strategy字段数据结构说明

    名称

    是否必选

    参数类型

    描述

    start_time

    String

    备份时间段。自动备份将在该时间段内触发。

    取值范围:非空,格式必须为hh:mm-HH:MM,且有效,当前时间指UTC时间。

    • HH取值必须比hh大1。
    • mm和MM取值必须相同,且取值必须为00。

    取值示例:

    23:00-00:00

    keep_days

    String

    指定已生成的备份文件可以保存的天数。

    取值范围:0~732。

    • 取0值,表示不设置自动备份策略。
    • 不传该参数,默认开启自动备份策略,备份文件默认保存7天。

    请求体样例中参数“region”和“availability_zone”的值为示例值。

  • 请求体样例

    集群根据备份文件恢复到新实例:

    { 
      "name": "test-cluster-01", 
      "availability_zone": "bbb", 
      "vpc_id": "674e9b42-cd8d-4d25-a2e6-5abcc565b961", 
      "subnet_id": "f1df08c5-71d1-406a-aff0-de435a51007b", 
      "security_group_id": "7aa51dbf-5b63-40db-9724-dad3c4828b58", 
      "password": "Test#%0_", 
      "restore_point": {
        "backup_id": "8f643d252d834a4c916b2db4322f99552734"
      },
      "flavor": [{ 
          "type": "mongos", 
          "num": 2, 
          "spec_code": "dds.mongodb.c3.medium.4.mongos" 
        }, 
        { 
          "type": "shard", 
          "size": 40,
          "spec_code": "dds.mongodb.c3.medium.4.shard" 
        }, 
        { 
          "type": "config", 
          "num": 1,
          "size": 20,
          "spec_code": "dds.mongodb.c3.large.2.config" 
        } 
      ], 
      "backup_strategy": { 
        "start_time": "23:00-00:00", 
        "keep_days": "8" 
      } 
    }

    副本集根据备份文件恢复到新实例:

    { 
      "name": "test-replicaset", 
      "availability_zone": "bbb", 
      "vpc_id": "674e9b42-cd8d-4d25-a2e6-5abcc565b961", 
      "subnet_id": "f1df08c5-71d1-406a-aff0-de435a51007b", 
      "security_group_id": "7aa51dbf-5b63-40db-9724-dad3c4828b58", 
      "password": "Test#%0_", 
    "restore_point": {
        "backup_id": "8f643d252d834a4c916b2db4322f99552734"
    },
      "flavor": [ 
        { 
          "type": "replica", 
          "num": 1,
          "spec_code": "dds.mongodb.s2.medium.4.repset" 
        } 
      ], 
      "backup_strategy": { 
        "start_time": "23:00-00:00", 
        "keep_days": "8" 
      } 
    }

    单节点根据备份文件恢复到新实例:

    {
      "name": "test-singlenode",
      "availability_zone": "bbb",
      "vpc_id": "674e9b42-cd8d-4d25-a2e6-5abcc565b961",
      "subnet_id": "f1df08c5-71d1-406a-aff0-de435a51007b",
      "security_group_id": "7aa51dbf-5b63-40db-9724-dad3c4828b58",
      "password": "Test#%0_",
      "restore_point": {
        "backup_id": "8f643d252d834a4c916b2db4322f99552734"
      },
      "flavor": [
        {
          "type": "single",
          "num": 1,
          "spec_code": "dds.mongodb.c3.medium.4.single"
        }
      ],
      "backup_strategy": {
        "start_time": "23:00-00:00",
        "keep_days": "8"
      }
    }

    副本集根据时间点恢复到新实例:

    {
      "name": "replica-liuyunj1",
      "availability_zone": "az1xahz",
      "vpc_id": "dcdadabc-efed-4518-8b34-4af66fcd97e7",
      "subnet_id": "4a9348f2-f232-4700-a440-2f1641d80960",
      "security_group_id": "c57b9db2-cccb-4c0d-b058-7ea51dda0c99",
      "flavor": [
        {
          "type": "replica",
          "num": 1,
          "size": 100,
          "spec_code": "dds.mongodb.c3.large.2.repset"
        }
      ],
      "backup_strategy": {
        "start_time": "08:00-09:00",
        "keep_days": "8"
      },
      "restore_point": {
        "instance_id": "d5833c2854a4486cb7960f829269e211in02",
        "type": "timestamp",
        "restore_time": 1607689584000
      },
      "ssl_option": "1"
    }

响应消息

  • 要素说明
    表6 要素说明

    名称

    参数类型

    描述

    id

    String

    实例ID。

    name

    String

    实例名称,与请求参数相同。

    datastore

    Object

    数据库信息,与请求参数相同。详情请参见表3

    created

    String

    创建时间为本地时间,格式为“yyyy-mm-dd hh:mm:ss”。

    status

    String

    实例状态,取值为“creating”。

    region

    String

    区域ID,与请求参数相同。

    availability_zone

    String

    可用区ID,与请求参数相同。

    vpc_id

    String

    虚拟私有云ID,与请求参数相同。

    subnet_id

    String

    子网ID,与请求参数相同。

    security_group_id

    String

    实例所属的安全组ID,与请求参数相同。

    disk_encryption_id

    String

    磁盘加密的密钥ID,与请求参数相同。

    mode

    String

    实例类型,与请求参数相同。

    flavor

    Array of objects

    实例规格详情,与请求参数相同。详情请参见表4

    backup_strategy

    Object

    高级备份策略,与请求参数相同。详情请参见表5

    enterprise_project_id

    String

    企业项目ID。取值为“0”,表示为default企业项目。

    dss_pool_id

    String

    Dec用户专属存储ID。

    job_id

    String

    创建实例的工作流ID。

    ssl_option

    String

    SSL开关选项,与请求参数相同。

    响应样例中参数“region”和“availability_zone”的值为示例值。

  • 响应样例

    集群实例:

    {  
        "id": "39b6a1a278844ac48119d86512e0000bin02", 
        "name": "test-cluster-01", 
        "datastore": { 
            "type": "DDS-Community", 
            "version": "3.4", 
            "storage_engine": "wiredTiger" 
        }, 
        "created": "2019-01-16 09:34:36", 
        "status": "creating", 
        "region": "aaa", 
        "availability_zone": "bbb", 
        "vpc_id": "674e9b42-cd8d-4d25-a2e6-5abcc565b961", 
        "subnet_id": "f1df08c5-71d1-406a-aff0-de435a51007b", 
        "security_group_id": "7aa51dbf-5b63-40db-9724-dad3c4828b58", 
        "disk_encryption_id": "", 
        "mode": "Sharding", 
        "flavor": [ 
            { 
                "type": "mongos", 
                "num": 2, 
                "spec_code": "dds.mongodb.c3.medium.4.mongos" 
            }, 
            { 
                "type": "shard", 
                "num": 2, 
                "spec_code": "dds.mongodb.c3.medium.4.shard", 
                "size": 20 
            }, 
            { 
                "type": "config", 
                "num": 1, 
                "spec_code": "dds.mongodb.c3.large.2.config", 
                "size": 20 
            } 
        ], 
        "backup_strategy": { 
            "start_time": "23:00-00:00", 
            "keep_days": "8" 
        }, 
        "enterprise_project_id": "", 
        "ssl_option":"1",
        "job_id": "c010abd0-48cf-4fa8-8cbc-090f093eaa2f" 
    }

    副本集实例:

    { 
        "id": "46dfadfd2b674585a430217f23606cd7in02", 
        "name": "test-replicaset", 
        "datastore": { 
            "type": "DDS-Community", 
            "version": "3.4", 
            "storage_engine": "wiredTiger" 
        }, 
        "created": "2019-01-16 09:33:08", 
        "status": "creating", 
        "region": "aaa", 
        "availability_zone": "bbb", 
        "vpc_id": "674e9b42-cd8d-4d25-a2e6-5abcc565b961", 
        "subnet_id": "f1df08c5-71d1-406a-aff0-de435a51007b", 
        "security_group_id": "7aa51dbf-5b63-40db-9724-dad3c4828b58", 
        "disk_encryption_id": "", 
        "mode": "ReplicaSet", 
        "flavor": [ 
            { 
                "type": "replica", 
                "num": 1, 
                "spec_code": "dds.mongodb.s2.medium.4.repset", 
                "size": 30 
            } 
        ], 
        "backup_strategy": { 
            "start_time": "23:00-00:00", 
            "keep_days": "7" 
        }, 
        "enterprise_project_id": "", 
        "ssl_option":"1",
        "job_id": "2408417d-fd4b-40ae-bec6-e09ce594eb5f" 
    }

    单节点实例:

    {  
        "id": "520c58ba00a3497e97ce0b9604874dd6in02", 
        "name": "test-singlenode", 
        "datastore": { 
            "type": "DDS-Community", 
            "version": "3.4", 
            "storage_engine": "wiredTiger" 
        }, 
        "created": "2019-01-15 12:08:11", 
        "status": "creating", 
        "region": "aaa", 
        "availability_zone": "bbb", 
        "vpc_id": "674e9b42-cd8d-4d25-a2e6-5abcc565b961", 
        "subnet_id": "f1df08c5-71d1-406a-aff0-de435a51007b", 
        "security_group_id": "7aa51dbf-5b63-40db-9724-dad3c4828b58", 
        "disk_encryption_id": "", 
        "mode": "Single", 
        "flavor": [ 
            { 
                "type": "single", 
                "num": 1, 
                "spec_code": "dds.mongodb.c3.medium.4.single", 
                "size": 30 
            } 
        ], 
        "backup_strategy": { 
            "start_time": "23:00-00:00", 
            "keep_days": "7" 
        }, 
        "enterprise_project_id": "", 
        "ssl_option":"1",
        "job_id": "46b65a13-3d52-4c58-a29b-4085d563dc9b" 
    }

状态码

详情请参见状态码

错误码

详情请参见错误码

分享:

    相关文档

    相关产品

关闭导读