Todos os produtos
Search
Central de documentação

ApsaraDB RDS:Use the SQL Explorer and Audit feature

Última atualização: Oct 13, 2026

O SQL Explorer and Audit captura cada instrução SQL executada na sua instância ApsaraDB RDS for MySQL — incluindo a conta, o endereço IP de origem e os detalhes de execução — e as armazena como logs de auditoria. Use esses dados para:

  • Reter um registro de auditoria completo de todas as operações de Data Query Language (DQL), Data Manipulation Language (DML) e Data Definition Language (DDL) para conformidade de segurança

  • Investigar problemas de desempenho, sessões anômalas e o status de integridade do SQL

  • Recuperar dados por meio da reprodução das instruções SQL registradas após perda ou corrupção de dados

Importante

O SQL Explorer and Audit captura dados diretamente dos kernels do banco de dados utilizando uma pequena quantidade de recursos de CPU. A ativação e o uso do recurso têm impacto mínimo no desempenho da instância.

Pré-requisitos

Antes de começar, certifique-se de que você tem:

Se um usuário RAM precisar usar o recurso SQL statement search, anexe a política AliyunRDSReadOnlyWithSQLLogArchiveAccess a esse usuário RAM. Para mais detalhes, consulte Usar o RAM para gerenciar permissões do ApsaraDB RDS ou conceder permissões usando uma política personalizada que cubra os recursos de pesquisa e exportação.

No console do ApsaraDB RDS, apenas o recurso SQL Explorer and Audit fornecido pela versão mais recente do DAS Enterprise Edition compatível com a região atual pode ser ativado.

Regiões compatíveis

China (Hangzhou), China (Shanghai), China (Qingdao), China (Beijing), China (Zhangjiakou), China (Hohhot), China (Ulanqab), China (Shenzhen), China (Heyuan), China (Guangzhou), China (Chengdu), China (Hong Kong), Singapore, Japan (Tokyo), Malaysia (Kuala Lumpur), Indonesia (Jakarta), US (Silicon Valley), UK (London), US (Virginia), Germany (Frankfurt)

Capacidades

Capacidade

Descrição

Pesquisa (auditoria)

Consultar e exportar registros de execução de instruções SQL — incluindo banco de dados, status e horário de execução

SQL Explorer

Diagnosticar a integridade do SQL, solucionar problemas de desempenho e analisar o tráfego de negócios

Auditoria de segurança

Identificar riscos: instruções SQL de alto risco, ataques de injeção de SQL e novas fontes de acesso

Reprodução de tráfego e testes de carga

Reproduzir tráfego real para verificar se a instância precisa de dimensionamento

Análise de SQL

Analisar instruções SQL em um intervalo de tempo para identificar consultas anômalas e localizar gargalos de desempenho

Este recurso é adequado para:

  • Setores que exigem alta segurança de dados, como finanças, segurança, ações, serviço público e seguros

  • Solução de problemas, análise de desempenho de SQL e identificação de sessões anômalas

  • Recuperação de perda ou corrupção de dados usando as instruções SQL registradas pelo recurso

Faturamento

O faturamento depende de quando e como você ativou o recurso.

Se você ativou o recurso SQL Explorer original antes de ele ser atualizado para SQL Explorer and Audit, a cobrança está incluída na sua fatura do ApsaraDB RDS. O preço é baseado na região da instância e cobrado por GB-hora:

Tarifa

Regiões

US$ 0,0012/GB-hora

China (Hangzhou), China (Shanghai), China (Qingdao), China (Beijing), China (Zhangjiakou), China (Hohhot), China (Ulanqab), China (Shenzhen), China (Heyuan), China (Guangzhou), China (Chengdu)

US$ 0,0015/GB-hora

China (Hong Kong), US (Silicon Valley), US (Virginia)

US$ 0,0018/GB-hora

Singapore, Japan (Tokyo), Germany (Frankfurt), UAE (Dubai), Malaysia (Kuala Lumpur), Indonesia (Jakarta), UK (London)

