Hoje, após uma falha de energia, um banco de dados (com Recuperação: cheio) mostra "Em recuperação" no SSMS. Tão:
myDatabase (Em recuperação) (status do banco de dados: recuperação, Desligamento)
Após a conclusão, o "processo de recuperação" do banco de dados mostra o nome myDatabase sem "(Em recuperação)". Eu pensei que o problema estava resolvido, mas não estava.
Quando iniciei o aplicativo que usa esse banco de dados, o texto extra "(Em recuperação)" aparece novamente ao lado do nome do meu banco de dados.
Esperei até o "processo de recuperação" terminar e, em seguida, coloquei o banco de dados offline e o coloquei online novamente.
Reiniciei o servidor, reiniciei o computador e, quando meu aplicativo estava sendo executado, o texto extra aparece novamente. Nos logs do SQL Server, a mensagem "Iniciando o banco de dados 'myDatabase'" aparece algumas vezes. Parece que o banco de dados está funcionando porque posso inserir dados, mas o estado está mostrando que algo acontece.
O log do servidor não está mostrando nada de interessante. A única coisa anormal é que tenho 30 entradas de "Iniciando o banco de dados 'myDatabase'".
Eu sei que quando o servidor inicia, todo banco de dados passa por recuperação antes de estar pronto para uso. Mas no meu caso, o banco de dados fica on-line e mostra "myDatabase (In recovery)". Se eu fechar o aplicativo, o banco de dados vai para Status: Normal. Isto está me enlouquecendo.
Até instalei uma nova instância do SQL Server e coloquei o banco de dados antigo "myDatabase". O problema ainda acontece.
Quando executo esta consulta:
SELECT databasepropertyex('nyDatabase', 'STATUS')
Ele mostra a recuperação on-line, a suspeita e a volta para on-line e, em seguida, a recuperação e assim por diante.