Déplacer toutes les bases de données dans SharePoint Server

 

**Sapplique à :**SharePoint Foundation 2013, SharePoint Server 2013, SharePoint Server 2016

**Dernière rubrique modifiée :**2018-02-21

Résumé : Découvrez comment déplacer toutes les bases de données associées à SharePoint Server 2016 et SharePoint 2013 vers un nouveau serveur de base de données.

Vous pouvez utiliser le le site Web Administration centrale de SharePoint ou les outils SQL Server pour déplacer toutes les bases de données qui sont associées à SharePoint Server vers un nouveau serveur de base de données.

Avant de commencer

Les procédures indiquées dans cet article décrivent comment déplacer les types de bases de données suivantes qui sont hébergées sur un seul serveur de base de données :

  • Base de données de configuration

  • Base de données de contenu de l’Administration centrale

  • Bases de données de contenu

  • Bases de données d’application de service

Important

Pour déplacer des fichiers de base de données au sein de la même instance SQL Server, nous vous recommandons d’utiliser la clause FILENAME de l’instruction ALTER DATABASE. Pour plus d’informations, voir Déplacer des bases de données utilisateur.
Pour déplacer une base de données vers une autre instance de SQL Server ou un autre serveur, nous vous recommandons de suivre les procédures des articles Attacher et détacher une base de données (SQL Server) ou Sauvegarde et restauration des bases de données SQL Server.

Vous devez disposer au minimum des autorisations suivantes pour effectuer ce processus :

  • Vous devez être membre du groupe SharePoint Administrateurs de batterie.

  • Sur l’ordinateur qui exécute le site web Administration centrale de SharePoint, vous devez être membre du groupe Administrateurs.

  • Sur le serveur de base de données à partir duquel les bases de données sont déplacées, vous devez être membre :

    • du groupe Administrateurs ;

    • du rôle de base de données fixe db_backupoperator.

  • Sur le serveur de base de données vers lequel les bases de données sont déplacées, vous devez être membre :

    • du groupe Administrateurs ;

    • du rôle de base de données fixe db_owner.

Dans certains environnements, vous devez coordonner les procédures de déplacement avec l’administrateur de base de données. Suivez bien les stratégies et les directives en vigueur pour la gestion des bases de données.

Important

Lorsque vous déplacez des bases de données, les utilisateurs ne peuvent accéder à aucuns sites ni ressources de la batterie de serveurs tant que le processus n’est pas terminé. Dans la mesure du possible, effectuez l’opération de déplacement en dehors des heures de bureau habituelles.

Déplacer toutes les bases de données

Pour déplacer toutes les bases de données d’un serveur de base de données à un autre, vous devez utiliser à la fois SharePoint Server et SQL Server.

Avant de commencer cette opération, passez en revue les différentes étapes du processus :

  1. Préparez le nouveau serveur de base de données.

  2. Fermez toutes les fenêtres ouvertes de SharePoint Management Shell.

  3. Arrêtez tous les services associés à SharePoint Server et à Internet Information Services (IIS).

  4. Détachez les bases de données de l’instance actuelle de SQL Server.

  5. Copiez ou déplacez tous les fichiers associés aux bases de données (.mdf, .ndf et .ldf) vers le nouveau serveur de destination qui exécute SQL Server.

  6. Vérifiez que les connexions, rôles de serveur fixes, rôles de base de données fixes et autorisations pour les bases de données de SQL Server sont tous correctement configurés sur le nouveau serveur de destination.

    Notes

    Il est important que le serveur de destination dans lequel vous déplacez les bases de données possède les mêmes informations de base de données que l’instance SQL Server en cours. Pour obtenir des détails sur la procédure, voir Comment faire pour transférer des noms d’accès et des mots de passe entre instances de SQL Server. Pour plus d’informations, voir Rôles de niveau serveur et Rôles au niveau de la base de données.

  7. Attachez les bases de données au nouveau serveur de destination qui exécute SQL Server.

  8. Utilisez des alias de connexion SQL Server pour faire pointer l’application web vers le nouveau serveur de base de données et mettre à jour tous les serveurs web.

    Si vous ne voulez pas utiliser les alias de connexion SQL Server, utilisez l’une des procédures suivantes pour mettre à jour les connexions de base de données de votre batterie de serveurs SharePoint Server.

    • Scénario 1 : utilisez cette procédure pour mettre à jour les connexions de base de données si vous utilisez SharePoint Server et les groupes de disponibilité SQL Server AlwaysOn pour la haute disponibilité ou la récupération d’urgence.

    • Scénario 2 : utilisez cette procédure si vous devez utiliser les étapes manuelles ou si vous déplacez les bases de données à partir d’une installation de rôle de la batterie SharePoint Server sur un seul serveur vers une nouvelle installation de rôle de la batterie sur un seul serveur.

  9. Redémarrez tous les services que vous aviez arrêtés à l’étape 3.

Pour préparer le nouveau serveur de base de données

