Todos os produtos
Search
Central de documentação

Data Management:Alteração de dados padrão

Última atualização: Jun 27, 2026

O recurso de alteração de dados padrão no Data Management Service (DMS) permite executar instruções SQL para modificar dados em um banco de dados. Execute instruções como INSERT, UPDATE, DELETE e TRUNCATE imediatamente ou de forma agendada. Este tópico descreve como enviar um ticket de alteração de dados padrão.

Visão geral da operação

  1. Configurar e enviar um ticket de alteração de dados padrão

    Selecione o banco de dados ou a instância que deseja alterar. Insira as instruções SQL para a alteração ou carregue um anexo SQL.

  2. Pré-verificação

    Durante a fase de pré-verificação, o DMS valida as instruções SQL enviadas. O sistema verifica se o tipo de SQL é válido para uma alteração de dados padrão e se você possui as permissões necessárias.

  3. Aprovar o ticket

    Na fase de aprovação, o DMS analisa se as instruções SQL afetarão o desempenho do banco de dados. O sistema também verifica se o usuário que enviou o ticket tem autorização para executar essas instruções.

  4. Executar a alteração de dados

    O sistema executa as instruções SQL enviadas para a alteração. Caso a alteração esteja incorreta ou seja necessário reverter as instruções SQL por motivos de negócios, crie um ticket de reversão no DMS. Isso ajuda a restaurar rapidamente os dados originais após a conclusão da alteração.

Pré-requisitos

O modo de controle da instância deve ser Stable Change ou Security Collaboration. Para mais informações, consulte Modos de controle.

Observações

  • Feche um ticket independentemente do status de aprovação. Essa ação evita a execução acidental de uma tarefa após a aprovação do ticket.

  • Gerencie alterações de dados no ambiente de staging por meio de tickets. Os tickets oferecem salvaguardas como backups de dados e verificações de contagem de linhas. Se uma operação não produzir o resultado esperado, restaure os dados rapidamente.

    Nota

    Caso a aprovação de tickets possa afetar a eficiência do desenvolvimento, configure definições sem aprovação. Para mais informações, consulte Alteração de SQL.

  • Se você configurou bancos de dados lógicos, tabelas lógicas e algoritmos de roteamento, envie um único ticket para alterações de sharding. Não é necessário enviar tickets separados para cada banco de dados e tabela físicos.

    • Ao utilizar um algoritmo de roteamento com uma condição de atualização que inclua um campo de roteamento, o sistema roteia a instrução automaticamente para o banco de dados e a tabela físicos corretos para execução.

    • A instrução SQL é executada em cada shard sequencialmente nos seguintes cenários, o que pode aumentar o tempo de execução: nenhum algoritmo de roteamento configurado, a condição de alteração não inclui um campo de roteamento, ou o tipo/definição de estrutura do campo de roteamento está incorreto.

  • O DMS gera automaticamente um anexo de script de backup apenas antes de executar instruções UPDATE ou DELETE.

Procedimento

