Je sais qu'il y a des questions qui résolvent le problème d'une base de données bloquée RESTORING
et j'ai utilisé ces solutions pour remettre manuellement la base de données en ligne, mais mon scénario est quelque peu différent.
J'ai une restauration automatisée à l'aide de scripts Powershell qui restaure une copie de la production sur une instance DEV. Les scripts sont inchangés pendant environ un an et parfois le processus de restauration se termine mais la base de données restaurée est bloquée RESTORING
(parfois le script fonctionne bien, parfois il échoue comme ça).
Chaque fois que si je réexécute manuellement le processus, il fonctionne ou si je restaure manuellement la base de données à partir de l'interface utilisateur de SSMS ou via T-SQL, il se termine sans problème.
J'ai trouvé des réponses qui recommandaient de s'exécuter CHECKDB
sur la base de données restaurée mais rien n'est sorti comme cause de ce problème.
Étant donné que les scripts de restauration restaurent une sauvegarde complète de la base de données et utilisent une "WITH RECOVERY"
option, j'essaie de savoir ce qui pourrait arrêter le processus de restauration, bien que je le restaure en utilisant "WITH RECOVERY"
.
Toutes les suggestions sont vraiment appréciées car je suis coincé à essayer de comprendre pourquoi cela se produit de temps en temps.
J'aimerais beaucoup résoudre la cause première du problème plutôt que de traiter les symptômes, qui consiste à restaurer manuellement la base de données une fois de plus.
Mettre à jour:
Github Gist comme @Brent recommandé - ici .
EXEC sys.xp_readerrorlog 0,1;
- recherchez des messages au moment de l'opération de restauration.