Temos um banco de dados SQL Server 2012 Enterprise em execução no modelo de recuperação completa com backups de log de transação em execução a cada minuto. Uma consulta foi executada ontem à noite, o que significa que precisamos recuperar os dados de um determinado ponto no tempo - então restauramos os logs de transação para esse ponto no tempo, recuperamos os dados de que precisamos, tudo bem.
O que queremos saber, existe uma maneira de saber qual login executou uma consulta usando os backups do log de transações?
Convertendo meu comentário como resposta:
Você deve usar fn_dblog Begin Time não documentado, SUSER_SNAME([Transaction SID]) ou fn_dump_dblog -- ao ler de backups T-log. Tenha cuidado e experimente em um sistema NON PROD, pois toda vez que fn_dump_dblog é chamado, ele cria um novo agendador SQLOS oculto e até três threads, que não desaparecerão (e não serão reutilizados) até que o servidor reinicie.
Além disso, não é tão direto ser capaz de ler o T-log e chegar a uma conclusão - se você ainda não o fez ou é novo nisso. É melhor tentar uma ferramenta de terceiros (como Apex SQL Log) se for tão crÃtico para você descobrir quem fez a bagunça.