Partager via


Utiliser l’Assistant de copie de base de données

L’Assistant Copie de base de données vous permet de déplacer ou de copier facilement des bases de données et de leurs objets d’un serveur à un autre, sans temps d’arrêt du serveur. Vous pouvez également mettre à niveau des bases de données d’une version précédente de SQL Server vers SQL Server 2014. À l’aide de cet Assistant, vous pouvez effectuer les opérations suivantes :

  • Choisissez un serveur source et de destination.

  • Sélectionnez les bases de données à déplacer, copier ou mettre à niveau.

  • Spécifiez l’emplacement du fichier pour les bases de données.

  • Créez des connexions sur le serveur de destination.

  • Copiez d’autres objets, travaux, procédures stockées définies par l’utilisateur et messages d’erreur.

  • Planifiez quand déplacer ou copier les bases de données.

En plus de copier des bases de données, vous pouvez copier les métadonnées associées, par exemple, les connexions et les objets de la base de données master requises par une base de données copiée.

Dans cette rubrique

Avant de commencer

Limitations et restrictions

  • L’Assistant Copie de base de données n’est pas disponible dans l’édition Express.

  • L’Assistant Copie de base de données ne peut pas être utilisé pour copier ou déplacer les bases de données suivantes.

    • Bases de données système

    • Bases de données marquées pour la réplication.

    • Bases de données marquées inaccessibles, chargées, hors connexion, récupération, suspect ou en mode d’urgence.

  • Une fois qu’une base de données a été mise à niveau, elle ne peut pas être rétrogradée vers une version précédente.

  • Si vous sélectionnez l’option Déplacer , l’Assistant supprime automatiquement la base de données source après le déplacement de la base de données. L’Assistant Copie de base de données ne supprime pas une base de données source si vous sélectionnez l’option Copier .

  • Si vous utilisez la méthode SQL Server Management Object pour déplacer le catalogue de texte intégral, vous devez remplir à nouveau l’index après le déplacement.

  • La méthode de détachement et d’attachement détache la base de données, déplace ou copie les fichiers .mdf, .ndf, .ldf, puis réattache la base de données dans le nouvel emplacement. Pour la méthode de détachement et d’attachement, pour éviter la perte de données ou l’incohérence, les sessions actives ne peuvent pas être attachées à la base de données déplacée ou copiée. Si des sessions actives existent, l’Assistant Copie de base de données n’exécute pas l’opération de déplacement ou de copie. Pour la méthode SQL Server Management Object, les sessions actives sont autorisées, car la base de données n’est jamais mise hors connexion.

Conditions préalables

Vérifiez que SQL Server Agent est démarré sur le serveur de destination.

Recommandations

  • Pour garantir des performances optimales d’une base de données mise à niveau, exécutez sp_updatestats (statistiques de mise à jour) sur la base de données mise à niveau.

  • Lorsque vous copiez une base de données vers une autre instance de serveur, pour offrir une expérience cohérente aux utilisateurs et aux applications, vous devrez peut-être recréer certaines ou toutes les 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).

Sécurité

Autorisations

Vous devez être membre du rôle serveur fixe sysadmin sur les serveurs source et de destination.

