Este conteúdo foi traduzido por máquina para sua conveniência e a Huawei Cloud não pode garantir que o conteúdo foi traduzido com precisão. Para exibir o conteúdo original, use o link no canto superior direito para mudar para a página em inglês.
Atualizado em 2024-09-29 GMT+08:00

Criação de uma instância de BD

Função

Esta API é usada para criar uma instância do GaussDB(for MySQL). Antes de chamar essa API:

Essa API estará indisponível em 31 de março de 2024.

URI

  • Formato de URI

    POST https://{endpoint}/mysql/v3/{project_id}/instances

  • Exemplo

    POST https://{endpoint}/mysql/v3/0483b6b16e954cb88930a360d2c4e663/instances

  • Descrição do parâmetro
    Tabela 1 Descrição do parâmetro

    Nome

    Obrigatório

    Descrição

    project_id

    Sim

    ID do projeto de um locatário em uma região.

    Para obter esse valor, consulte Obtenção de um ID de projeto.

Solicitação

Tabela 2 Descrição do parâmetro

Nome

Obrigatório

Tipo

Descrição

charge_info

Não

Object

Modo de cobrança, que é anual/mensal ou pagamento por uso (configuração padrão).

Para mais detalhes, consulte Tabela 3.

Observação:

Não é possível criar instâncias anuais/mensais numa DeC.

name

Sim

String

Nome da instância de BD.

Instâncias do mesmo tipo podem ter os mesmos nomes sob o mesmo locatário.

O valor consiste de 4 a 64 caracteres e começa com uma letra. Ele diferencia maiúsculas de minúsculas e contém apenas letras, dígitos, hifens (-) e sublinhados (_).

datastore

Sim

Object

Informações do banco de dados.

Para mais detalhes, consulte Tabela 4.

mode

Sim

String

Tipo de instância de BD, que não diferencia maiúsculas de minúsculas. Atualmente, apenas o tipo de cluster é suportado.

flavor_ref

Sim

String

Código de especificação.

Para mais detalhes, consulte Tabela 3.

vpc_id

Sim

String

ID de VPC Para obter esse valor, use um dos seguintes métodos:

  • Método 1: faça logon no console da VPC e visualize o ID da VPC na página de detalhes da VPC.
  • Método 2: consulte "Consulta de VPCs" na Referência de API da Virtual Private Cloud.

subnet_id

Sim

String

ID da rede. Para obter esse valor, use um dos seguintes métodos:

  • Método 1: faça logon no console da VPC e clique na sub-rede de destino na página Subnets. Você pode visualizar o ID da rede na página exibida.
  • Método 2: consulte "Consulta de sub-redes" na Referência de API da Virtual Private Cloud.

security_group_id

Não

String

ID do grupo de segurança.

Se a ACL da rede estiver ativada, esse parâmetro não poderá ser especificado. Se a ACL da rede estiver desativada, esse parâmetro será obrigatório.

  • Método 1: faça logon no console da VPC. Escolha Access Control > Security Groups no painel de navegação à esquerda. Na página exibida, clique no grupo de segurança de destino. Você pode visualizar o ID do grupo de segurança na página exibida.
  • Método 2: consulte "Consulta de grupos de segurança" na Referência de API da Virtual Private Cloud.

configuration_id

Não

String

ID do modelo de parâmetro.

password

Sim

String

Senha do banco de dados.

Valor válido:

