A revisão de SQL funciona como um controle automatizado no fluxo de trabalho de alterações do banco de dados. Antes que as instruções SQL cheguem ao ambiente de produção, o DMS valida cada uma com base nas regras de segurança configuradas e retorna sugestões de otimização priorizadas. Esse processo mantém a consistência da qualidade do código e reduz o risco de ataques de injeção de SQL.
Durante a fase de desenvolvimento de um projeto, utilizam-se instruções SQL para inserir, excluir, modificar e consultar dados a fim de implementar a lógica de negócios. Revisar essas instruções manualmente — uma por uma — exige esforço significativo dos DBAs e desacelera o desenvolvimento. Por exemplo, a instrução CREATE TABLE abaixo não possui chave primária, comentários na tabela nem comentários nos campos, o que viola os padrões comuns de desenvolvimento de bancos de dados:
CREATE TABLE `test_sql_review_table` (
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
`gmt_create` datetime NOT NULL,
`name` varchar(256) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
O DMS automatiza esse processo pelo recurso de revisão de SQL, integrado ao módulo de regras de segurança. Você pode personalizar especificações de SQL nas regras de segurança, como exigir chaves primárias em tabelas ou restringir o tipo de dado e a quantidade de colunas da chave primária.
Pré-requisitos
Antes de começar, verifique se você tem:
-
Um tipo de banco de dados compatível:
ApsaraDB RDS for MySQL, PolarDB for MySQL, AnalyticDB for MySQL e bancos de dados MySQL fora do Alibaba Cloud
ApsaraDB for MariaDB
PolarDB for Xscale
Oracle
PolarDB for PostgreSQL (Compatible with Oracle)
OceanBase
Uma instância de banco de dados gerenciada no modo Stable Change ou Security Collaboration no DMS. Para mais detalhes, consulte Modos de controle.
Como funciona
Ao enviar um Ticket de Auditoria de SQL, o DMS analisa cada instrução SQL e a verifica conforme as regras de segurança configuradas para o banco de dados. Os resultados se classificam em quatro categorias:
Must Improve — problemas obrigatórios antes da aprovação do ticket
Potential Issue — questões passíveis de causar problemas e que merecem revisão
Suggest Improve — otimizações opcionais para melhorar a qualidade do código
Index Recommendation — alterações de índice para aprimorar o desempenho das consultas
Para obter detalhes sobre a configuração de regras de segurança, consulte Otimização da revisão de SQL.
Enviar um ticket de revisão de SQL
Faça login no console do DMS V5.0.
-
Acesse a página de Ticket de Auditoria de SQL:
No modo aprimorado: Passe o ponteiro sobre o ícone
no canto superior esquerdo e escolha All Features > Database Development > SQL Review > SQL Audit Ticket.No modo normal: Na barra de navegação superior, escolha Database Development > SQL Review > SQL Audit Ticket.
No canto superior direito da página SQL ReviewTickets, clique em SQL Review.
-
Na página Ticket Application, configure os seguintes parâmetros.
Parâmetro
Descrição
Project name
Nome deste projeto de revisão.
Database
Banco de dados alvo da revisão de SQL. Insira o nome do banco de dados ou use o prefixo de sinal de porcentagem (%) para pesquisar. É necessário ter permissões de consulta no banco de dados. Para mais detalhes, consulte Visualizar permissões próprias.
Business background
Finalidade ou objetivo da revisão de SQL. Preencher este campo reduz a comunicação repetitiva com os revisores.
Change stakeholder
Partes interessadas envolvidas na revisão. Todos os interessados especificados podem visualizar os detalhes do ticket e participar do processo de aprovação. Outros usuários (exceto administradores do DMS e administradores de banco de dados - DBAs) não conseguem ver os detalhes do ticket.
File
Método de upload de arquivos SQL. Selecione Upload para anexar um ou mais arquivos SQL ou escolha Enter text para colar instruções SQL diretamente. Formatos suportados: XML (framework iBATIS ou MyBatis) e TXT. Consulte Arquivos SQL de exemplo para ver exemplos.
Clique em Save. O DMS analisa os arquivos SQL enviados e revisa cada instrução com base nas regras de segurança do banco de dados.
Resultados da revisão e próximos passos
Após a conclusão da revisão pelo DMS, cada ticket apresenta um dos seguintes estados.
|
Estado |
Significado |
Ação recomendada |
|
Passed |
Nenhum problema obrigatório encontrado. Pode incluir questões potenciais ou sugestões. |
Clique em Details para ver as sugestões. Se necessário, clique em Adjust SQL para editar as instruções. |
|
Failed |
Um ou mais problemas obrigatórios identificados. |
Clique em Details para visualizar os problemas. Corrija as instruções clicando em Adjust SQL e reenvie. |
|
Approve ou Disapprove |
O SQL contém problemas históricos que não podem ou não precisam ser resolvidos, além dos resultados da revisão automatizada. |
Na coluna Operation, escolha Manual Review > Approve ou Manual Review > Disapprove. |
|
Parsing Exception |
O DMS não conseguiu analisar uma ou mais instruções. |
Use Adjust SQL para corrigir as instruções e reenvie para pré-verificação. |
|
Pending Analysis |
Instruções na fila para revisão. |
Nenhuma ação necessária. Aguarde a conclusão da revisão. |
Depois de revisar e corrigir quaisquer problemas:
Na etapa Approval, clique em Submit for Approval.
Um administrador do DMS ou DBA realiza uma verificação final.
Após a aprovação, o ticket é encerrado.
Se as instruções SQL modificadas ainda falharem na verificação ou não puderem ser analisadas, uma mensagem de erro aparecerá após você clicar em Submit for Approval .
Arquivos SQL de exemplo
Baixe arquivos de exemplo para conhecer os formatos suportados:
Próximos passos
Configure as regras aplicadas pela revisão de SQL: Otimização da revisão de SQL
Verifique quais permissões são necessárias para acessar um banco de dados: Visualizar permissões próprias
Entenda os modos de controle que ativam a revisão de SQL: Modos de controle