Estou executando o envio de logs com o SQL Server 2008 R2.
Eu tenho uma situação em que a unidade de banco de dados secundária ficou sem espaço e não estava aplicando logs de transação de envio de log.
A maneira como quero corrigir isso é excluir os bancos de dados no secundário e configurar o envio de logs do zero.
O problema que tenho agora é que meus bancos de dados secundários estão no estado de restauração e não posso excluí-los. Como posso proceder?
Por exemplo, se eu tentar colocá-los offline, recebo o erro,
ALTER DATABASE is not permitted while the database is in the Restoring state.
ou apenas
o
REPLACE
Substituir o banco de dados existente, faça-o apenas se tiver certeza de que deseja substituir seu banco de dados existente, como você mencionou, não se importa em excluí-loRESTORE WITH RECOVERY é o comportamento padrão que deixa o banco de dados pronto para uso revertendo as transações não confirmadas. Logs de transações adicionais não podem ser restaurados.
Isso deve colocar o banco de dados online. Em seguida, você pode excluí-lo e tentar novamente.
A melhor maneira que eu fiz com este problema é escrever este comando 'drop database [nome do banco de dados]' e, em seguida, criar um novo com o mesmo nome e, em seguida, restaurar o banco de dados de outro arquivo .bak porque o arquivo .bak está corrompido ou com defeito.