Para atualizar do SQL Explorer para o SQL Explorer and Audit: faça logon no console do ApsaraDB RDS, acesse a guia SQL Explorer e clique em One click upgrade na caixa de diálogo. Após a atualização, o faturamento passa para a sua fatura do DAS.

Se o SQL Explorer and Audit for ativado após a atualização, a cobrança está incluída na sua fatura do DAS. As regiões compatíveis e as tarifas variam conforme a versão do DAS Enterprise Edition. Para mais detalhes, consulte Edições e recursos compatíveis do DAS e Faturamento.

Limites

Limites de consulta online

  • Intervalo de tempo: Cada consulta abrange uma janela de até 24 horas. Para consultar registros que abrangem mais de 24 horas, use o Simple Log Service (SLS) para acessar os logs do SQL Explorer. Para mais detalhes, consulte Coletar logs de auditoria SQL do RDS.

  • Método de consulta: Combine várias condições de filtro. A correspondência difusa não é compatível. Cada palavra-chave deve conter pelo menos quatro caracteres.

Limites do SQL Explorer and Audit

  • Local de armazenamento: Os logs de auditoria são armazenados separadamente pelo Database Autonomy Service (DAS) e não consomem o espaço em disco local da sua instância RDS. A ativação do SQL Explorer and Audit não aumenta o uso de disco da instância.

  • Registros de logon: O ApsaraDB RDS for MySQL não registra eventos de logon por padrão. Os eventos de logon são registrados somente após você ativar o SQL Explorer and Audit, após o qual você pode rastrear registros de logon usando o tipo de operação LOGIN. Os logons ocorridos antes da ativação do recurso não são retidos e não podem ser recuperados posteriormente.

  • Comprimento máximo da instrução SQL: Até 8.192 bytes. O limite é controlado por loose_rds_audit_max_sql_size (MySQL 5.6 e 5.7) ou loose_rds_audit_log_event_buffer_size (MySQL 8.0) — o menor valor entre os três parâmetros é aplicado. Como um prefixo é adicionado durante a coleta de dados, o limite efetivo é ligeiramente inferior a 8.192 bytes ou ao valor configurado.

  • Consulta por ID de transação: Defina o parâmetro loose_rds_audit_log_version como MYSQL_V3 e certifique-se de que a versão secundária do mecanismo atenda aos requisitos: o MySQL 8.0 requer a versão 20210930 ou posterior; o MySQL 5.7 requer a versão 20210630 ou posterior. Para mais detalhes, consulte Parâmetros compatíveis com instâncias ApsaraDB RDS que executam MySQL 8.0 e Atualizar a versão secundária do mecanismo.

  • SQL Explorer Trial Edition: As operações de API DescribeSQLLogRecords e DescribeSQLLogFiles não estão disponíveis. Para mais detalhes, consulte DescribeSQLLogRecords e DescribeSQLLogFiles.

  • Tempo de espera de bloqueio: Registrado nos logs do SQL Explorer, mas não nos logs de consulta lenta.

  • Método Prepare: O SQL Explorer registra duas instruções para cada instrução preparada — uma com o placeholder de ponto de interrogação (?) e outra com o valor real.

Outras considerações

  • Proxy de banco de dados com pool de conexões no nível de transação: Quando o pool de conexões no nível de transação está ativado, as conexões podem ser reutilizadas. O endereço IP e a porta nos logs do SQL Explorer podem ser diferentes do que o SHOW PROCESSLIST retorna. Para mais detalhes, consulte O que são proxies de banco de dados?

  • Instâncias anexadas ao PolarDB-X 1.0: As instruções SQL executadas em uma instância RDS anexada ao PolarDB-X 1.0 geram várias entradas de log do SQL Explorer devido ao particionamento horizontal.

Ativar o SQL Explorer and Audit