Pour fermer toutes les sessions ouvertes de SharePoint Management Shell

  1. Fermez toutes les fenêtres ouvertes de SharePoint Management Shell et toutes les fenêtres d’invite de commandes ouvertes.

Pour arrêter la batterie de serveurs

  1. Sur le serveur qui exécute Administration centrale, arrêtez les services suivants :

    • Administration SharePoint

    • Minuteur SharePoint

    • Suivi SharePoint

    • Hôte de code utilisateur SharePoint

    • Enregistreur VSS SharePoint

    • Service de publication World Wide Web

    • SharePoint Server Search 16

  2. Sur le serveur qui exécute le Administration centrale, à partir de l’invite de commandes, tapez iisreset /stop.

Pour détacher les bases de données

  1. Dans SQL Server Management Studio, sur le serveur de base de données d’origine, détachez les bases de données à déplacer de l’instance à laquelle elles sont attachées. Si vous utilisez de nombreuses bases de données, vous pouvez exécuter un script Transact-SQL pour détacher toutes les bases de données.

    Notes

    Une base de données ne peut pas être détachée si l’une des conditions suivantes est vraie :

    • La base de données est mise en miroir.

    • Une capture instantanée de base de données existe sur la base de données.

    Pour plus d’informations, voir :

Pour déplacer les fichiers de base de données vers le nouveau serveur

  1. Vérifiez que le compte d’utilisateur qui exécute cette procédure est membre des groupes suivants :

    • Sur le serveur de base de données à partir duquel les bases de données sont déplacées, vous devez être membre :

      • du groupe Administrateurs ;

      • du rôle de base de données fixe db_backupoperator.

    • Sur le serveur de base de données vers lequel les bases de données sont déplacées, vous devez être membre :

      • du groupe Administrateurs ;

      • du rôle de base de données fixe db_owner.

  2. Utilisez l’Explorateur Windows pour rechercher les fichiers .mdf, .ldf et .ndf qui sont associés à chaque base de données déplacée.

  3. Copiez ou déplacez les fichiers vers le répertoire de destination sur le nouveau serveur exécutant SQL Server.

Pour configurer les autorisations sur le nouveau serveur

  1. Vérifiez que le compte d’utilisateur qui exécute cette procédure est membre des groupes suivants :

    • du groupe Administrateurs ;

    • du rôle de base de données fixe db_owner.

  2. Sur le serveur de base de données de destination, démarrez Management Studio et transférez vos informations d’identification et autorisations de connexion de l’instance d’origine vers l’instance de destination. Nous vous recommandons de transférer les autorisations en exécutant un script. Vous trouverez un exemple de script dans Comment faire pour transférer des noms d’accès et des mots de passe entre instances de SQL Server.

    Pour plus d’informations sur le transfert de métadonnées SQL Server entre les instances, voir Gérer les métadonnées lors de la mise à disposition d’une base de données sur une autre instance de serveur.

Pour attacher les bases de données à la nouvelle instance de SQL Server

  1. Vérifiez que le compte d’utilisateur qui exécute cette procédure est membre des groupes suivants :

    • du groupe Administrateurs ;

    • du rôle de base de données fixe db_owner.

  2. Sur le serveur de base de données de destination, attachez les bases de données à la nouvelle instance. Pour plus d’informations, voir Attacher une base de données et sp_attach_db (Transact-SQL).

Les procédures suivantes fournissent des méthodes de connexion à la nouvelle instance SQL Server ou de mise à jour des connexions de base de données. Utilisez la procédure qui convient le mieux pour votre environnement de batterie de serveurs SharePoint Server.

Pour faire pointer l’application web vers le nouveau serveur de base de données en configurant des alias de connexion SQL Server

  1. Cette procédure doit être effectuée sur tous les serveurs de la batterie de serveurs SharePoint Server qui se connectent à l’instance de SQL Server qui héberge les bases de données.

  2. Vérifiez que le compte d’utilisateur qui exécute cette procédure est membre des groupes suivants :

    • du groupe Administrateurs ;

    • du rôle de base de données fixe db_owner.

  3. Démarrez le gestionnaire de configuration SQL Server.

  4. Développez Configuration de SQL Server Native Client, cliquez avec le bouton droit sur Alias, puis cliquez sur Nouvel alias.

  5. Dans la zone Nom d’alias, saisissez le nom du nouvel alias, que vous créez.

  6. Dans la zone Numéro du port , saisissez le numéro de port que le nouvel alias utilisera pour se connecter à SQL Server.

  7. Dans la zone Protocole, cliquez sur la flèche de liste déroulante et sélectionnez TCP/IP. Il s’agit du protocole que le nouvel alias utilisera pour se connecter à SQL Server.

  8. Dans la zone Serveur, saisissez le nom de l’instance actuelle de SQL Server.

  9. Répétez les étapes 3 à 8 sur tous les serveurs de la batterie qui se connectent à la nouvelle instance de SQL Server. Pour plus d’informations, voir Créer ou modifier un alias de serveur devant être utilisé par un client (Gestionnaire de configuration SQL Server)

  10. Facultatif : si votre environnement repose sur System Center 2012 - Data Protection Manager (DPM) ou sur une application tierce qui utilise l’infrastructure du service VSS pour la sauvegarde et la récupération, vous devez installer les composants de connectivité de SQL Server sur chaque serveur web ou serveur d’applications en exécutant le programme d’installation de SQL Server. Pour plus d’informations, consultez l’article relatif à l’installation de SQL Server 2014 avec l’Assistant Installation et la rubrique Installation et mise à niveau de Windows Server.

