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 :
Préparez le nouveau serveur de base de données.
Fermez toutes les fenêtres ouvertes de SharePoint Management Shell.
Arrêtez tous les services associés à SharePoint Server et à Internet Information Services (IIS).
Détachez les bases de données de l’instance actuelle de SQL Server.
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.
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.
Attachez les bases de données au nouveau serveur de destination qui exécute SQL Server.
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.
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
Suivez les procédures décrites dans l’article Configurer la sécurité SQL Server pour SharePoint Server pour configurer le nouveau serveur de base de données.
Notes
Le nouveau serveur de base de données doit exécuter la même version de Windows Server et de SQL Server que le serveur de base de données existant, ou l’une des versions suivantes.
Pour SharePoint Server 2016 :-
Windows Server 2012 R2
-
Windows Server 2016
-
SQL Server 2014 Service Pack 1 (SP1)
-
SQL Server 2016
-
Windows Server 2008 R2
-
Windows Server 2008 R2 Service Pack 1 (SP1)
-
Windows Server 2012
-
SQL Server 2008
-
SQL Server 2012
-
SQL Server 2014
-
Pour fermer toutes les sessions ouvertes de SharePoint Management Shell
- 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
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
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
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
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.
Utilisez l’Explorateur Windows pour rechercher les fichiers .mdf, .ldf et .ndf qui sont associés à chaque base de données déplacée.
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
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.
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
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.
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
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.
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.
Démarrez le gestionnaire de configuration SQL Server.
Développez Configuration de SQL Server Native Client, cliquez avec le bouton droit sur Alias, puis cliquez sur Nouvel alias.
Dans la zone Nom d’alias, saisissez le nom du nouvel alias, que vous créez.
Dans la zone Numéro du port , saisissez le numéro de port que le nouvel alias utilisera pour se connecter à SQL Server.
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.
Dans la zone Serveur, saisissez le nom de l’instance actuelle de SQL Server.
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)
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 :
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.
Démarrez SharePoint Management Shell.
À 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.
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 :
Si vous devez utiliser les étapes manuelles
Si vous déplacez les bases de données à partir d’un type de rôle de batterie à serveur unique SharePoint Server 2016 vers un nouveau type de rôle de batterie à serveur unique ou à partir d’une installation à serveur unique SharePoint 2013 vers une nouvelle installation à serveur unique.
Notes
Le rôle de batterie de serveurs à serveur unique remplace le mode d’installation autonome disponible dans les versions précédentes de SharePoint Server. Pour plus d’informations, voir Vue d’ensemble des rôles serveur MinRole dans SharePoint Server 2016.
Si vous utilisez des groupes de disponibilité, vous devez ajouter manuellement les bases de données aux groupes de disponibilité, en fonction de leur prise en charge de la haute disponibilité/récupération d’urgence. Pour plus d’informations, voirAjouter une base de données à un groupe de disponibilité (SQL Server)
Si vous utilisez la mise en miroir SQL, assurez-vous qu’elle est configurée correctement. Pour plus d’informations, voir Configuration de la mise en miroir de bases de données (SQL Server) et Mise en miroir de bases de données (SQL Server).
Scénario 2 : pour mettre à jour les connexions de base de données à l’aide de Microsoft PowerShell, procédez comme suit :
Démarrez SharePoint Management Shell.
À 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()
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()
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
Vérifiez que le compte d’utilisateur qui exécute cette procédure est membre du groupe SharePoint Administrateurs de batterie.
Sur le serveur qui exécute le le site Web Administration centrale de SharePoint, à partir de l’invite de commandes, tapez iisreset /start.
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