Mergecontentdbs : opération Stsadm (Windows SharePoint Services)
Mise à jour : 2009-04-28
Description
Permet à une collection de sites d’être déplacée d’une base de données de contenu à une autre lorsque les paramètres sourcedatabasename et destinationdatabasename sont spécifiés.
Les bases de données source et de destination doivent être dans la même instance de Microsoft SQL Server et doivent être attachées à la même application Web. Pour des performances optimales, ne déplacez pas plus de 250 collections de sites à la fois. Le déplacement de davantage de collections de sites à la fois peut considérablement diminuer les performances.
Remarque : |
---|
L’opération mergecontentdbs a été introduite pour la première fois dans Windows SharePoint Services 3.0 Service Pack 1. |
Important : |
---|
La mise à jour cumulative d’avril résout des problèmes connus qui affectent l’opération mergecontentdbs de Stsadm. Pour plus d’informations sur ce problème, voir La commande STSADM MergeContentDBs peut provoquer une altération de la base de données dans Windows SharePoint Services 3.0. Si vous prévoyez de fusionner ou de fractionner des bases de données de contenu, il est fortement recommandé d’installer la mise à jour cumulative d’avril. |
Syntaxe
stsadm -o mergecontentdbs
-url <nom URL>
-sourcedatabasename <nom de la base de données source>
-destinationdatabasename <nom de la base de données de destination>
[-operation] {1-3}
** 1 - Analyser (par défaut)**
** 2 - Fusion complète des bases de données**
** 3 - Lire depuis un fichier**
[-filename] <fichier généré à partir de stsadm -o enumsites>
Paramètres
Nom du paramètre |
Valeur |
Obligatoire ? |
Description |
url |
Une URL valide, telle que *http://nom_serveur* |
Oui |
URL de l’application Web dont vous voulez fusionner les bases de données. |
sourcedatabasename |
Un nom de base de données valide, tel que « Contenu_WSS_1 » |
Oui |
Le nom de la base de données d’où des collections de sites seront déplacées. |
destinationdatabasename |
Un nom de base de données valide, tel que « Contenu_WSS_2 » |
Oui |
Nom de la base de données vers laquelle les collections de sites seront déplacées. |
operation |
Une des valeurs suivantes :
|
Non |
1 - Analyser : indique que la fenêtre de commande affiche le nombre actuel de collections de sites, la taille de la base de données, le nombre maximal de collections de sites et le nombre de collections de sites qui peuvent être ajoutées avant d’atteindre le nombre maximal de collections de sites pour chaque base de données de contenu. En outre, la fenêtre de commande affiche une recommandation quant à la base de données de contenu à utiliser pour la source et à la base de données à utiliser pour la destination (en faisant l’hypothèse que toutes les collections de sites de la base de données seront déplacées). Cette recommandation repose sur la base de données de contenu qui contient le moins de données et qui serait par conséquent la plus rapide à déplacer. Il s’agit de la valeur par défaut. 2 - Fusion complète des bases de données : fusionne la totalité de la base de données de contenu d’une base de données dans une autre. Une fois que l’opération est terminée, la base de données de contenu source existe encore dans Microsoft SQL Server et est encore attachée à l’application Web. Elle ne contient tout simplement pas de collections de sites. 3 - Lire depuis un fichier : déplace seulement un sous-ensemble des collections de sites de la base de données source vers la base de données de destination. Les collections de sites à déplacer doivent être répertoriées dans un fichier spécifié à l’aide du paramètre filename. |
filename |
Un nom de fichier valide, tel que « sites.xml » |
Non |
Spécifie une collection de sites spécifique dans la base de données de contenu source, que vous voulez déplacer vers la base de données de destination Ces informations sont obtenues à l’aide du paramètre databasename de l’opération Enumsites. Notes Le paramètre databasename a été introduit pour la première fois dans Windows SharePoint Services 3.0 avec le Service Pack 1. Notes Vous pouvez utiliser l’opérateur de redirection « > » pour capturer la sortie XML de l’opération enumsites dans un fichier texte. |
Remarques
Avant d’exécuter l’opération mergecontentdbs de Stsadm, vous devez :
- Disposer d’un espace disque disponible d’au moins trois fois la taille de la collection de sites source. Utilisez Enumsites : opération Stsadm (Windows SharePoint Services) pour déterminer la taille de la collection de sites.
Pour déplacer une collection de sites d’une base de données à une autre, vous devez être à la fois membre du groupe Administrateurs de batterie et du groupe Administrateurs local, et vous devez disposer d’une autorisation Contrôle total pour chaque collection de sites à déplacer. Pour accorder cette autorisation, dans l’administration centrale, cliquez sur Gestion des applications, puis sur Sécurité des applications et enfin sur Stratégie de l’application Web. Le compte que vous utilisez pour accomplir cette procédure doit être membre du rôle de base de données fixe db_owner dans SQL Server.
Une fois que le site a été correctement déplacé, supprimez ou modifiez votre niveau d’autorisation de compte dans la page Stratégie de l’application Web. Si votre compte est utilisé pour d’autres services, rétablissez son niveau d’autorisation d’origine.
Si vous ne disposez pas des autorisations nécessaires pour exécuter l’opération, le message d’erreur suivant s’affiche : « Déplacement des sites en cours... Un site existe déjà à l’adresse /sites/test. Supprimez ce site avant de créer un site avec la même URL, choisissez une autre URL ou créez une inclusion dans le chemin spécifié. »
Une fois que le déplacement est terminé, vous devez exécuter la commande iisreset /noforce sur chacun des serveurs Web frontaux de votre batterie de serveurs. Si une grande quantité de données a été déplacée, vous pouvez réduire les bases de données SQL et les journaux des transactions. Pour plus d’informations sur la réduction des bases de données SQL, voir Procédure : réduction d’une base de données (SQL Server Management Studio) (https://msdn2.microsoft.com/fr-fr/library/ms189035.aspx?amp%3bclcid=0x40c).
Exemples
Fusionner des bases de données de contenu à l’aide du paramètre filename
Dans cet exemple, Contenu_WSS_1 et Contenu_WSS_2 sont les noms des bases de données de contenu**.**
Pour créer une liste de sites dans le fichier sites.xml à l’aide de l’opération du redirecteur « > », utilisez la syntaxe suivante :
stsadm -o enumsites -url http://<nom_serveur> –databasename Contenu_WSS_1 > sites.xml
Remarque : |
---|
L’opérateur de redirection « > » redirige la sortie vers un fichier texte nommé sites.xml. Vous pouvez ensuite modifier le fichier sites.xml pour répertorier les collections de sites à déplacer. |
Pour déplacer les collections de sites spécifiées dans le fichier sites.xml d’une base de données de contenu à une autre, utilisez la syntaxe suivante :
stsadm -o mergecontentdbs -url http://<nom_serveur> -sourcedatabasename Contenu_WSS_1 -destinationdatabasename Contenu_WSS_2 -operation 3 -filename sites.xml
Remarque : |
---|
Le chiffre 3 du paramètre operation correspond à « Lire depuis un fichier ». |
Une fois que la collection de sites est déplacée et pour s’assurer que les modifications prennent effet sur tous les serveurs Web frontaux de la batterie de serveurs, exécutez la commande suivante à partir d’une invite de commandes :
iisreset /noforce
Voir aussi
Autres ressources
L’opération Mergecontentdbs peut provoquer une altération de la base de données