Restaurer la base de données master (Transact-SQL)

S’applique à :SQL Server

Cet article explique comment restaurer la master base de données à partir d’une sauvegarde complète de base de données.

Avertissement

En cas de récupération d’urgence, l’instance dans laquelle la master base de données est restaurée doit être aussi proche que possible d’une correspondance exacte avec l’original. Au minimum, cette instance de récupération doit avoir la même version, la même édition et le même niveau de patch, et doit avoir la même sélection de fonctionnalités et la même configuration externe (nom d’hôte, appartenance à un cluster, etc.) que l’instance d’origine. Sinon, vous risquez d’obtenir un comportement indéfini de l’instance SQL Server, avec une prise en charge incohérente des fonctionnalités et une viabilité incertaine.

Pour restaurer la master base de données

  1. Démarrez l'instance de serveur en mode mono-utilisateur.

    Vous pouvez démarrer SQL Server à l’aide des paramètres de démarrage ou -f de -m démarrage. Pour plus d’informations sur les paramètres de démarrage, consultez Options de démarrage du service du moteur de base de données.

    À partir d’une invite de commandes, exécutez les commandes suivantes et veillez à remplacer MSSQLXX.instance par le nom de dossier approprié :

    cd C:\Program Files\Microsoft SQL Server\MSSQLXX.instance\MSSQL\Binn
    sqlservr -c -f -s <instance> -mSQLCMD
    
    • Le -mSQLCMD paramètre garantit que seul sqlcmd peut se connecter à SQL Server.
    • Pour un nom d’instance par défaut, utilisez -s MSSQLSERVER
    • -c démarre SQL Server en tant qu’application pour contourner service Control Manager pour raccourcir le temps de démarrage

    Si l’instance SQL Server ne peut pas démarrer en raison d’une base de données endommagée master , vous devez d’abord reconstruire les bases de données système. Pour plus d’informations, consultez Reconstruire les bases de données système.

  2. Se connecter à SQL Server à l’aide de SQLCMD à partir d’une autre fenêtre d’invite de commandes

    SQLCMD -S <instance> -E -d master
    
  3. Pour restaurer une sauvegarde complète de base de données master, utilisez l’instruction RESTORE DATABASETransact-SQL suivante :

    RESTORE DATABASE master FROM  <backup_device>  WITH REPLACE
    

    L’option REPLACE indique à SQL Server de restaurer la base de données spécifiée même lorsqu’une base de données du même nom existe déjà. Le cas échéant, la base de données existante est supprimée. En mode mono-utilisateur, nous vous recommandons d’entrer l’instruction RESTORE DATABASE dans l’ utilitaire sqlcmd. Pour plus d’informations, consultez Utiliser l’utilitaire sqlcmd.

    Important

    Une fois le maître restauré, l’instance de SQL Server s’arrête et met fin au processus sqlcmd . Avant de redémarrer l'instance du serveur, supprimez le paramètre de démarrage en mode mono-utilisateur. Pour plus d’informations, consultez Configurer les options de démarrage du serveur (Gestionnaire de configuration SQL Server).

  4. Redémarrez l’instance de serveur normalement en tant que service, sans utiliser de paramètres de démarrage.

  5. Poursuivez d’autres étapes de récupération, telles que la restauration d’autres bases de données, l’attachement de bases de données et la correction des incompatibilités utilisateur.

Exemple

Dans l'exemple suivant, la base de données master est restaurée sur l'instance du serveur par défaut. L'exemple suppose que l'instance du serveur s'exécute déjà en mode mono-utilisateur. L’exemple démarre sqlcmd et exécute une instruction RESTORE DATABASE qui restaure une sauvegarde complète de la base de données de master à partir d’une unité de disque : Z:\SQLServerBackups\master.bak.

Note

Pour une instance nommée, la commande sqlcmd doit spécifier l’option -S<ComputerName InstanceName.>\<>

C:\> sqlcmd  
1> RESTORE DATABASE master FROM DISK = 'Z:\SQLServerBackups\master.bak' WITH REPLACE;  
2> GO  

Voir aussi

Restaurations de base de données complètes (mode de récupération simple)
Restaurations complètes de bases de données (mode de récupération complète)
Résoudre les problèmes d’utilisateurs orphelins (SQL Server)
Détachement et attachement de base de données (SQL Server)
Reconstruire des bases de données système
Options de démarrage du service moteur de base de données
Gestionnaire de configuration SQL Server
Sauvegarder et restaurer des bases de données système (SQL Server)
RESTORE (Transact-SQL)