Estos contenidos se han traducido de forma automática para su comodidad, pero Huawei Cloud no garantiza la exactitud de estos. Para consultar los contenidos originales, acceda a la versión en inglés.
Actualización más reciente 2022-11-07 GMT+08:00

Restauración de datos en una nueva instancia de base de datos

Función

Esta API se utiliza para restaurar una copia de respaldo en una nueva instancia de base de datos.

Restricciones

  • La nueva instancia de base de datos debe ser una instancia de base de datos de pago por uso.
  • El tipo de base de datos de la instancia de base de datos de destino debe ser el mismo que el de la instancia de base de datos de origen.
  • Actualmente, solo se pueden restaurar instancias de conjuntos de réplicas e instancias de clúster 4.0 a una nueva instancia y a cualquier momento.

Depuración

Puedes depurar esta API en API Explorer.

URI

  • Formato URI

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

  • Ejemplo

    https://dds.ap-southeast-1.myhuaweicloud.com/v3/97b026aa9cc4417888c14c84a1ad9860/instances

  • Descripción del parámetro
    Tabla 1 Descripción del parámetro

    Nombre

    Obligatorio

    Descripción

    project_id

    Especifica el ID de proyecto de un inquilino en una región.

Solicitudes

  • Descripción del parámetro
    Tabla 2 Descripción del parámetro

    Nombre

    Obligatorio

    Tipo

    Descripción

    name

    String

    Especifica el nombre de instancia de base de datos. El nombre de instancia puede ser el mismo que un nombre de instancia existente.

    • El nombre de instancia debe contener entre 4 y 64 caracteres y debe comenzar con una letra. Es sensible a mayúsculas y minúsculas y puede contener letras, dígitos, guiones (-) y guiones bajos (_). No puede contener otros caracteres especiales.

    availability_zone

    String

    Especifica el ID de AZ.

    El valor no puede estar vacío. Para obtener más información sobre cómo obtener este valor de parámetro, consulte Regiones y puntos de conexión.

    vpc_id

    String

    Especifica el ID de VPC.

    Para obtener más información sobre cómo obtener este valor de parámetro, consulte Virtual Private Cloud en la Referencia de la API de Virtual Private Cloud.

    El valor no puede estar vacío. La longitud de la cadena y si la cadena que cumple con las reglas de expresión regular UUID se verifican.

    subnet_id

    String

    Especifica el ID de subred.

    Para obtener más información sobre cómo obtener este valor de parámetro, consulte la sección Subred de la Referencia de la API de Virtual Private Cloud.

    security_group_id

    String

    Especifica el ID del grupo de seguridad al que pertenece una instancia de base de datos especificada.

    Para obtener más información sobre cómo obtener este valor de parámetro, consulte la sección Grupo de seguridad en la Referencia de la API de Virtual Private Cloud.

    password

    No

    String

    Especifica la contraseña de la base de datos.

    El valor debe tener una longitud de 8 a 32 caracteres y contener letras mayúsculas (de A a Z), minúsculas (de A a Z), dígitos (0 a 9) y caracteres especiales, como ~!@#%^*-_=+?

    Ingrese una contraseña segura para mejorar la seguridad, evitando riesgos de seguridad como el agrietamiento por fuerza bruta.

    Si este parámetro no se transfiere, establezca una contraseña para la instancia antes de conectarse a la instancia. Para obtener más información, consulte Restablecer la contraseña del administrador.

    disk_encryption_id

    No

    String

    Especifica la ID de clave utilizado para el cifrado de disco. La cadena debe cumplir con las reglas de expresión regular UUID.

    Si este parámetro no se transfiere, no se realiza el cifrado del disco.

    flavor

    Array of objects

    Especifica las especificaciones de instancia. Para obtener más información, consulte Tabla 4.

    Para obtener más información sobre cómo obtener el valor, consulte el valor del parámetro en Consulta de especificaciones de base de datos.

    restore_point

    Object

    Especifica los detalles sobre la copia de respaldo que se va a restaurar en una nueva instancia de base de datos. Para obtener más información, consulte Tabla 3.

    backup_strategy

    No

    Object

    Especifica la política de copia de respaldo avanzada. Para obtener más información, consulte Tabla 5.

    enterprise_project_id

    No

    String

    Especifica el ID del proyecto de empresa.

    • Este parámetro no se transfiere a los usuarios que no han habilitado el servicio multiproyecto de empresa.
    • Si este parámetro no se transfiere para un usuario que ha habilitado el servicio de varios proyectos de empresa, el valor es el proyecto de empresa predeterminado.

    ssl_option

    No

    String

    Especifica si habilitar o deshabilitar SSL.

    Valores válidos:

    • El valor 0 indica que SSL está deshabilitado de forma predeterminada.
    • El valor 1 indica que SSL está habilitado de forma predeterminada.

    Si este parámetro no se transfiere, SSL está habilitado de forma predeterminada.

    dss_pool_id

    No

    String

    Especifica el ID del grupo de almacenamiento DSS del usuario DeC. El valor se deja en blanco de forma predeterminada. Sólo los usuarios de DeC pueden establecer este parámetro.

    server_group_policies

    No

    Array of strings

    Especifica los nombres de las políticas asociadas al grupo ECS del usuario DeC. Los valores disponibles incluyen:

    • anti-affinity indica que la implementación anti-afinidad está habilitada para la instancia DDS. Para garantizar la alta disponibilidad, los nodos primario, secundario y oculto se crean en diferentes máquinas físicas.

    Si este parámetro no se transfiere para los usuarios de DeC, la implementación antiafinidad está deshabilitada de forma predeterminada. Sólo los usuarios de DeC pueden establecer este parámetro.

    Tabla 3 descripción de la estructura de datos del campo de restore_point

    Nombre

    Obligatorio

    Tipo

    Descripción

    instance_id

    No

    String

    Especifica el ID de instancia, que se puede obtener llamando a la API para consultar instancias. Si no tiene una instancia, puedes llamar a API utilizada para crear una instancia.

    • Este parámetro es opcional cuando type se establece como backup.
    • Este parámetro es obligatorio cuando type se establece en timestamp.

    type

    No

    String

    Especifica el modo de recuperación. Los valores enumerados son los siguientes:

    • backup: indica la restauración de archivos de copia de respaldo. En este modo, backup_id es obligatorio cuando type es opcional.
    • timestamp: indica la restauración de un punto en el tiempo. En este modo, restore_time es obligatorio cuando type es obligatorio.

    backup_id

    No

    String

    Especifica el ID de la copia de respaldo que se va a restaurar. Este parámetro debe especificarse cuando se utiliza el archivo de copia de respaldo para la restauración.

    NOTA:

    Cuando el type no es obligatorio, backup_id es obligatorio.

    restore_time

    No

    Integer

    Especifica el punto de tiempo de restauración de datos en la marca de tiempo de UNIX. La unidad es de milisegundos y la zona horaria es UTC.

    NOTA:

    Cuando type es obligatorio, restore_time es obligatorio.

    Tabla 4 descripción de la estructura de datos de campo de variante

    Nombre

    Obligatorio

    Tipo

    Descripción

    type

    String

    Especifica el tipo de nodo.

    Valores válidos:

    • Para una instancia de clúster, el valor puede ser mongos, shard o config.
    • Para una instancia de conjunto de réplicas, el valor es replica.
    • Para una instancia de nodo único, el valor es single.

    Indicates the number

    String

    Especifica la cantidad de nodo.

    Valores válidos:

    • En una instancia de clúster, el número de nodos mongos oscila entre 2 y 32.
    • config: El valor es 1.
    • replica: el valor es 1.
    • single: El valor es 1.

    size

    No

    String

    Especifica el tamaño del disco.

    El valor debe ser un múltiplo de 10. La unidad es GB.

    • En una instancia de clúster, el tamaño del shard oscila entre 10 GB y 2000 GB y debe ser mayor o igual que el tamaño del disco de la instancia original. El tamaño de configuración solo puede ser de 20 GB. Este parámetro no es válido para los nodos mongos. Por lo tanto, no es necesario especificar el espacio de almacenamiento para los nodos mongos.
    • En una instancia de conjunto de réplicas, el tamaño del disco oscila entre 10 GB y 3000 GB y debe ser mayor o igual que el tamaño del disco de la instancia original.
    • En una instancia de nodo único, el tamaño del disco oscila entre 10 GB y 1000 GB y debe ser mayor o igual que el tamaño del disco de la instancia original.

    spec_code

    String

    Especifica el código de especificación de recurso. Para obtener más información sobre cómo obtener el valor, consulte el valor del parámetro en Consulta de especificaciones de base de datos.

    Tabla 5 descripción de la estructura de datos del campo backup_strategy

    Nombre

    Obligatorio

    Tipo

    Descripción

    start_time

    String

    Especifica la ventana de tiempo de copia de respaldo. Las copias de respaldo automatizadas se activarán durante la ventana de tiempo de copia de respaldo.

    El valor no puede estar vacío. Debe ser un valor válido en el formato "hh:mm-HH:MM". La hora actual está en el formato UTC.

    • El valor HH debe ser 1 mayor que el valor hh.
    • Los valores de mm y MM deben ser los mismos y deben establecerse en 00

    Valor de ejemplo:

    23:00-00:00

    keep_days

    No

    String

    Especifica el número de días para conservar los archivos de copia de respaldo generados.

    El intervalo de valores es de 0 a 732.

    • Si este parámetro se establece en 0, la política de copia de respaldo automatizada no se establece.
    • Si este parámetro no se transfiere, la política de copia de respaldo automatizada está habilitada de forma predeterminada. Los archivos de copia de respaldo se almacenan durante siete días de forma predeterminada.

    Los valores de region y availability_zone se usan como ejemplos.

  • Ejemplo de solicitud

    Restauración de una copia de respaldo en una nueva instancia de clúster:

    { 
      "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" 
      } 
    }

    Restoring a backup to a new replica set instance:

    { 
      "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" 
      } 
    }

    Restoring a backup to a new single node instance:

    {
      "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"
      }
    }

    Restauración de una copia de respaldo en una nueva instancia de conjunto de réplicas en un momento determinado:

    {
      "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"
    }