A ativação do recurso de coleta de logs de auditoria para a sua instância RDS no aplicativo CloudLens for RDS do Simple Log Service ativa automaticamente o SQL Explorer and Audit. Para mais detalhes, consulte CloudLens for RDS .
Se o SQL Explorer and Audit estiver desativado e você precisar visualizar os registros de execução de SQL, verifique os logs binários. Os logs binários contêm apenas operações de adição, exclusão e modificação dentro do período de retenção de backup — os endereços IP de origem e as contas não estão disponíveis. Para mais detalhes, consulte Gerenciar arquivos de log binário .
  1. Acesse a página Instâncias. Na barra de navegação superior, selecione a região onde a instância RDS reside. Encontre a instância e clique no ID dela.

  2. No painel de navegação à esquerda, escolha Autonomy Services > SQL Explorer and Audit.

  3. Clique em Enable DAS Enterprise Edition V3.image

  4. Selecione os sub-recursos a serem ativados e clique em Submit.

Modificar a duração de armazenamento

Aviso

A redução da duração de armazenamento exclui imediatamente os logs de auditoria retidos por mais tempo do que a nova duração. Exporte e salve seus logs antes de reduzir a duração de armazenamento.

  1. Acesse a página Instâncias. Selecione a região, encontre a instância e clique no ID dela.

  2. No painel de navegação à esquerda, escolha Autonomy Services > SQL Explorer and Audit.

  3. Clique em Service Settings.

  4. No painel Service Settings, modifique a duração de armazenamento e clique em Submit.

Desativar o SQL Explorer and Audit

Aviso

A desativação do SQL Explorer and Audit exclui permanentemente todos os logs de auditoria. Exporte seus logs antes de desativar o recurso. Se você reativar o recurso posteriormente, os logs serão registrados a partir do ponto de reativação — os logs anteriores não serão restaurados.

  1. Acesse a página Instâncias. Selecione a região, encontre a instância e clique no ID dela.

  2. No painel de navegação à esquerda, escolha Autonomy Services > SQL Explorer and Audit.

  3. Na seção Logs da guia Search, clique em Export.

    Cada exportação abrange até 10 milhões de registros dentro de uma janela de 7 dias. Use o parâmetro Export Time Range para exportar logs em um intervalo de tempo mais amplo.
  4. Na caixa de diálogo, configure Exported Fields e Export Time Range, e clique em OK.

  5. Baixe o arquivo de log exportado e salve-o localmente.

  6. Clique em Service Settings e desative o recurso. Se o DAS Enterprise V3 estiver ativado, desmarque todos os recursos no módulo SQL Explorer and Audit e clique em Submit.

    O espaço de armazenamento ocupado pelos dados do SQL Explorer and Audit é liberado uma hora após a desativação do recurso.

Migrar dados entre versões do DAS Enterprise Edition

Aviso

A migração de dados não pode ser interrompida ou revertida. Leia atentamente as instruções de migração antes de prosseguir.

Se a sua instância RDS for compatível com o DAS Enterprise Edition V3, migre os dados do V1 ou V2 para o V3 para reduzir custos. Para etapas de migração, consulte Como migrar dados entre versões do DAS Enterprise Edition?

Cada versão usa uma arquitetura de armazenamento diferente:

  • V1: Arquitetura de armazenamento original

  • V2: Armazenamento híbrido de dados quentes e frios — maior desempenho com custo menor que o V1

  • V3: Armazenamento híbrido de dados quentes e frios com faturamento por recurso — mais flexível que o V2

FAQ

O que a instrução logout! nas Estatísticas Completas de Solicitações indica?

logout! marca um evento de desconexão. A duração de execução mostrada é o tempo ocioso entre a última interação e a desconexão. O código de status 1158 significa desconexão de rede, o que pode acontecer porque:

  • A conexão do cliente expirou

  • O servidor desconectou

  • A conexão excedeu o valor de interactive_timeout ou wait_timeout

