1
resposta

[Dúvida] Dúvidas retornar estado do banco e cláusulas

Após ter realizado o shrink no banco, qual o comando para retornar so estado 'single_user'? O que faz as cláusulas 'notruncate' e 'truncateonly'?

1 resposta

Olá, Marcio, tudo bem?

Desde já peço desculpas pela demora em obter retorno.

Para retornar ao estado 'single_user', você pode utilizar o seguinte comando:

ALTER DATABASE [NomeDoBanco] SET SINGLE_USER WITH ROLLBACK IMMEDIATE;

O comando acima define o banco de dados para o modo 'SINGLE_USER' e, realiza um rollback imediato para encerrar todas as transações em andamento.

Deixo o link da documentação que explora um pouco mais à respeito :

Quanto às cláusulas 'NOTRUNCATE' e 'TRUNCATEONLY', elas são usadas para especificar o comportamento do comando SHRINK em relação aos registros de log do SQL Server:

  • NOTRUNCATE: Quando você usa a cláusula 'NOTRUNCATE' junto com o comando SHRINK, o log de transações não é truncado (encurtado). Apenas espaço vazio dentro dos arquivos de dados é liberado.

  • TRUNCATEONLY: Já, quando você usa a cláusula 'TRUNCATEONLY' junto com o comando SHRINK, apenas o espaço não usado no final do arquivo é liberado. Isso significa que o arquivo de dados é truncado no último ponto em que uma operação de SHRINK foi executada.

Abaixo deixo o link da documentação, caso queira aprofundar no conteúdo:

Espero ter ajudado.

Caso surja alguma dúvida, fico à disposição.

Abraços.

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!