Etapa 1: Configurar e enviar o ticket

  1. Faça login no DMS 5.0.

  2. Passe o ponteiro sobre o ícone 2023-01-28_15-57-17.png no canto superior esquerdo do console do DMS e escolha All Features > Database Development > Data Change > Normal Data Modify.

    Nota

    Se estiver usando o console do DMS no modo normal, escolha Database Development > Data Change > Normal Data Modify na barra de navegação superior.

  3. Na página Data Change Ticket Request, configure os parâmetros do ticket. A tabela a seguir descreve alguns desses parâmetros.

    Nota
    • O exemplo abaixo mostra como configurar parâmetros para uma instância no modo Security Collaboration. Os parâmetros podem variar se você selecionar uma instância no modo Stable Change.

    • O recurso para alterar instâncias de fonte de dados está sendo implementado gradualmente.

    Item de configuração

    Obrigatório

    Descrição

    Change Target

    Sim

    Selecione Database ou Data Source Instance.

    Nota

    Atualmente, só é possível selecionar instâncias MySQL dos seguintes tipos para alterações de instância de fonte de dados: RDS MySQL, PolarDB for MySQL e AnalyticDB for MySQL.

    Database ou Data Source Instance

    Sim

    Pesquise e selecione um banco de dados ou instância para o qual você tenha permissões de alteração.

    Nota

    No momento, é possível selecionar apenas uma instância para alteração de instância de fonte de dados.

    Reason Category

    Sim

    Escolha um motivo para a alteração de dados a fim de facilitar a localização posterior.

    Nota

    Os administradores podem configurar a lista de categorias de motivos na seção Operations Management > Configuration Management. Para mais informações, consulte Gerenciamento de configurações.

    Business Background

    Sim

    Forneça uma descrição detalhada do motivo ou objetivo da alteração para reduzir a sobrecarga de comunicação.

    Execution Method

    Sim

    Defina um método de execução para o ticket:

    • Após a aprovação, o solicitante executa a operação.

    • Execução automática após a aprovação.

    • Execução pelo último aprovador.

    Nota

    Administradores podem modificar a lista de métodos de execução na seção Operations Management > Configuration Management. Para mais informações, consulte Gerenciamento de configurações.

    Affected Rows

    Sim

    Estime o número de linhas de dados que esta alteração afetará.

    Change SQL

    Sim

    Escolha entre Text ou Attachment.

    SQL Text

    Sim

    Este item de configuração aparece somente se você definir Change SQL como Text. Na caixa de texto SQL, insira as instruções SQL prontas para execução direta.

    Nota
    • Separe múltiplas instruções SQL com ponto e vírgula (;).

    • Se o alvo da alteração for uma instância, adicione o nome do banco de dados antes de cada nome de tabela nas instruções SQL. Utilize o formato ${dbName}.${tableName}.

    • Ao enviar o ticket, o sistema verifica automaticamente a sintaxe do SQL. Se a sintaxe estiver incorreta, o envio será bloqueado.

    Attachment

    Sim

    Este item de configuração aparece somente se você definir Change SQL como Attachment. Carregue o anexo SQL para a alteração.

    Nota

    O anexo pode ser um arquivo .txt, .zip ou .sql. O tamanho máximo do arquivo é de 15 MB.

    Rollback SQL

    Não

    Escolha entre Text ou Attachment.

    Nota

    O DMS preenche automaticamente as informações de SQL de reversão ao criar um ticket de reversão apenas se você inserir o SQL de reversão ou carregar um arquivo de reversão. Caso contrário, insira as informações manualmente.

    SQL Text

    Não

    Este item de configuração aparece somente se você definir Rollback SQL como Text. Insira as instruções SQL de reversão. O SQL de reversão é o script inverso do SQL de alteração.

    Attachment

    Não

    Este item de configuração aparece somente se você definir Rollback SQL como Attachment. Clique em Upload File para carregar o anexo de SQL de reversão.

    Nota

    O anexo pode ser um arquivo .txt, .zip ou .sql. O tamanho máximo do arquivo é de 15 MB.

    Stakeholders

    Não

    Os stakeholders especificados podem visualizar o ticket e colaborar nele. Usuários que não são stakeholders não conseguem visualizar o ticket, exceto administradores e DBAs.

    Ticket Attachment

    Não

    Carregue um anexo para fornecer informações adicionais sobre o ticket atual.

  4. Clique em Submit Request.

Etapa 2: Pré-verificar o SQL

Após o envio do ticket, o sistema realiza automaticamente uma pré-verificação. Se a pré-verificação falhar, modifique as instruções SQL conforme a mensagem exibida e tente novamente.

Quando a pré-verificação for aprovada, o status de cada item de verificação (SQL Splitting, Type Check, Permission Check, SQL Review e Check Scanned Rows) será Passed. As Affected Rows também serão exibidas. O número real de linhas afetadas depende do comportamento de execução do SQL.

Etapa 3: Aprovar o ticket

Após a aprovação na pré-verificação, clique em Submit for Approval. Na caixa de diálogo Notice, clique em OK.

Nota

O aprovador no modelo de aprovação padrão para alterações de dados é um DBA. Para alterar o modelo de aprovação padrão, consulte Modificar o modelo de aprovação padrão.

A caixa de diálogo Notice exibe informações de validação, como o número de bancos de dados físicos, a quantidade de instruções SQL e o número estimado de linhas afetadas. Se o número de linhas afetadas verificado pelo sistema for diferente do número informado, uma mensagem de aviso em vermelho aparecerá. Confirme as informações antes de enviar o ticket.