Copier, déplacer ou mettre à niveau des bases de données

  1. Dans SQL Server Management Studio, dans l’Explorateur d’objets, développez Bases de données, cliquez avec le bouton droit sur une base de données, pointez sur Tâches, puis cliquez sur Copier la base de données.

  2. Dans la page Sélectionner un serveur source , spécifiez le serveur avec la base de données à déplacer ou copier, puis entrez les informations de connexion. Après avoir sélectionné la méthode d’authentification et entré les informations de connexion, cliquez sur Suivant pour établir la connexion au serveur source. Cette connexion reste ouverte tout au long de la session.

    Serveur source
    Sélectionnez le nom du serveur sur lequel se trouvent la base de données ou les bases de données que vous souhaitez déplacer ou copier, ou cliquez sur le bouton Parcourir (...) pour localiser le serveur souhaité. Le serveur doit être au moins SQL Server 2005.

    Utilisez l’authentification Windows
    Autoriser un utilisateur à se connecter via un compte d’utilisateur Microsoft Windows.

    Utiliser l’Authentification SQL Server
    Autoriser un utilisateur à se connecter en fournissant un nom d’utilisateur et un mot de passe d’authentification SQL Server.

    Nom d’utilisateur
    Entrez le nom d’utilisateur avec lequel se connecter. Cette option est disponible uniquement si vous avez sélectionné de vous connecter à l’aide de l’authentification SQL Server.

    Mot de passe
    Entrez le mot de passe de la connexion. Cette option est disponible uniquement si vous avez sélectionné de vous connecter à l’aide de l’authentification SQL Server.

    Prochain
    Connectez-vous au serveur et validez l’utilisateur. Ce processus vérifie si l’utilisateur est membre du rôle serveur fixe sysadmin sur l’ordinateur sélectionné.

  3. Dans la page Sélectionner un serveur de destination , spécifiez le serveur où la base de données sera déplacée ou copiée. Si vous définissez les serveurs source et de destination sur la même instance de serveur, vous allez effectuer une copie d’une base de données. Dans ce cas, vous devez renommer la base de données ultérieurement dans l’Assistant. Le nom de la base de données source peut être utilisé pour la base de données copiée ou déplacée uniquement si les conflits de noms n’existent pas sur le serveur de destination. Si des conflits de noms existent, vous devez les résoudre manuellement sur le serveur de destination avant de pouvoir utiliser le nom de la base de données source.

    Serveur de destination
    Sélectionnez le nom du serveur vers lequel la base de données ou les bases de données seront déplacées ou copiées, ou cliquez sur le bouton Parcourir (...) pour localiser un serveur de destination.

    Remarque

    Vous pouvez utiliser une destination qui est un serveur en cluster ; L’Assistant Copie de base de données vous permet de sélectionner uniquement les lecteurs partagés sur un serveur de destination en cluster.

    Utilisez l’authentification Windows
    Autoriser un utilisateur à se connecter via un compte d’utilisateur Microsoft Windows.

    Utiliser l’Authentification SQL Server
    Autoriser un utilisateur à se connecter en fournissant un nom d’utilisateur et un mot de passe d’authentification SQL Server.

    Nom d’utilisateur
    Entrez le nom d’utilisateur avec lequel se connecter. Cette option est disponible uniquement si vous avez sélectionné l’authentification SQL Server.

    Mot de passe
    Entrez le mot de passe de la connexion. Cette option est disponible uniquement si vous avez sélectionné l’authentification SQL Server.

    Prochain
    Connectez-vous au serveur et validez l’utilisateur. Ce processus vérifie si l’utilisateur dispose des autorisations répertoriées ci-dessus sur les ordinateurs sélectionnés.

  4. Dans la page Sélectionner une méthode de transfert, sélectionnez la méthode de transfert.

    Utiliser la méthode de détachement et d’attachement
    Détachez la base de données du serveur source, copiez les fichiers de base de données (.mdf, .ndf et .ldf) vers le serveur de destination, puis attachez la base de données au serveur de destination. Cette méthode est généralement la méthode la plus rapide, car le travail principal lit le disque source et écrit le disque de destination. Aucune logique SQL Server n’est nécessaire pour créer des objets dans la base de données ou créer des structures de stockage de données. Toutefois, cette méthode peut être plus lente si la base de données contient une grande quantité d’espace alloué mais inutilisé. Par exemple, une base de données nouvelle et pratiquement vide qui est créée alloue 100 Mo, copie l’intégralité de 100 Mo, même si seulement 5 Mo sont pleins.

    Remarque

    Cette méthode rend la base de données indisponible aux utilisateurs pendant le transfert.

    En cas d’échec, rattachez à nouveau la base de données source
    Lorsqu’une base de données est copiée, les fichiers de base de données d’origine sont toujours attachés au serveur source. Utilisez cette zone pour rattacher les fichiers d’origine à la base de données source si un déplacement de base de données ne peut pas être terminé.

    Utiliser la méthode SQL Management Object
    Cette méthode lit la définition de chaque objet de base de données sur la base de données source et crée chaque objet dans la base de données de destination. Ensuite, il transfère les données des tables sources aux tables de destination, recréant des index et des métadonnées.

    Remarque

    Les utilisateurs de base de données peuvent continuer à accéder à la base de données pendant le transfert.

  5. Dans la page Sélectionner une base de données , sélectionnez la base de données ou les bases de données que vous souhaitez déplacer ou copier du serveur source vers le serveur de destination. Consultez limitations et restrictions dans la section « Avant de commencer » de cette rubrique.

    Déplacer
    Déplacez la base de données vers le serveur de destination.

    Copier
    Copiez la base de données sur le serveur de destination.

    Source
    Affiche les bases de données qui existent sur le serveur source.

    État
    Affiche OK si la base de données peut être déplacée. Sinon, affiche la raison pour laquelle la base de données ne peut pas être déplacée.

    Actualiser
    Actualisez la liste des bases de données.

    Prochain
    Démarrez le processus de validation, puis passez à l’écran suivant.

  6. Dans la page Configurer la base de données de destination , modifiez le nom de la base de données le cas échéant et spécifiez l’emplacement et les noms des fichiers de base de données. Cette page s’affiche une fois pour chaque base de données déplacée ou copiée.

  7. Dans la page Sélectionner des objets de base de données , sélectionnez les objets à inclure dans l’opération de déplacement ou de copie. Cette page est disponible uniquement lorsque la source et la destination sont des serveurs différents. Pour inclure un objet, cliquez sur le nom de l’objet dans la zone Objets associés disponibles , puis cliquez sur le >> bouton pour déplacer l’objet vers la zone Objets associés sélectionnés . Pour exclure un objet, cliquez sur le nom de l’objet dans la zone Objets associés sélectionnés , puis cliquez sur le << bouton pour déplacer l’objet vers la zone Objets associés disponibles . Par défaut, tous les objets de chaque type sélectionné sont transférés. Pour choisir des objets individuels de n’importe quel type, cliquez sur le bouton de sélection en regard de n’importe quel type d’objet dans la zone Objets associés sélectionnés . Cela ouvre une boîte de dialogue dans laquelle vous pouvez sélectionner des objets individuels.

    Connexions (toutes les connexions au moment de l’exécution)
    Incluez les connexions dans l’opération de déplacement ou de copie. Option sélectionnée par défaut.

    Procédures stockées à partir d’une base de données master
    Incluez des procédures stockées à partir de la base de données master dans l’opération de déplacement ou de copie.

    Remarque

    Les procédures stockées étendues et leurs DLL associées ne peuvent pas être copiées automatiquement.

    travaux de l'Agent SQL Server
    Incluez des travaux de la base de données msdb dans l’opération de déplacement ou de copie.

    Messages d’erreur définis par l’utilisateur
    Incluez les messages d’erreur définis par l’utilisateur dans l’opération de déplacement ou de copie.

    Points de terminaison
    Incluez les points de terminaison définis dans la base de données source.

    Catalogue de texte intégral
    Incluez des catalogues de texte intégral à partir de la base de données source.

    SSIS Package
    Incluez les packages SSIS définis dans la base de données source.

    Description
    Description de l’objet.

  8. Dans la page Emplacement des fichiers de base de données source , spécifiez un partage de système de fichiers qui contient les fichiers de base de données sur le serveur source. Cela est nécessaire si les instances de serveur source et de destination se trouvent sur différents ordinateurs.

    Base de données
    Affiche le nom de chaque base de données déplacée.

    Emplacement du dossier
    Spécifiez l’emplacement des fichiers de base de données source sur le système de fichiers.

    Par exemple : C :\Program Files\Microsoft SQL Server\MSSQL110. MSSQLSERVER\MSSQL\DATA

    Partage de fichiers sur le serveur source
    Spécifiez l’emplacement des fichiers de base de données source comme chemin d’accès d’un partage de fichiers.

    Par exemple : « \\server_name\C$\Program Files\Microsoft SQL Server\MSSQL110. MSSQLSERVER\MSSQL\Data

  9. L’Assistant Copie de base de données crée un package SSIS pour transférer la base de données. Depuis la page Configurer le Package, personnalisez le package si approprié.

    Emplacement du package
    Affiche l’emplacement d’écriture du package SSIS.

    nom du package
    Entrez un nom pour le package SSIS.

    Options de journalisation
    Indiquez s’il faut stocker les informations de journalisation dans le journal des événements Windows ou dans un fichier texte.

    Chemin du fichier journal d’erreurs
    Fournissez un chemin d’accès pour l’emplacement du fichier journal. Cette option est disponible uniquement si l’option de journalisation du fichier texte est sélectionnée.

  10. Dans la page Planifier le package , spécifiez quand vous souhaitez que l’opération de déplacement ou de copie démarre. Si vous n’êtes pas administrateur système, vous devez spécifier un compte proxy SQL Server Agent qui a accès au sous-système d’exécution du package Integration Services (SSIS).

    Exécuter immédiatement
    Démarrez l’opération de déplacement ou de copie après avoir cliqué sur Suivant.

    Planification
    Démarrez l’opération de déplacement ou de copie ultérieurement. Les paramètres de planification actuels s’affichent dans la zone de description. Pour modifier la planification, cliquez sur Modifier.

    Modification
    Ouvrez la boîte de dialogue Nouvelle planification du travail .

    Compte de proxy des services d'intégration
    Sélectionnez un compte proxy disponible. Pour planifier le transfert, il doit y avoir au moins un compte proxy disponible pour l’utilisateur, configuré avec l’autorisation pour le sous-système d’exécution du package SQL Server Integration Services .

    Pour créer un compte proxy pour l’exécution du package SSIS, dans l’Explorateur d’objets, développez SQL Server Agent, développez Proxys, cliquez avec le bouton droit sur Exécution du package SSIS, puis cliquez sur Nouveau proxy.

    Les membres du rôle serveur fixe sysadmin peuvent sélectionner le compte de service SQL Server Agent, qui dispose des autorisations nécessaires.

  11. Dans la page Terminer l’Assistant , passez en revue le résumé des options sélectionnées. Cliquez sur Retour pour modifier une option. Cliquez sur Terminer pour créer la base de données. Pendant le transfert, la page Exécution de l’opération surveille les informations d’état sur l’exécution de l’Assistant Copie de base de données.

    Action
    Répertorie chaque action en cours d’exécution.

    État
    Indique si l’action dans son ensemble a réussi ou échoué.

    Message
    Fournit tous les messages retournés à partir de chaque étape.