Respuestas

  • Descripción del parámetro
    Tabla 6 Descripción del parámetro

    Nombre

    Tipo

    Descripción

    id

    String

    Indica el ID de instancia de base de datos,

    name

    String

    que es lo mismo que el parámetro de solicitud.

    datastore

    Object

    Indica la información de la base de datos, que es la misma que el parámetro de solicitud. Para obtener más información, consulte Tabla 3.

    created

    String

    Indica la hora de creación en el siguiente formato: aaaa-mm-dd hh:mm:ss.

    status

    String

    Indica el estado de la instancia de base de datos. El valor está creating.

    region

    String

    Indica el ID de región, que es el mismo que el parámetro de solicitud.

    availability_zone

    String

    Indica el ID de AZ, que es el mismo que el parámetro de solicitud.

    vpc_id

    String

    Indica la ID de VPC, que es el mismo que el parámetro de solicitud.

    subnet_id

    String

    Indica la ID de subred, que es el mismo que el parámetro de solicitud.

    security_group_id

    String

    Indica la ID del grupo de seguridad al que pertenece la instancia, que es el mismo que el parámetro de solicitud.

    disk_encryption_id

    String

    Indica la ID de la clave de cifrado del disco, que es el mismo que el parámetro de solicitud.

    mode

    String

    Indica el tipo de instancia, que es el mismo que el parámetro de solicitud.

    flavor

    Array of objects

    Indica la especificación de instancia, que es la misma que el parámetro de solicitud. Para obtener más información, consulte Tabla 4.

    backup_strategy

    Object

    Indica la política de copia de respaldo avanzada, que es la misma que el parámetro de solicitud. Para obtener más información, consulte Tabla 5.

    enterprise_project_id

    String

    Indica el ID del proyecto de empresa. Si el valor es 0, el recurso pertenece al proyecto de empresa predeterminado.

    dss_pool_id

    String

    Indica el ID del grupo de almacenamiento DSS del usuario DeC.

    job_id

    String

    Indica el ID del flujo de trabajo para crear una instancia de base de datos.

    ssl_option

    String

    Indica si se debe habilitar SSL, que funciona igual que el parámetro de solicitud.

    Los valores de region y availability_zone se usan como ejemplos.

  • Ejemplo de respuesta

    Instancia de clúster:

    {  
        "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" 
    }

    Instancia de conjunto de réplicas:

    { 
        "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" 
    }

    Instancia de nodo único:

    {  
        "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" 
    }

Código de estado

Para obtener más información, consulte Código de estado.

Código de error

Para obtener más información, consulte Código de error.