Notes

Vous pouvez utiliser ces cmdlets Microsoft PowerShell pour déployer, gérer et supprimer des groupes de disponibilité dans SQL Server avec SharePoint Server :

  • Add-DatabaseToAvailabilityGroup

  • Remove-DatabaseFromAvailabilityGroup

  • Get-AvailabilityGroupStatus

Utilisez la procédure suivante pour mettre à jour les connexions de base de données si vous utilisez SharePoint Server et les groupes de disponibilité SQL Server AlwaysOn pour la haute disponibilité ou la récupération d’urgence.

Scénario 1 : pour mettre à jour les connexions de base de données à l’aide de PowerShell, procédez comme suit :

  1. Vérifiez que vous êtes membre :

    • Rôle serveur fixe securityadmin sur l’instance SQL Server

    • du rôle de base de données fixe db_owner sur toutes les bases de données à mettre à jour ;

    • du groupe Administrateurs sur le serveur sur lequel vous exécutez les applets de commande PowerShell.

    Un administrateur peut utiliser la cmdlet Add-SPShellAdmin pour accorder les autorisations d’utilisation des cmdlets SharePoint Server.

    Notes

    Si vous ne disposez pas des autorisations, contactez votre administrateur d’installation ou votre administrateur SQL Server afin de les demander. Pour plus d’informations sur les autorisations PowerShell, voir Add-SPShellAdmin.

  2. Démarrez SharePoint Management Shell.

  3. À l’invite de commandes PowerShell, tapez les commandes suivantes :

    Add-DatabaseToAvailabilityGroup -AGName "<AGGroupName>" -DatabaseName "<DatabaseName>" [-FileShare "<\\server\share>"]
    

    Où :

    • <AGGroupName> est le nom du groupe de disponibilité.

    • <DatabaseName> est le nom de la base de données que vous êtes en train d’ajouter au groupe de disponibilité.

    • Si le paramètre facultatif -FileShare est utilisé, <\\server\share> est le nom du serveur et du partage que vous utilisez.

  4. Répétez ces étapes pour toutes les bases de données que vous déplacez, y compris les bases de données de contenu de configuration et de l’administration centrale.

Utilisez la procédure suivante pour les scénarios suivants :

Scénario 2 : pour mettre à jour les connexions de base de données à l’aide de Microsoft PowerShell, procédez comme suit :

  1. Démarrez SharePoint Management Shell.

  2. À l’invite de commandes PowerShell, tapez les commandes suivantes :

    $db = get-spdatabase -identity <guid>
    

    Où :

    • <GUID> est l’ID de la base de données que vous déplacez.

    Notes

    Utilisez Get-spdatabase sans paramètres pour afficher la liste de toutes les bases de données avec les GUID.

    $db.ChangeDatabaseInstance("<DBServerName>")
    

    Où :

    • <DBServerName> est le nom ou l’alias du nouveau serveur SQL Server ou le nom DNS de l’écouteur du groupe de disponibilité AlwaysOn.

    • $db.Update()
      
  3. Si vous utilisez la mise en miroir de bases de données SQL Server, vous devez renseigner la propriété FailoverServiceInstance dans la base de données SharePoint.

    $db.failoverserviceinstance("<DBServerName>")
    

    Où :

    • <DBServerName> est le nom ou l’alias du serveur SQL Server mis en miroir.

      $db.update()
      
  4. Répétez ces étapes pour toutes les bases de données que vous déplacez, y compris les bases de données de contenu de configuration et de l’administration centrale.

Pour redémarrer les services dans la batterie de serveurs

  1. Vérifiez que le compte d’utilisateur qui exécute cette procédure est membre du groupe SharePoint Administrateurs de batterie.

  2. Sur le serveur qui exécute le le site Web Administration centrale de SharePoint, à partir de l’invite de commandes, tapez iisreset /start.

  3. Dans le composant logiciel enfichable Services de Microsoft Management Console, démarrez tous les services liés à SharePoint Server et à Services Internet (IIS). Il s’agit des services suivants :

    • Administration SharePoint

    • Minuteur SharePoint

    • Suivi SharePoint

    • Hôte de code utilisateur SharePoint

    • Enregistreur VSS SharePoint

    • Service de publication World Wide Web

    • SharePoint Server Search

See also

Types et descriptions des bases de données dans SharePoint Server

Ajouter un serveur de base de données à une batterie existante dans SharePoint 2013
Guide de référence rapide : Bases de données SharePoint Server 2016
Bases de données qui prennent en charge SharePoint 2013