Etapa 4: Executar a alteração

Importante

Sempre que possível, execute alterações fora dos horários de pico.

  1. Após a aprovação do ticket, clique em Execute Change. Na caixa de diálogo Task Settings, defina os parâmetros de execução da tarefa e clique em Execute.

    Nota
    • Se, ao criar o ticket, você definiu Execution Method como Execute automatically after approval, o sistema ignora esta etapa.

    • Ao reiniciar uma tarefa pausada, o script retoma a execução do ponto onde foi interrompido.

    Item de configuração

    Descrição

    Execution Policy

    Selecione uma política de execução:

    • Execute Immediately: A tarefa inicia imediatamente após você clicar em Execute.

    • Scheduled Execution: Especifique um horário de início para a tarefa. Por exemplo, execute a tarefa às 00:00:00 de 22 de maio de 2024.

    Nota

    O horário real de execução de uma tarefa agendada pode ter uma margem de erro de ±1 minuto.

    Specify End Time

    Defina um horário de término para a tarefa. Se a tarefa não for concluída até o horário especificado, o sistema interrompe a execução das tarefas SQL restantes. Isso evita que tarefas sejam executadas durante horários de pico, impactando as operações de negócios.

    Nota

    O horário real de término da tarefa pode ter uma margem de erro de ±1 minuto.

    Enable Global Transaction

    Indique se deseja ativar transações globais. Este recurso está desativado por padrão.

    • Ativar: Se a execução falhar, todas as alterações serão revertidas. Aplica-se apenas a instruções DML, não a instruções DDL.

    • Desativar: As tarefas SQL são enviadas uma a uma. Se uma tarefa falhar, a execução é interrompida, mas nenhuma alteração é revertida.

    Enable Backup

    Indique se deseja ativar backups. Este recurso está ativado por padrão. Ao ativá-lo, utilize o arquivo de backup para restaurar dados rapidamente posteriormente.

    Nota
    • O backup de dados é suportado apenas na execução de instruções UPDATE e DELETE.

    • Não há suporte para backup de dados no MongoDB e Redis.

    • Ativar: Antes de executar instruções UPDATE ou DELETE, o sistema gera automaticamente um anexo de script de backup.

      • Para bancos de dados MySQL ou MariaDB, uma instrução de backup REPLACE INTO é gerada.

        Nota

        MySQL inclui: RDS MySQL, PolarDB for MySQL, PolarDB-X e outras fontes MySQL.

      • Para bancos de dados com motores diferentes de MySQL ou MariaDB, uma instrução de backup INSERT é gerada.

    • Desativar: Nenhum anexo de backup é gerado.

    Enable Primary/Standby Check

    Ao ativar a verificação primária/standby para o banco de dados, garante-se a sincronização de dados em tempo real entre as instâncias primária e standby. Isso melhora a alta disponibilidade do banco de dados e a recuperação rápida de desastres.

    Grayscale Type

    Política para execução de instruções SQL em lotes.

    • No Grayscale: O DMS executa automaticamente todas as instruções SQL da tarefa.

    • Pause after the first SQL statement succeeds: Após a execução bem-sucedida da primeira instrução SQL, o DMS pausa automaticamente a execução. Para continuar, clique em Retry. As instruções SQL restantes serão executadas de uma vez, sem novas pausas.

    • Pause after each SQL statement succeeds: A execução é pausada após cada instrução SQL. Clique manualmente em Retry para executar a próxima instrução SQL.

    Nota

    O módulo Security Rules, especificamente a seção SQL Execution Control, monitora a execução de tarefas SQL. Isso inclui mecanismos como tempo limite de bloqueio do banco de dados antes da execução do SQL, verificações de carga do banco de dados e políticas de espera após a execução do SQL. Para modificar as configurações padrão dos pontos de detecção, consulte Configurar controle de execução de SQL.

    • Após a execução bem-sucedida do ticket, na coluna Actions, clique em Details para visualizar detalhes como status da execução, número de execuções, quantidade de linhas afetadas, script executado e logs.

    • Com o ticket executado com sucesso, acesse a janela SQL do banco de dados alvo para verificar se a alteração de dados atende às suas expectativas.

  2. Opcional: Crie um ticket de reversão para restaurar rapidamente os dados originais.

    Caso a alteração de dados não atenda às expectativas, crie um ticket de reversão ou envie manualmente um ticket de alteração de dados padrão para restaurar rapidamente os dados originais. As etapas a seguir mostram como criar um ticket de reversão:

    1. Na área Execution do ticket, clique em Generate Rollback Ticket à direita da tarefa alvo.

    2. Selecione uma Source de reversão e clique em OK. Há suporte para as três fontes de reversão a seguir:

      • Texto de reversão: O texto de reversão inserido durante a configuração do ticket.

      • Anexo de reversão: O anexo de reversão carregado durante a configuração do ticket.

      • Arquivo de backup: O anexo de backup gerado durante a execução do ticket.

        Nota

        Para restaurar os dados originais usando um arquivo de backup, ative os backups antes de executar a alteração.

    3. (Opcional): Modifique o texto de reversão, o anexo ou o arquivo de backup conforme necessário.

      • Texto de reversão: Edite-o diretamente na caixa de texto SQL.

      • Anexo de reversão ou arquivo de backup: Baixe o anexo para o seu computador local, modifique-o e carregue-o novamente no ticket de reversão.

    4. Após confirmar que as informações de reversão estão corretas, clique em Submit Request. O fluxo subsequente do ticket é o mesmo de um ticket de alteração de dados padrão.

  3. Baixe o arquivo de backup.

    Baixe o arquivo de backup para salvá-lo ou modificá-lo antes de carregá-lo no DMS.

    1. Na coluna Actions, clique em Download Backup. O arquivo de backup contém as seguintes partes principais:

      • A instrução SQL original da alteração.

      • A instrução SQL de consulta para a alteração de dados.

      • O SQL de backup da alteração de dados.

      Por exemplo:

      /*
      [Database]:   rds@rm-bp144d5ky4l4rli0417****.mysql.rds.aliyuncs.com:3306[rds mysql]
      */
      /*
      [SQL]:
      UPDATE t_order
      SET product_id = 88
      WHERE id = 10054
      [BACKUP SQL]:    SELECT *
      FROM t_order
      WHERE id = 10054
      */
      REPLACE INTO `t_order`(`id`,`product_id`,`gmt_create`,`gmt_modified`,`customer_id`,`price`,`status`,`province`) VALUES
      (10054,81,'2021-12-14 09:44:44','2021-12-14 09:44:44',71,63.45,'Success','Hangzhou');
                                          
    2. Extraia a instrução de backup do arquivo de backup. Após confirmar que a instrução de backup está correta, envie um novo ticket de alteração de dados padrão para restaurar os dados conforme necessário.

      Nota

      Se uma instrução UPDATE foi executada por engano e a instrução de backup é uma instrução INSERT, determine o método de recuperação por conta própria.

  4. (Opcional) Verifique se a alteração atende às expectativas.

    1. Na página de detalhes do ticket, na área Basic Information, passe o ponteiro do mouse sobre o nome do banco de dados e clique em Query.

    2. Você será redirecionado para o SQL Console. Consulte os dados da tabela para verificar se atendem às suas expectativas.

Perguntas frequentes

  • P: Ao enviar uma alteração de dados no DMS, o envio falha com a mensagem de erro: "A topologia do banco de dados publicado XXX é inconsistente com a topologia do banco de dados de linha de base da alteração. Corrija a topologia e tente novamente."

    R: Para uma alteração de banco de dados lógico, a estrutura de sharding do banco de dados de linha de base e do banco de dados de produção deve ser consistente. Por exemplo, se o banco de dados de linha de base tiver 8 shards e 256 tabelas, o banco de dados de produção também deverá ter 8 shards e 256 tabelas. Essa consistência é necessária porque o script para alterações online é gerado comparando o banco de dados de produção com o banco de dados de linha de base.

  • P: Ao criar um ticket de alteração de dados no DMS, não consigo encontrar o DB do Redis.

    R: A lista suspensa de bancos de dados pode não mostrar todos os bancos disponíveis. Geralmente, ela exibe apenas os bancos de dados usados recentemente. Se um banco de dados não estiver na lista suspensa, pesquise por ele. Copie a string de conexão da janela do SQL Console e utilize-a na pesquisa.