Estou executando o envio de logs com o SQL Server 2008 R2.
Tenho uma situação em que a unidade do banco de dados secundário ficou sem espaço e não estava aplicando os logs de transação de envio de logs.
A maneira como eu 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.
sql-server
log-shipping
Pedro
fonte
fonte
Respostas:
ou apenas
a
REPLACE
substituir o banco de dados existente, fazê-lo apenas se você tem certeza de que deseja substituir seu banco de dados existente como você mencionou que não se importam para 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.
fonte
A melhor maneira que eu fiz com esse problema é escrever este comando 'soltar banco de dados [nome do banco de dados]' e, em seguida, criar um novo com o mesmo nome e restaurar o banco de dados de outro arquivo .bak porque o arquivo .bak está corrompido ou com defeito.
fonte