Log de transações do SQL Server
Gabarito: letra E. Todas as quatro afirmações (I, II, III e IV) estão corretas. O log de transações é um recurso essencial do SQL Server que registra todas as modificações no banco de dados, permitindo as funcionalidades descritas: recuperação de transações (individuais e durante a inicialização), restauração pontual (point-in-time), suporte à replicação transacional e às tecnologias de alta disponibilidade (AlwaysOn, espelhamento, envio de logs).
A questão cobra o conhecimento das finalidades do log de transações no SQL Server, um tema recorrente em provas de banco de dados.
Item I — ✅ Correto
O log de transações permite a recuperação de transações individuais (rollback/rollforward) e, na inicialização do SQL Server, todas as transações incompletas (não confirmadas ou não desfeitas) são processadas para garantir a consistência do banco. Isso faz parte do mecanismo de recuperação baseado em log.
Item II — ✅ Correto
A restauração de um banco de dados a partir de um backup pode ser feita até um ponto específico (point-in-time restore) utilizando os registros do log de transações. É possível restaurar banco, arquivo, grupo de arquivo ou página até o momento da falha.
Item III — ✅ Correto
A replicação transacional utiliza o log de transações para capturar alterações e propagá-las para outros bancos. O Log Reader Agent lê as transações do log e as aplica nos assinantes.
Item IV — ✅ Correto
Grupos de disponibilidade AlwaysOn, espelhamento de banco de dados e envio de logs (log shipping) dependem diretamente do log de transações para sincronizar dados entre servidores, garantindo alta disponibilidade e recuperação de desastres.
Conclusão: Todos os itens estão corretos, portanto o gabarito é a letra E.