A senha consiste de 8 a 32 caracteres e contém pelo menos três dos seguintes tipos: letras maiúsculas, letras minúsculas, dígitos e caracteres especiais (~!@#%^*-_=+?).

É aconselhável inserir uma senha forte para melhorar a segurança e evitar riscos de segurança, como quebra de força bruta. Se você digitar uma senha fraca, o sistema determinará automaticamente que a senha é inválida.

backup_strategy

Não

Object

Política de backup automatizado.

Para mais detalhes, consulte Tabela 5.

time_zone

Não

String

Fuso horário UTC.

  • Se esse parâmetro não for especificado, o UTC será usado por padrão.
  • Se este parâmetro for especificado, o valor varia de UTC-12:00 a UTC+12:00 na hora completa. Por exemplo, o parâmetro pode ser UTC+08:00 em vez de UTC+08:30.

availability_zone_mode

Sim

String

Tipo de AZ. Pode ser single ou multi.

master_availability_zone

Se availability_zone_mode for definido como multi, este parâmetro é obrigatório.

Se availability_zone_mode for definido como single, esse parâmetro não poderá ser especificado.

String

AZ primária.

slave_count

Sim

Integer

Número de réplicas de leitura. O valor é de 1 a 9. Uma instância contém até 15 réplicas de leitura.

region

Sim

String

ID da região.

O valor não pode ser vazio. Para obter esse valor, consulte Regiões e pontos de extremidade.

volume

Não

Object

Informação do volume. Este parâmetro é opcional durante a criação de instâncias anuais/mensais.

Para mais detalhes, consulte Tabela 6.

enterprise_project_id

Não

String

ID do projeto empresarial. Esse parâmetro é obrigatório quando o projeto empresarial está ativado e não pode ser especificado quando o projeto empresarial está desativado.

lower_case_table_names

Não

Integer

Se um nome de tabela do kernel diferencia maiúsculas de minúsculas. Se o valor for 1 (por padrão), o nome da tabela não diferencia maiúsculas de minúsculas. Se o valor for 0, o nome da tabela diferencia maiúsculas de minúsculas.

tags

Não

Array of objects

Lista de tags. As instâncias são criadas com base em chaves e valores de tags.

  • {key} indica a chave da tag. Deve ser único e não pode estar vazio.
  • {value} indica o valor da tag, que pode estar vazio.

Para criar instâncias com várias chaves e valores de tags, separe os pares chave-valor com vírgulas (,). Até 20 pares de chave-valor podem ser adicionados.

Para mais detalhes, consulte Tabela 7.

Tabela 3 Descrição da estrutura de dados do campo charge_info

Nome

Obrigatório

Tipo

Descrição

charge_mode

Sim

String

Modo de cobrança.

Valor válido:

  • prePaid: indica o modo de cobrança anual/mensal.
  • postPaid: indica o modo de cobrança de pagamento por uso.

period_type

Não

String

Período de assinatura.

Valor válido:

  • month: o serviço é assinado por mês.
  • year: o serviço é assinado por ano.
    NOTA:

    Este parâmetro é válido e obrigatório se charge_mode estiver definido como prePaid.

period_num

Não

Integer

Duração da assinatura. Este parâmetro é válido e obrigatório se charge_mode estiver definido como prePaid.

Valor válido:

  • Quando period_type é definido como month, o valor do parâmetro varia de 1 a 9.
  • Quando period_type é definido como year, o valor do parâmetro varia de 1 a 3.
Tabela 4 Descrição da estrutura de dados do campo datastore

Nome

Obrigatório

Tipo

Descrição

type

Sim

String

Mecanismo de BD. Atualmente, apenas o gaussdb-mysql é suportado.

version

Sim

String

Versão de BD.

Para obter detalhes sobre as versões de BD suportadas, consulte Consulta de informações de versão sobre um mecanismo de BD.

Tabela 5 Descrição da estrutura de dados do campo backup_strategy

Nome

Obrigatório

Tipo

Descrição

start_time

Sim

String

Hora de início do backup automatizado. O backup automatizado será acionado dentro de uma hora após o horário especificado por este parâmetro.

O valor não pode ser vazio. Deve ser um valor válido no formato "hh:mm-HH:MM". A hora atual está no formato UTC.

  • O valor de HH deve ser 1 maior que o valor de hh.
  • Os valores de mm e MM devem ser os mesmos e devem ser definidos como 00.

Exemplo de valor:

  • 21:00-22:00
Tabela 6 Descrição da estrutura de dados do campo volume

Nome

Obrigatório

Tipo

Descrição

size

Sim

Integer

Tamanho do disco. O valor padrão é 40 GB.

O valor varia de 40 GB a 128.000 GB e deve ser um múltiplo de 10.

Tabela 7 Descrição da estrutura de dados do campo tags

Nome

Obrigatório

Tipo

Descrição

key

Sim

String

Chave da tag. Contém um máximo de 36 caracteres Unicode.

O valor não pode ser uma cadeia vazia, um espaço ou deixado em branco.

Apenas letras maiúsculas, letras minúsculas, dígitos, hifens (-) e sublinhados (_) são permitidos.

value

Sim

String

Valor da tag. Contém um máximo de 43 caracteres Unicode.

Pode ser uma cadeia vazia.

Somente letras maiúsculas, letras minúsculas, dígitos, pontos (.), hifens (-) e sublinhados (_) são permitidos.

O valor de region no seguinte é usado como um exemplo.

  • Exemplo de solicitação
    {
    "charge_info":{
            "charge_mode":"postPaid"
        },
        "region":"xxx",
        "name":"gaussdb-2d34",
        "datastore":{
            "type":"gaussdb-mysql",
            "version":"8.0"
        },
        "mode":"Cluster",
        "flavor_ref":"gaussdb.mysql.large.x86.4",
        "vpc_id":"f7ee62e2-9705-4523-ba49-a85ea1a1fa87",
        "subnet_id":"140af7bf-a9da-4dcf-8837-34199fd6d186",
        "security_group_id":"c7f69884-fe2b-4630-8114-70a11499d902",
        "configuration_id":"43570e0de32e40c5a15f831aa5ce4176pr07",
        "password":"xxxx",
        "backup_strategy":{
            "start_time":"17:00-18:00"
        },
        "time_zone":"UTC+08:00",
        "availability_zone_mode":"multi",
        "master_availability_zone":"az1pod1",
        "slave_count":1,
        "enterprise_project_id":"0",
        "lower_case_table_names":1
    }

Resposta

  • Resposta normal
    Tabela 8 Descrição do parâmetro

    Nome

    Tipo

    Descrição

    instance

    Object

    Informações da instância.

    Para mais detalhes, consulte Tabela 9.

    job_id

    String

    ID da tarefa de criação da instância de BD.

    Esse parâmetro é retornado somente quando instâncias de BD de pagamento por uso são criadas.

    order_id

    String

    ID do pedido. Este parâmetro é retornado somente quando instâncias anuais/mensais são criadas.

    Tabela 9 Descrição da estrutura de dados do campo de instância

    Nome

    Tipo

    Descrição

    id

    String

    ID da instância de BD.

    name

    String

    Nome da instância de BD. Instâncias do mesmo tipo podem ter os mesmos nomes sob o mesmo locatário.

    O valor consiste de 4 a 64 caracteres e começa com uma letra. Não diferencia maiúsculas de minúsculas e contém apenas letras, dígitos, hifens (-) e sublinhados (_).

    status

    String

    Status da instância de BD.

    Esse parâmetro é retornado somente quando instâncias de BD de pagamento por uso são criadas.

    datastore

    Object

    Informações do banco de dados.

    Para mais detalhes, consulte Tabela 10.

    mode

    String

    Tipo de instância de BD. Atualmente, apenas o tipo de cluster é suportado.

    configuration_id

    String

    ID do modelo de parâmetro.

    port

    String

    Porta do banco de dados, que é a mesma do parâmetro de solicitação.

    backup_strategy

    Object

    Política de backup automatizado.

    Para mais detalhes, consulte Tabela 11.

    enterprise_project_id

    String

    ID do projeto empresarial, que é o mesmo que o parâmetro de solicitação.

    region

    String

    ID da região, que é o mesmo que o parâmetro de solicitação.

    availability_zone_mode

    String

    Tipo de AZ, que é o mesmo que o parâmetro de solicitação.

    master_ availability_zone

    String

    ID de AZ primária.

    vpc_id

    String

    ID de VPC, que é igual ao parâmetro de solicitação.

    security_group_id

    String

    ID do grupo de segurança, que é o mesmo que o parâmetro de solicitação.

    subnet_id

    String

    ID de sub-rede, que é o mesmo que o parâmetro de solicitação.

    flavor_ref

    String

    Código de especificação, que é o mesmo que o parâmetro de solicitação.

    Para mais detalhes, consulte Tabela 3.

    charge_info

    Object

    Modo de cobrança, que é anual/mensal ou pagamento por uso.

    Para mais detalhes, consulte Tabela 12.

    Tabela 10 Descrição da estrutura de dados do campo datastore

    Nome

    Tipo

    Descrição

    type

    String

    Mecanismo de BD

    version

    String

    Versão de BD.

    Tabela 11 Descrição da estrutura de dados do campo backup_strategy

    Nome

    Tipo

    Descrição

    start_time

    String

    Janela de tempo de backup. Os backups automatizados serão acionados durante a janela de tempo de backup.

    keep_days

    Integer

    Dias de retenção de backup.

    Tabela 12 Descrição da estrutura de dados do campo charge_info

    Nome

    Tipo

    Descrição

    charge_mode

    String

    Modo de cobrança, que é anual/mensal ou pagamento por uso.

    period_num

    Integer

    Duração da assinatura, que é calculada por mês.

    Este parâmetro é válido quando charge_mode é definido como prePaid (este parâmetro é válido apenas para instâncias anuais/mensais).

Os valores de region e master_availability_zone são usados como exemplos.

  • Exemplo de resposta normal
    {
        "instance":{
            "id":"5eebbb4c0f9f4a99b42ed1b6334569aain07",
            "name":"gaussdb-2d34",
            "status":"BUILD",
            "datastore":{
                "type":"gaussdb-mysql",
                "version":"8.0"
            },
            "mode":"Cluster",
            "configuration_id": "",
            "port":null,
            "backup_strategy":{
                "start_time":null,
                "keep_days":"7"
            },
            "enterprise_project_id": "0",
            "region":"aaa",
            "availability_zone_mode":"multi",
            "master_availability_zone":"aaa",
            "vpc_id":"f7ee62e2-9705-4523-ba49-a85ea1a1fa87",
            "security_group_id":"c7f69884-fe2b-4630-8114-70a11499d902",
            "subnet_id":"140af7bf-a9da-4dcf-8837-34199fd6d186"
            "charge_info":{
                "charge_mode":"postPaid"
            },
            "flavor_ref":"gaussdb.mysql.large.x86.4"
        },
        "job_id":"43672fe5-56bd-47f1-8fd1-595cded08a7c"
        }

Código de status

Para mais detalhes, consulte Códigos de status.

Código de erro

Para mais detalhes, consulte Códigos de erro.