Gérer le stockage BLOB distant (RBS) dans SharePoint Server
S’APPLIQUE À :2013 2016 2019 Édition d’abonnement SharePoint dans Microsoft 365
Vous effectuez la plupart des tâches de maintenance associées à RBS dans SharePoint Server à l'aide du chargé de maintenance RBS, outil disponible dans SQL Server. Cet outil effectue un nettoyage de la mémoire (garbage collection) périodique et d'autres tâches de maintenance pour un déploiement RBS SharePoint Server. Vous pouvez planifier ces tâches pour chaque base de données qui utilise le stockage BLOB distant à l'aide du Planificateur de tâches Windows ou de l'Agent Microsoft SQL Server. Vous devez mettre en service le chargé de maintenance RBS à l'aide de paramètres de ligne de commande ou par le biais d'un fichier XML. Dans le cas des bases de données répliquées ou en miroir, vous pouvez exécuter le chargé de maintenance RBS vis-à-vis de toute instance.
Configurer le nettoyage de la mémoire RBS
SharePoint Server marque automatiquement pour la suppression les données BLOB supprimées ou non référencées. SharePoint Server calcule le nombre de références aux objets BLOB en consultant la liste des ID d'objet BLOB stockés par SharePoint Server dans ses bases de données de contenu au moment de la suppression. Toute référence à un objet BLOB présente dans les tables du magasin RBS, mais absente dans la base de données de contenu, est supposée avoir été supprimée par SharePoint Server et sera marquée pour la suppression. Les objets BLOB qui ne sont pas présents dans la base de données de contenu et qui ont été créés avant la plage de nettoyage orphelin, décrite plus loin dans cet article, sont également supposés avoir été supprimés par SharePoint Server et seront marqués pour la suppression.
Étant donné que SharePoint Server classifie les références d'objets BLOB à partir des colonnes RBS de la base de données de contenu, chaque colonne RBS doit avoir un index valide pour pouvoir être inscrite dans RBS.
L'outil Chargé de maintenance RBS SQL Server supprime les éléments marqués par SharePoint Server pour la suppression. Vous devez planifier les tâches de nettoyage afin qu'elles soient exécutées pendant des heures creuses de manière à réduire l'impact sur les opérations de base de données ordinaires.
L’exécution du nettoyage de la mémoire RBS suit les trois étapes ci-dessous :
Analyse de référence. La première étape permet de comparer le contenu des tables RBS de la base de données de contenu SharePoint Server qui contient les tables internes propres à RBS et d'identifier les objets BLOB qui ne sont plus référencés. Tout objet BLOB non référencé est marqué pour la suppression.
Supprimer la propagation. L'étape suivante permet d'identifier les objets BLOB qui ont été marqués pour la suppression pour une période supérieure à la valeur garbage_collection_time_window et de les supprimer du magasin d'objets BLOB.
Nettoyage orphelin. La dernière étape permet de déterminer si des objets BLOB sont présents dans le magasin d'objets BLOB mais absents des tables RBS. Ces objets BLOB orphelins sont ensuite supprimés.
Configuration du nettoyage de la mémoire RBS
Vous pouvez configurer le nettoyage de la mémoire en spécifiant les paramètres du chargé de maintenance RBS et les paramètres de base de données suivants :
Planification du chargé de maintenance. Ce paramètre détermine la fréquence d'exécution du chargé de maintenance RBS.
Durée de la tâche. Ce paramètre détermine la durée maximale de l'exécution d'une tâche du chargé de maintenance RBS. La valeur par défaut est de deux heures.
Vous devez configurer le chargé de maintenance RBS afin que son activité ait un impact minimal sur l'activité ordinaire. Pour plus d'informations sur les paramètres de nettoyage de la mémoire de base de données, notamment sur leur configuration, voir l'article sur l'exécution du chargé de maintenance RBS.
Vérifications de cohérence du stockage BLOB distant et du magasin d’objets BLOB
Le chargé de maintenance RBS vérifie l'intégrité des références aux objets BLOB RBS et corrige les erreurs détectées. Il effectue plusieurs vérifications de cohérence pour la base de données, vérifiant notamment qu'il existe des index pour les colonnes RBS et que tous les objets BLOB référencés par SharePoint Server existent dans le stockage BLOB distant.
La vérification de cohérence de table auxiliaire permet de vérifier que les tables auxiliaires RBS sont dans un état cohérent. Les contrôles effectués sont les suivants :
vérification que chaque colonne de table RBS a un index valide ;
vérification qu’il existe des colonnes de tables RBS, qu’elles ont des index activés et valides et qu’elles sont du type de colonne correct.
Bien que cela soit possible, il est déconseillé de désactiver les vérifications de cohérence suivantes, car elles permettent de garantir la cohérence de votre magasin d'objets BLOB. Par défaut, les vérifications de cohérence suivantes sont activées :
vérification que tous les objets BLOB référencés par SharePoint Server sont présents dans les tables RBS ;
vérification qu’aucun objet BLOB n’est marqué à la fois comme utilisé et comme supprimé.
Tout problème découvert est consigné dans le journal et le chargé de maintenance RBS tente de le résoudre en créant les entrées d’index manquantes, en désinscrivant les colonnes manquantes ou en marquant comme non supprimés les objets en cours d’utilisation.
Exécution du chargé de maintenance RBS
Le stockage Blob distant nécessite de définir une chaîne de connexion à chaque base de données qui l’utilise avant d’exécuter le chargé de maintenance RBS. Cette chaîne est stockée dans un fichier de configuration dans le <dossier chemin> d’installation RBS\Stockage Blob distant Microsoft SQL 10.50\Maintainer qui est généralement créé pendant l’installation. Le chargé de maintenance RBS peut être exécuté manuellement en exécutant le programme Microsoft.Data.SqlRemoteBlobs.Maintainer.exe avec les paramètres de ligne de commande répertoriés dans l'article relatif à l'exécution du chargé de maintenance RBS.
Vous devez planifier une tâche du chargé de maintenance RBS distincte pour chaque base de données qui utilise le stockage BLOB distant. Les étapes suivantes décrivent comment planifier une tâche du chargé de maintenance RBS.
Pour planifier une tâche du chargé de maintenance RBS, procédez comme suit :
Vérifiez que vous disposez d’autorisations d’écriture pour le dossier où vous avez installé RBS.
Ajoutez une chaîne de connexion au répertoire> d’installation _<RBS_Maintainer\Microsoft.Data.SqlRemoteBlobs.Maintainer.exe.config fichier pour la tâche de maintenance RBS à effectuer. Le programme d'installation RBS crée une chaîne de connexion nommée RBSMaintainerConnection à l'aide des informations de connexion qui ont été fournies durant l'installation. Toutefois, de nouvelles chaînes de connexions doivent être ajoutées pour chaque base de données supplémentaire.
Si vous utilisez l'authentification Windows, il n'est pas nécessaire que la chaîne de connexion soit chiffrée. Vous pouvez ajouter la chaîne de connexion non chiffrée en exécutant la commande suivante :
aspnet_regiis -pef connectionStrings . -prov DataProtectionConfigurationProvider
rename web.config Microsoft.Data.SqlRemoteBlobs.Maintainer.exe.config
Si vous utilisez l'authentification SQL, les chaînes de connexions du chargé de maintenance RBS sont stockées dans un format chiffré. Par conséquent, pour ajouter des chaînes de connexions, les nouvelles chaînes doivent être chiffrées ou toutes les chaînes de connexions doivent être déchiffrées. Les chaînes chiffrées doivent être ajoutées une par une. Toutefois, toutes les chaînes de connexion peuvent être déchiffrées en même temps à l’aide de l’outil de\Aspnet_regiis.exe version> %windir%\Microsoft.net\Framework\<, qui est distribué dans le cadre de Microsoft .NET Framework.
Exécutez les commandes suivantes pour déchiffrer les chaînes de connexion et stocker les résultats dans un fichier Web.config :
rename Microsoft.Data.SqlRemoteBlobs.Maintainer.exe.config web.config
aspnet_regiis -pdf connectionStrings
Les chaînes peuvent être ajoutées au format déchiffré et le fichier peut être chiffré et renommé Microsoft.Data.SqlRemoteBlobs.Maintainer.exe.config à l’aide des commandes suivantes :
aspnet_regiis -pef connectionStrings . -prov DataProtectionConfigurationProvider
rename web.config Microsoft.Data.SqlRemoteBlobs.Maintainer.exe.config
Créez une tâche de planificateur Windows afin d'exécuter la tâche du chargé de maintenance RBS pour chaque base de données concernée. Si vous avez exécuté le programme d'installation RBS en mode d'interface utilisateur graphique, il a créé automatiquement une tâche de planificateur Windows. En revanche, si vous l'avez exécuté en mode de ligne de commande, vous devez effectuer les étapes suivantes chaque fois que vous planifiez une tâche pour exécuter le chargé de maintenance RBS :
Dans le menu Démarrer, cliquez sur Outils d'administration, puis sur Planificateur de tâches.
Dans le menu Action, cliquez sur Créer une tâche.
Sous l'onglet Actions, cliquez sur Nouveau.
Dans la boîte de dialogue Nouvelle action , dans la liste déroulante Action , sélectionnez Démarrer un programme.
Sous Paramètres, dans la zone Programme/script, accédez au répertoire> d’installation RBS du fichier< binaire de maintenance\Maintainer\Microsoft.Data.SqlRemoteBlobs.Maintainer.exe et, dans la zone de texte Ajouter des arguments (facultatif), ajoutez tous les arguments facultatifs. Les valeurs par défaut suivantes sont créées par le programme d'installation :
<-ConnectionStringName RBSMaintainerConnection>, <-Operation GarbageCollection ConsistencyCheck ConsistencyCheckForStores>, <-GarbageCollectionPhases rdo>, <-ConsistencyCheckMode r>, <-TimeLimit 120>
Cliquez sur OK.
Sous l'onglet Déclencheurs, cliquez sur Nouveau.
Dans la boîte de dialogue Nouveau déclencheur , planifiez la tâche, puis cliquez sur OK. Il est recommandé de planifier la tâche de manière à ce qu'elle s'exécute durant les périodes de faible activité du système.
Sous l'onglet Général, sous Sécurité, vérifiez que le compte d'utilisateur dispose des autorisations appropriées pour exécuter la tâche. Vous pouvez modifier les autorisations en cliquant sur Utilisateur ou groupe.
Sous l'onglet Général, cliquez sur Exécuter même si aucun utilisateur n'a ouvert de session, puis sur OK.
Voir aussi
Concepts
Vue d'ensemble de la fonctionnalité de stockage BLOB distant (RBS) dans SharePoint Server
Migrer le contenu vers ou hors de RBS dans SharePoint Server
Désactiver le stockage BLOB distant (RBS) sur des bases de données de contenu dans SharePoint Server