Après avoir déplacé des bases de données autour (restauration, suppression, etc.), nous avons connu un problème créant de nouvelles bases de données. Spécifiquement, lorsque vous essayez de créer une nouvelle base de données MSSQL Server, il a échoué car le modèle "Le modèle" de la base de données "est marqué de restauration et est dans un état qui ne permet pas la récupération de la récupération". Comme certaines solutions en ligne suggérées, nous avons essayé de démarrer et d'arrêter le service MSSQL. Le service ne se redémarrerait pas car "Impossible de créer tempdb. Vous ne pouvez pas avoir suffisamment d'espace disque disponible. Espace disque supplémentaire gratuit en supprimant d'autres fichiers sur le lecteur TEMPDB" (FYI: Le lecteur contient 100 Go d'espace libre). Essayé de redémarrer la machine Le serveur MSSQL est activé. Lorsque le serveur est revenu en ligne, nous avons reçu la même erreur. Nous avons essayé de supprimer TEMPDB.MDF et de restaurer le modèleDB dans le dossier Modèles, mais aucun de ces personnes n'a résolu le problème. Nous sommes incapables de vous connecter à la base de données, même en mode utilisateur unique. Beaucoup de solutions en ligne utilisent des commandes SQL sur le serveur, mais nous ne pouvons pas vous connecter (même en mode utilisateur unique) à la DB pour exécuter des commandes sur le serveur.
Messages d'erreur spécifiques:
La base de données 'modèle' ne peut pas être ouverte. C'est au milieu d'une restauration. (Server Microsoft SQL, erreur: 927)
Le service SQL Server (MSSQLSERVER) commence. Le service SQL Server (MSSQLSERVER) n'a pas pu être démarré.
Une erreur de service spécifique s'est produite: 1814.
Nous avons besoin du serveur et de courir à nouveau dès que possible.
C'était en fait un moment fixé (retour en juillet '12) avec un appel de support payé de Microsoft.
Comme cela a eu tant de points de vue, j'ai décidé d'ajouter une version expurgée de notre "résumé de courrier électronique" de l'appel avec Microsoft.
Publié est un lien vers Pastebin: http://pastebin.com/qqnz7xyd
J'espère que cette information aidera toute personne avec ce problème
Problem Description:
=============================
You Microsoft SQL Server 2008 R2 (RTM) - 10.50.1600.1 (X64) default instance on SERVERNAME server and you were trying to start the SQL SERVER service which was failing to start.
Analysis\Troubleshooting:
=============================
We checked the SQLS SERVER ERRORLOG
===========================
2012-06-20 19:33:41.48 Server Microsoft SQL Server 2008 R2 (RTM) - 10.50.1600.1 (X64)
Apr 2 2010 15:48:46
Copyright (c) Microsoft Corporation
Enterprise Edition (64-bit) on Windows NT 6.0 <X64> (Build 6001: Service Pack 1)
2012-06-20 19:33:41.50 Server (c) Microsoft Corporation.
2012-06-20 19:33:41.50 Server All rights reserved.
2012-06-20 19:33:41.50 Server Server process ID is 2596.
2012-06-20 19:33:41.51 Server System Manufacturer: 'HP', System Model: 'ProLiant DL360 G5'.
2012-06-20 19:33:41.51 Server Authentication mode is MIXED.
2012-06-20 19:33:41.51 Server Logging SQL Server messages in file 'D:\Mssql\Data\MSSQL10_50.MSSQLSERVER\MSSQL\Log\ERRORLOG'.
2012-06-20 19:33:41.51 Server This instance of SQL Server last reported using a process ID of 2816 at 6/20/2012 6:10:15 PM (local) 6/20/2012 10:10:15 PM (UTC). This is an informational message only; no user action is required.
2012-06-20 19:33:41.51 Server Registry startup parameters:
-d D:\Mssql\Data\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\master.mdf
-e D:\Mssql\Data\MSSQL10_50.MSSQLSERVER\MSSQL\Log\ERRORLOG
-l D:\Mssql\Data\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\mastlog.ldf
2012-06-20 19:33:41.56 Server SQL Server is starting at normal priority base (=7). This is an informational message only. No user action is required.
2012-06-20 19:33:41.56 Server Detected 4 CPUs. This is an informational message; no user action is required.
2012-06-20 19:33:41.65 Server Using locked pages for buffer pool.
2012-06-20 19:33:41.88 Server Using dynamic lock allocation. Initial allocation of 2500 Lock blocks and 5000 Lock Owner blocks per node. This is an informational message only. No user action is required.
2012-06-20 19:33:42.33 Server Node configuration: node 0: CPU mask: 0x000000000000000f:0 Active CPU mask: 0x000000000000000f:0. This message provides a description of the NUMA configuration for this computer. This is an informational message only. No user action is required.
2012-06-20 19:33:42.49 spid7s Starting up database 'master'.
2012-06-20 19:33:42.86 spid7s Resource governor reconfiguration succeeded.
2012-06-20 19:33:42.86 spid7s SQL Server Audit is starting the audits. This is an informational message. No user action is required.
2012-06-20 19:33:42.87 spid7s SQL Server Audit has started the audits. This is an informational message. No user action is required.
2012-06-20 19:33:42.87 spid7s FILESTREAM: effective level = 0, configured level = 0, file system access share name = 'MSSQLSERVER'.
2012-06-20 19:33:43.02 spid7s SQL Trace ID 1 was started by login "sa".
2012-06-20 19:33:43.03 spid7s Starting up database 'mssqlsystemresource'.
2012-06-20 19:33:43.05 spid7s The resource database build version is 10.50.1600. This is an informational message only. No user action is required.
2012-06-20 19:33:43.24 spid10s Starting up database 'model'.
2012-06-20 19:33:43.24 spid7s Server name is 'SERVERNAME'. This is an informational message only. No user action is required.
2012-06-20 19:33:43.27 spid10s The database 'model' is marked RESTORING and is in a state that does not allow recovery to be run.
2012-06-20 19:33:43.28 spid10s Error: 927, Severity: 14, State: 2.
2012-06-20 19:33:43.28 spid10s Database 'model' cannot be opened. It is in the middle of a restore.
2012-06-20 19:33:43.36 spid10s Could not create tempdb. You may not have enough disk space available. Free additional disk space by deleting other files on the tempdb drive and then restart SQL Server. Check for additional errors in the event log that may indicate why the tempdb files could not be initialized.
2012-06-20 19:33:43.36 spid10s SQL Trace was stopped due to server shutdown. Trace ID = '1'. This is an informational message only; no user action is required.
===========================
From ERRORLOG we can see that SQL SERVER trying to bring model database online but since model database in recovery state hence we were unable to run database recovery.
We also know that whenever SQL SERVER start we recreate TEMPDB database by coping the content from model database.
Now since model database didn’t started hence TEMPDB startup also failed which is one of critical system database and this caused SQL SERVER service to failed
Solution:
=====================================
· To fix this issue we started SQL SERVER EXE with following parameter from command Prompt
SQLSERVR.EXE -c -T3608
· Then after we detached model database using following T-SQL
sp_detach_db model
· Then after we attach the model database using following T-SQL
================================
USE MASTER
GO
CREATE DATABASE MODEL
ON (FILENAME = 'C:\PROGRAM FILES\Microsoft SQL SERVER\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\MODEL.MDF')
FOR ATTACH ;
================================
· After that SQL SERVER service came online successfully
Pouvez-vous démarrer le service SQL en contournant l'autorecover?
net start mssqlserver /f /m /t3608
ensuite, essayez de récupérer le modèle?
sqlcmd -e
restore database
model go
eDIT: trouvé ce lien aussi, ce qui va en profondeur et est probablement plus précis ..