Por que um sinal de porcentagem (%) aparece na coluna Fonte de Acesso na guia Estatísticas de Origem?

Um % na coluna Access Source aparece quando uma stored procedure está envolvida. Isso acontece porque a stored procedure é definida com um DEFINER que inclui % como host — por exemplo, ` CREATE DEFINER= test_user @% PROCEDURE das () `.

Para reproduzir esse comportamento:

  1. No console do ApsaraDB RDS, crie um banco de dados e uma conta padrão e conceda permissões no banco de dados para essa conta. Para mais detalhes, consulte Criar contas e bancos de dados.

  2. Conecte-se à instância usando a conta test_user via CLI. Para mais detalhes, consulte Usar um cliente de banco de dados ou a CLI para conectar-se a uma instância ApsaraDB RDS for MySQL.

  3. Mude para o banco de dados testdb e crie uma stored procedure:

    -- Switch to testdb
    USE testdb;
    
    -- Create a stored procedure
    DELIMITER $$
    DROP PROCEDURE IF EXISTS `das` $$
    CREATE DEFINER=`test_user`@`%` PROCEDURE `das`()
    BEGIN
    SELECT * FROM information_schema.processlist WHERE Id = CONNECTION_ID();
    END $$
    DELIMITER;
  4. Conecte-se à instância usando uma conta privilegiada. Para mais detalhes, consulte Usar um cliente de banco de dados ou a CLI para conectar-se a uma instância ApsaraDB RDS for MySQL.

  5. Chame a stored procedure:

    -- Switch to testdb
    USE testdb;
    
    -- Call the stored procedure
    CALL das();

    Saída esperada:

    +--------+-----------+--------+--------+---------+------+-----------+-------------------------------------------------------------------------+
    | ID     | USER      | HOST   | DB     | COMMAND | TIME | STATE     | INFO                                                                    |
    +--------+-----------+--------+--------+---------+------+-----------+-------------------------------------------------------------------------+
    | 487818 | test_user | %:2065 | testdb | Query   |    0 | executing | SELECT * FROM information_schema.processlist WHERE Id = CONNECTION_ID() |
    +--------+-----------+--------+--------+---------+------+-----------+-------------------------------------------------------------------------+

Após executar uma consulta que retorna resultados, a seção Logs mostra zero linhas verificadas. Por quê?

O recurso de cache de consulta rápida está ativado. Quando a mesma consulta atinge o cache, o MySQL retorna o resultado armazenado em cache diretamente sem verificar o InnoDB — portanto, a contagem de linhas verificadas é zero. Para mais detalhes, consulte Cache de consulta rápida.

Quais são as diferenças entre os logs do SQL Explorer e os logs binários?

Ambos os tipos de log capturam alterações incrementais na sua instância RDS, mas diferem na cobertura e nos casos de uso:

Logs do SQL Explorer

Logs binários

Cobertura

Todas as operações DQL, DML e DDL

Apenas operações de adição, exclusão e modificação

Completude

Um pequeno número de registros pode ser perdido sob carga elevada

Preciso dentro do período de retenção de backup

Disponibilidade

Tempo real

Não gerado em tempo real; transferido periodicamente para o Object Storage Service (OSS), retido por 7 dias

Inclui IP de origem e conta

Sim

Não

Mais adequado para

Auditoria de conformidade, solução de problemas, análise completa de atividades

Recuperação de dados usando dados incrementais precisos

Os arquivos de log binário que estão sendo gravados atualmente não podem ser transferidos para o OSS. Como resultado, alguns arquivos podem falhar ao fazer upload ao usar o recurso Upload Binlogs. Para mais detalhes, consulte Obter e analisar logs binários para uma instância RDS for MySQL

O ponto de entrada do SQL Explorer desapareceu do console. Por quê?

O SQL Explorer and Audit é uma versão atualizada do SQL Explorer. O ponto de entrada agora está rotulado como SQL Explorer and Audit.

Posso ativar o recurso SQL Explorer original?

