Copier des bases de données avec la sauvegarde et la restauration

S’applique à :SQL Server

Dans SQL Server, vous pouvez créer une base de données en restaurant une sauvegarde d’une base de données utilisateur créée à l’aide de SQL Server 2005 (9.x) ou d’une version ultérieure. Toutefois, les sauvegardes de master, de modèle et de msdb créées à l’aide d’une version antérieure de SQL Server ne peuvent pas être restaurées par SQL Server. En outre, les sauvegardes SQL Server ne peuvent pas être restaurées par une version antérieure de SQL Server.

Important

SQL Server 2016 utilise un chemin d’accès par défaut différent de celui des versions précédentes. Par conséquent, pour restaurer des sauvegardes d'une base de données créée à l'emplacement par défaut de versions antérieures, vous devez utiliser l'option MOVE. Pour plus d'informations sur le nouveau chemin par défaut, consultez Emplacements des fichiers pour les instances par défaut et les instances nommées de SQL Server. Pour plus d'informations sur le déplacement des fichiers d'une base de données, consultez la section « Déplacement des fichiers d'une base de données » dans les pages suivantes de cette rubrique.

Étapes générales de l’utilisation de la sauvegarde et de la restauration pour copier une base de données

Lorsque vous utilisez la sauvegarde et la restauration pour copier une base de données vers une autre instance de SQL Server, les ordinateurs source et de destination peuvent correspondre à n’importe quelle plateforme qui exécute SQL Server.

Voici les étapes de base :

  1. Sauvegardez la base de données source, qui peut résider sur une instance de SQL Server 2005 (9.x) ou une version ultérieure. L’ordinateur sur lequel cette instance de SQL Server est en cours d’exécution est l’ordinateur source.

  2. Sur l’ordinateur de destination de la copie de la base de données ( ordinateur de destination), connectez-vous à l’instance de SQL Server sur laquelle vous voulez restaurer la base de données. Si nécessaire, sur l’instance de serveur de destination , créez les mêmes unités de sauvegarde que celles utilisées pour sauvegarder les bases de données sources .

  3. Restaurez la sauvegarde de la base de données source sur l’ordinateur de destination . La restauration automatique de la base de données crée tous les fichiers de la base de données.

D’autres points sont susceptibles d’affecter cette procédure :

Avant la restauration des fichiers de la base de données

La restauration automatique d’une base de données crée les fichiers de base de données nécessaires à la base de données à restaurer. Par défaut, les fichiers créés par SQL Server pendant la restauration utilisent les mêmes noms et chemins que les fichiers de sauvegarde de la base de données d’origine sur l’ordinateur source.

Lorsque vous restaurez la base de données, vous pouvez, si vous le voulez, définir le mappage de lecteur, les noms de fichiers ou le chemin de la base de données à restaurer.

Cela peut être nécessaire dans les cas suivants :

  • La structure de répertoire ou le mappage de lecteur utilisé par la base de données sur l'ordinateur d'origine n'existe pas sur l'autre ordinateur. Par exemple, il est possible que la sauvegarde contienne un fichier à restaurer sur le lecteur E par défaut, mais que l'ordinateur de destination n'ait pas de lecteur E.

  • L'emplacement cible peut ne pas disposer d'un espace suffisant.

  • Vous réutilisez un nom de base de données qui existe sur la destination de la restauration et un de ses fichiers porte le même nom qu'un fichier de base de données du jeu de sauvegarde, auquel cas, une des actions suivantes se produit :

    • Si le fichier de base de données existant peut être remplacé, il l'est (cela n'affecte pas un fichier appartenant à un nom de base de données différent).

    • Si le fichier existant ne peut pas être remplacé, une erreur de restauration se produit.

Pour éviter des erreurs et des conséquences inattendues, avant l’opération de restauration, vous pouvez utiliser la table d’historique backupfile pour identifier la base de données et les fichiers journaux de la sauvegarde que vous envisagez de restaurer.

Déplacement des fichiers de la base de données

