SQL Agent no Microsoft SQL Server
Gabarito: letra C. O SQL Agent é o serviço do SQL Server responsável por executar tarefas administrativas agendadas, como backups, manutenção de índices e rotinas de monitoramento — é o "agendador de tarefas" do banco. As demais alternativas descrevem funções de outros componentes (gerenciamento de permissões, segurança, sincronização e otimização), que não são atribuições do SQL Agent.
O SQL Agent é um componente nativo do Microsoft SQL Server, presente desde as primeiras versões, que funciona como um serviço do Windows. Ele permite criar, agendar e executar jobs (trabalhos), que são conjuntos de uma ou mais etapas (steps), cada uma podendo executar comandos T-SQL, scripts de PowerShell, comandos do sistema operacional, tarefas de replicação, entre outros. Os jobs podem ser disparados por horário (agendamento), por resposta a um alerta ou manualmente. É a ferramenta padrão para automatizar rotinas administrativas, como:
Backups periódicos de bancos de dados;
Manutenção de índices (reorganizar, reconstruir, atualizar estatísticas);
Integridade do banco (DBCC CHECKDB);
Limpeza de dados antigos;
Envio de e-mails de notificação;
Importação/exportação de dados.
O SQL Agent também gerencia alertas (alertas) e operadores (operadores). Um alerta é uma resposta automática a um evento específico (por exemplo, erro grave ou baixo espaço em disco); um operador é uma pessoa ou grupo que recebe notificações (por e-mail, pager ou net send) quando um alerta é disparado ou um job falha. Essa tríade — jobs, alertas e operadores — forma o núcleo do SQL Agent.
É importante distinguir o SQL Agent de outros componentes do SQL Server, pois a banca explora exatamente essa confusão:
Componente | Função principal |
|---|
SQL Agent | Executar tarefas administrativas agendadas (jobs, alertas, operadores) |
SQL Server (Mecanismo de Banco de Dados) | Armazenar, recuperar e gerenciar dados; processar consultas e transações |
SQL Server Integration Services (SSIS) | Integração e transformação de dados (ETL) |
SQL Server Reporting Services (SSRS) | Geração de relatórios |
SQL Server Analysis Services (SSAS) | Análise de dados e OLAP |
SQL Server Profiler / Extended Events | Monitoramento e auditoria de eventos |
Database Engine Tuning Advisor | Sugerir índices e otimizações de desempenho |
A pegadinha da questão está em associar o SQL Agent a funções que pertencem a outros componentes ou a conceitos genéricos de banco de dados. O candidato que conhece apenas a teoria geral de SGBD (DBA, segurança, concorrência) pode se confundir, mas a questão é específica do SQL Server. Guarde a fronteira: SQL Agent = agendamento de tarefas administrativas. É exatamente nesse critério que as alternativas se dividem.
Alternativa A — ❌ Incorreta
Gerenciar permissões de usuários é função do mecanismo de banco de dados (através de comandos DCL como GRANT, DENY, REVOKE) e do DBA, não do SQL Agent. O SQL Agent não lida com controle de acesso; ele apenas executa tarefas agendadas. A confusão aqui é atribuir ao SQL Agent uma responsabilidade administrativa genérica, mas que é de outro componente.
Alternativa B — ❌ Incorreta
Rastrear e bloquear tentativas de acesso não autorizado é função de segurança do SGBD (autenticação, autorização, auditoria, firewall) e de ferramentas de monitoramento de segurança. O SQL Agent não tem essa atribuição. Ele pode, no máximo, executar um job que audite logins, mas não é sua função nativa.
Alternativa C — ✅ Correta ⟵ GABARITO
O SQL Agent é, por definição, o componente do SQL Server que executa tarefas administrativas agendadas. Ele permite criar jobs com etapas (T-SQL, PowerShell, etc.), agendá-los por horário ou evento, e gerenciar alertas e operadores. É a ferramenta padrão para automatizar backups, manutenção de índices e outras rotinas.
Alternativa D — ❌ Incorreta
Sincronizar em tempo real instâncias locais com a nuvem é função de replicação, Always On Availability Groups, log shipping ou Azure Data Sync, não do SQL Agent. O SQL Agent pode agendar tarefas de sincronização, mas a sincronização em si é feita por outros mecanismos. A alternativa confunde o agendador com a tecnologia de sincronização.
Alternativa E — ❌ Incorreta
Monitorar em tempo real planos de acesso e sugerir índices é função do Database Engine Tuning Advisor e de ferramentas de monitoramento de desempenho (como o Query Store e o Live Query Statistics). O SQL Agent não monitora em tempo real nem sugere índices; ele apenas executa tarefas agendadas, que podem incluir a manutenção de índices, mas não a sugestão automática.
Gabarito: letra C — o SQL Agent executa tarefas administrativas agendadas.