Suivi : après la mise à niveau d’une base de données SQL Server

Après avoir utilisé l’Assistant Copie de base de données pour mettre à niveau une base de données d’une version antérieure de SQL Server vers SQL Server 2014, la base de données devient disponible immédiatement et est automatiquement mise à niveau. Si la base de données a des index de recherche en texte intégral, le processus de mise à niveau importe, réinitialise ou régénère la base de données, selon le paramètre de la propriété du serveur d’options de mise à niveauFull-Text . Si l’option de mise à niveau est définie sur Import ou Rebuild, les index de recherche en texte intégral ne sont pas disponibles pendant la mise à niveau. Selon la quantité de données indexées, l’importation peut prendre plusieurs heures et la reconstruction peut prendre jusqu’à dix fois plus de temps. Notez également que lorsque l’option de mise à niveau est définie sur Importer, si un catalogue de texte intégral n’est pas disponible, les index de recherche en texte intégral associés sont reconstruits. Pour plus d’informations sur l’affichage ou la modification du paramètre de la propriété option de mise à niveauFull-Text , consultez Gérer et surveiller Full-Text recherche d’une instance de serveur.

Si le niveau de compatibilité d’une base de données utilisateur était 100 ou supérieur avant la mise à niveau, il reste le même après la mise à niveau. Si le niveau de compatibilité était 90 dans la base de données mise à niveau, le niveau de compatibilité est défini sur 100, qui est le niveau de compatibilité le plus bas pris en charge dans SQL Server 2014. Pour plus d’informations, consultez ALTER DATABASE - Niveau de compatibilité (Transact-SQL).

Voir aussi

Mettre à niveau une base de données en utilisant les fonctions détacher et rattacher (Transact-SQL)
Créer un proxy SQL Server Agent