Déplacer des collections de sites entre des bases de données dans SharePoint Server
**Sapplique à :**SharePoint Foundation 2013, SharePoint Server 2013, SharePoint Server 2016
**Dernière rubrique modifiée :**2017-09-14
Résumé : Découvrez comment préparer et déplacer des collections de sites entre des bases de données dans SharePoint Server 2016 et SharePoint 2013.
Dans certaines circonstances, vous pouvez déplacer une ou plusieurs collections de sites vers une autre base de données de contenu. Par exemple, une collection de sites peut atteindre une taille trop importante pour la base de données de contenu qui l’héberge et vous devez la déplacer vers une base de données de contenu plus grande. Dans SharePoint Server, cette procédure doit s’envisager comme le déplacement de la collection de sites vers une base de données plus grande.
Néanmoins, si les collections de sites n’atteignent pas leur taille escomptée, vous pouvez, pour des raisons pratiques, combiner plusieurs collections de sites dans une même base de données de contenu. Dans SharePoint Server, ce processus n’entraîne pas la fusion des bases de données de contenu puisque que les collections de sites sont déplacées et jointes à une nouvelle base de données à la place.
Vous pouvez déplacer des collections de sites entre des bases de données au sein d’une batterie de serveurs SharePoint Server à l’aide de Microsoft PowerShell. Vous pouvez également déplacer des collections de sites à l’aide des procédures de sauvegarde et de restauration. Pour plus d’informations sur ces procédures, voir Sauvegarder une collection de sites dans SharePoint Server et Restaurer des collections de sites dans SharePoint Server.
Contenu de cet article :
Avant de commencer
Détermination de la taille de la collection de sites source
Pour déterminer la taille de la collection de sites à l’aide de Windows PowerShell
Pour archiver et découper des données d’audit à l’aide de Windows PowerShell
Déplacement des collections de sites entre les bases de données de contenu
Pour déplacer une collection de sites unique à l’aide de Windows PowerShell
Pour déplacer plusieurs collections de sites à l’aide de Windows PowerShell
Avant de commencer
Pour que cette opération puisse débuter, les conditions suivantes doivent être satisfaites :
La base de données de contenu de destination doit déjà exister.
La base de données de contenu source et la base de données de contenu de destination doivent figurer dans la même instance SQL Server.
La base de données de contenu source et la base de données de contenu de destination doivent être jointes à la même application web. Pour plus d’informations sur l’ajout d’une base de données de contenu à une application web, voir Ajouter des bases de données de contenu dans SharePoint Server.
Détermination de la taille de la collection de sites source
Lorsque vous déplacez des collections de sites vers une autre base de données de contenu, les données d’audit sont copiées. La taille des données d’audit varie selon les paramètres de collecte d’événements de la collection de sites. Si le volume de données d’audit est important, vous pouvez déplacer les données vers une autre base de données avant de déplacer la collection de sites. Pour cela, suivez la procédure Pour archiver et découper des données d’audit à l’aide de Windows PowerShell.
Quelle que soit la raison qui vous incite à déplacer une collection de sites, vous devez toujours débuter la tâche en déterminant la taille de la collection de sites à déplacer. Vous aurez alors la certitude que le disque dur de destination dispose d’un espace suffisant pour le contenu de la collection. Vérifiez que le disque dur de destination est doté d’au moins trois fois l’espace requis pour la collection de sites.
Conseil
Vous pouvez vous tenir régulièrement informé de l’espace utilisé par les collections de sites en créant des quotas de site et des alertes par courrier électronique.
Pour déterminer la taille de la collection de sites à l’aide de PowerShell
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 :
$used = (Get-SPSiteAdministration -Identity <https://ServerName/Sites/SiteName>).DiskUsed $used
Où :
- <https://ServerName/Sites/SiteName> est le nom de la collection de sites.
La quantité d’espace disque en cours d’utilisation par la collection de sites spécifiée est stockée dans la variable $used et apparaît à l’invite de commandes lors de l’exécution de la deuxième commande.
Notes
La quantité d’espace disque affichée n’inclut pas l’espace disque consommé par les données d’audit qui seront déplacées avec la collection de sites.
Pour plus d’informations, voir Get-SPSiteAdministration.
Pour archiver et découper des données d’audit à l’aide de PowerShell
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 la commande suivante :
(Get-SPSite -Identity <https://ServerName/Sites/SiteName>).Audit.TrimAuditLog(deleteEndDate)
Où :
- <https://ServerName/Sites/SiteName> est le nom de la collection de sites.
Pour supprimer les données d’audit sans les archiver au préalable, tapez la commande suivante :
(Get-SPSite -Identity <https://ServerName/Sites/SiteName>).Audit.DeleteEntries(deleteEndDate)
Pour plus d’informations, voir Get-SPSite.
Notes
Nous vous recommandons d’utiliser Windows PowerShell pour les tâches d’administration en ligne de commande. L’outil en ligne de commande Stsadm a été abandonné, mais il est inclus pour assurer la compatibilité avec les versions précédentes.
Déplacement des collections de sites entre des bases de données de contenu
Vous pouvez utiliser la commande PowerShellMove-SPSite pour déplacer des collections de sites entre des bases de données de contenu. Deux procédures sont fournies ici. La première procédure déplace une collection de sites unique vers une nouvelle base de données de contenu ; la seconde déplace plusieurs collections de sites vers une nouvelle base de données de contenu.
Pour déplacer une collection de sites unique
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 la commande suivante :
Move-SPSite <https://ServerName/Sites/SiteName> -DestinationDatabase <DestinationContentDb>
Où :
<https://ServerName/Sites/SiteName> est le nom de la collection de sites.
<DestinationContentDb> est le nom de la base de données de contenu de destination.
Pour déplacer plusieurs collections de sites
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 la commande suivante :
Get-SPSite -ContentDatabase <SourceContentDb> | Move-SPSite -DestinationDatabase <DestinationContentDb>
Où :
<SourceContentDb> est le nom de la base de données de contenu d’origine.
<DestinationContentDb> est le nom de la base de données de contenu de destination.
Cette commande déplace toutes les collections de sites depuis la base de données de contenu source vers la base de données de contenu de destination.
Pour plus d’informations, voir Move-SPSite.
Notes
Nous vous recommandons d’utiliser Windows PowerShell pour les tâches d’administration en ligne de commande. L’outil en ligne de commande Stsadm a été abandonné, mais il est inclus pour assurer la compatibilité avec les versions précédentes.
See also
Ajouter des bases de données de contenu dans SharePoint Server