更新时间:2022-08-17 GMT+08:00

恢复到新实例

功能介绍

根据备份恢复新实例。

接口约束

  • 目标实例与源实例的数据库类型必须一致。

URI

  • URI格式

    POST /v3/{project_id}/instances

  • 参数说明
    表1 参数说明

    名称

    是否必选

    描述

    project_id

    租户在某一region下的project ID。

请求消息

  • 参数说明
    表2 参数说明

    名称

    是否必选

    参数类型

    描述

    name

    String

    实例名称。用于表示实例的名称,同一租户下,同类型的实例名唯一。

    取值范围:长度为4~64位,必须以字母开头(A~Z或a~z),区分大小写,可以包含字母、数字(0~9)、中划线(-)或者下划线(_),不能包含其他特殊字符。

    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企业项目。

    ssl_option

    String

    SSL开关选项。

    取值:

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

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

    表3 restore_point字段数据结构说明

    名称

    是否必选

    参数类型

    描述

    backup_id

    String

    用于恢复的备份ID。

    表4 flavor字段数据结构说明

    名称

    是否必选

    参数类型

    描述

    type

    String

    节点类型。

    取值:

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

    num

    Integer

    节点数量。

    取值:

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

    size

    对于除mongos外的其他节点,该参数可选,mongos节点下,该参数无意义。

    Integer

    磁盘大小。

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

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

    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”的值为示例值。

  • 请求头
    POST https://DDS的Endpoint/v3/{project_id}/instances
  • 请求体样例

    集群备份恢复到新实例:

    { 
      "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.c3.medium.4.mongos" 
        }, 
        { 
          "type": "shard", 
          "size": 40,
          "spec_code": "dds.c3.medium.4.shard" 
        }, 
        { 
          "type": "config", 
          "num": 1,
          "size": 20,
          "spec_code": "dds.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.s2.medium.4.shard" 
        } 
      ], 
      "backup_strategy": { 
        "start_time": "23:00-00:00", 
        "keep_days": "8" 
      } 
    }

响应消息

  • 要素说明
    表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企业项目。

    job_id

    String

    创建实例的工作流ID。

    响应样例中参数“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.c3.medium.4.mongos" 
            }, 
            { 
                "type": "shard", 
                "num": 2, 
                "spec_code": "dds.c3.medium.4.shard", 
                "size": 20 
            }, 
            { 
                "type": "config", 
                "num": 1, 
                "spec_code": "dds.c3.large.2.config", 
                "size": 20 
            } 
        ], 
        "backup_strategy": { 
            "start_time": "23:00-00:00", 
            "keep_days": "8" 
        }, 
        "enterprise_project_id": "", 
        "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.s2.medium.4.shard", 
                "size": 30 
            } 
        ], 
        "backup_strategy": { 
            "start_time": "23:00-00:00", 
            "keep_days": "7" 
        }, 
        "enterprise_project_id": "", 
        "job_id": "2408417d-fd4b-40ae-bec6-e09ce594eb5f" 
    }

状态码

详情请参见状态码

错误码

详情请参见错误码