Si les fichiers figurant dans la sauvegarde de la base de données ne peuvent pas être restaurés sur l’ordinateur de destination, il est nécessaire de transférer les fichiers vers un nouvel emplacement lors de leur restauration. Par exemple :

  • Vous voulez restaurer une base de données depuis des sauvegardes créées dans l'emplacement par défaut de la version antérieure.

  • Il peut s'avérer nécessaire de restaurer certains fichiers de la base de données de la sauvegarde sur un lecteur différent à cause des capacités de stockage. Cela se produit fréquemment car, à l’intérieur d’une organisation, le nombre et la taille des unités de disques, ainsi que les configurations logicielles diffèrent souvent d’un ordinateur à l’autre.

  • Il peut s'avérer nécessaire de créer une copie d'une base de données existante sur le même ordinateur afin de procéder à des tests. Dans ce cas, les fichiers de la base de données initiale existent déjà et il faut donc préciser des noms de fichiers différents lors de la création de la base de données pendant la restauration.

Pour plus d'informations, consultez la section « Pour restaurer des fichiers et des groupes de fichiers dans un nouvel emplacement » dans les pages suivantes de cette rubrique.

Modification du nom de la base de données

Le nom de la base de données peut être modifié lors de la restauration sur l'ordinateur de destination, sans avoir à restaurer d'abord la base de données puis modifier le nom manuellement. Il peut s'avérer nécessaire, par exemple, de remplacer le nom de la base de données Sales par SalesCopy pour indiquer qu'il s'agit d'une copie d'une base de données.

Le nom de la base de données fourni explicitement lors de la restauration d’une base de données est utilisé automatiquement comme nouveau nom. Le nom de la base de données n'existant pas encore, un nouveau nom est créé en utilisant les fichiers figurant dans la sauvegarde.

Lors de la mise à niveau d’une base de données en utilisant la restauration

Lors de la restauration de sauvegardes à partir d'une version antérieure, il est utile de savoir à l'avance si le chemin d'accès (lecteur ou répertoire) de chaque catalogue de texte intégral figurant dans la sauvegarde existe sur l'ordinateur de destination. Pour répertorier les noms logiques et les noms physiques, le chemin d’accès et le nom de fichier) de chaque fichier d’une sauvegarde, y compris les fichiers catalogue, utilisez une instruction RESTORE FILELISTONLY FROM <backup_device> . Pour plus d’informations, consultez RESTORE FILELISTONLY (Transact-SQL).

Si le même chemin n'existe pas sur l'ordinateur de destination, vous pouvez procéder de l'une des deux manières suivantes :

  • Créez le mappage lecteur/répertoire équivalent sur l'ordinateur de destination.

  • Transférez les fichiers de catalogues vers un nouvel emplacement lors de la restauration en utilisant la clause WITH MOVE dans l'instruction RESTORE DATABASE. Pour plus d’informations, consultez RESTORE (Transact-SQL).

Pour plus d’informations sur les autres options de mise à niveau des index de recherche en texte intégral, consultez Mise à niveau de la fonction de recherche en texte intégral.

Propriété de la base de données

Lorsqu’une base de données est restaurée sur un autre ordinateur, la connexion SQL Server ou l’utilisateur Microsoft Windows qui lance l’opération de restauration devient automatiquement le propriétaire de la nouvelle base de données. Lorsque la base de données est restaurée, l'administrateur du système ou le nouveau propriétaire de la base de données peut modifier la propriété de la base de données. Pour éviter la restauration non autorisée d’une base de données, utilisez des mots de passe de supports de sauvegarde ou de jeux de sauvegardes.

Gestion de métadonnées lors de la restauration vers une autre instance de serveur

Lorsque vous restaurez une base de données sur une autre instance de serveur, pour garantir une expérience cohérente aux utilisateurs et aux applications, vous devrez peut-être recréer tout ou partie des métadonnées de la base de données, telles que les connexions et les travaux, sur l'autre instance de serveur. Pour plus d’informations, consultez Gérer les métadonnées durant la mise à disposition d’une base de données sur une autre instance de serveur (SQL Server).

Afficher les données et les fichiers journaux dans un jeu de sauvegarde

Restaurer des fichiers et groupes de fichiers dans un nouvel emplacement

Restaurer des fichiers et groupes de fichiers en remplaçant des fichiers existants

Restaurer une base de données avec un nouveau nom

Redémarrer une opération de restauration interrompue

Modifier le propriétaire de la base de données

Copier une base de données à l’aide de SMO (SQL Server Management Objects)

Voir aussi

Copier des bases de données sur d’autres serveurs
Emplacements des fichiers pour les instances par défaut et les instances nommées de SQL Server
RESTORE FILELISTONLY (Transact-SQL)
RESTORE (Transact-SQL)