Não. Apenas a versão mais recente do SQL Explorer and Audit pode ser ativada nas instâncias RDS.

Os registros de auditoria SQL são excluídos do sistema após eu exportá-los?

Não. A exportação de registros de auditoria não os exclui do sistema.

O SQL Explorer and Audit é compatível com a configuração de alertas no nível da conta do banco de dados, por exemplo, excluindo uma conta específica das notificações de alerta?

Não. As configurações de alerta e auditoria do SQL Explorer and Audit se aplicam no nível da instância e não podem ser diferenciadas para contas de banco de dados individuais. Por exemplo, você não pode configurar "o usuário A não recebe alertas" ou "auditar apenas as operações do usuário B". Para gerenciar notificações de alerta por usuário, filtre-as na camada da sua aplicação ou usando as políticas de notificação do Cloud Monitor.

Como usar os logs de auditoria para rastrear a origem de uma exclusão de dados?

Se os dados da tabela forem excluídos acidentalmente ou intencionalmente, você pode usar o SQL Explorer and Audit para identificar a conta e o endereço IP que realizaram a exclusão:

  1. Faça logon no console do ApsaraDB RDS. Encontre a instância e clique no ID dela.

  2. No painel de navegação à esquerda, escolha Autonomy Services > SQL Explorer and Audit.

  3. Na guia Audit, na seção Logs, defina o intervalo de tempo para cobrir o período em que a exclusão ocorreu e, opcionalmente, filtre por nome do banco de dados.

  4. Insira DELETE na caixa de pesquisa de palavras-chave SQL e clique no ícone de pesquisa.

  5. Nos resultados, encontre o registro da operação DELETE e clique nele para visualizar os detalhes, incluindo o nome da conta e o endereço IP do cliente.

Nota

O endereço IP (HostAddress) registrado nos logs de auditoria pode ser o endereço IP do proxy RDS em vez do endereço IP real do cliente. Para confirmar a origem real da operação, faça a referência cruzada com a configuração de rede da sua VPC ou verifique os logs de conexão do lado do cliente.

Como combinar campos de log de erros para filtrar registros de auditoria?

Os campos dos logs de erros, como o nome do banco de dados e o endereço IP do cliente, podem ser usados como condições de filtro no SQL Explorer and Audit para localizar conexões anômalas. Procedimento:

  1. Faça logon no console do ApsaraDB RDS e acesse a página de detalhes da instância. No painel de navegação à esquerda, escolha Autonomy Services > SQL Explorer and Audit.

  2. Na guia Audit, clique em Enable Advanced Query para expandir as condições de filtro avançadas.

  3. No campo Database, insira o nome do banco de dados, por exemplo, battery.

  4. No campo Client IP, insira o host do log de erros, por exemplo, 172.25.244.207.

  5. Defina o Time Range para cobrir o período em que a conexão anômala ocorreu.

  6. Clique em Query para executar a consulta de filtro combinada.

Nota

A condição de filtro Client IP é exibida somente após você clicar em Enable Advanced Query. Por padrão, apenas as condições de filtro de intervalo de tempo, palavra-chave, usuário, banco de dados e tipo de operação são exibidas.

Como consultar o histórico de logon de uma instância?

Você pode filtrar os resultados da Pesquisa (auditoria) por tipo de operação. Na página SQL Explorer and Audit, abra a guia Search e defina o filtro Operation type como LOGIN para consultar o histórico de logon da instância. A lista de resultados inclui as colunas User (conta de logon) e Client IP, que ajudam a identificar quem fez logon e de onde.

O que faço se não conseguir encontrar a instrução SQL que alterou o status de uma linha específica?

O SQL Explorer and Audit registra operações no nível da instrução SQL e não fornece comparação de valores antes e depois no nível do campo. Para visualizar o valor de um campo específico, como status, antes e depois de uma alteração, use o recurso de rastreamento de dados do Data Management (DMS) para localizar a origem da alteração.