Compréhension de la sauvegarde de Team Foundation Server

Vous pouvez aider à protéger votre déploiement contre la perte de données en définissant un calendrier de sauvegardes régulières pour les bases de données dont Visual Studio Team Foundation Server (TFS) dépend. Pour restaurer votre déploiement de Team Foundation dans son intégralité, vous devez d'abord sauvegarder toutes les bases de données pour TFS. Si votre déploiement inclut les Produits SharePoint ou SQL Server Reporting Services, vous devez également sauvegarder les bases de données utilisées par TFS dans ces composants. Pour éviter les erreurs de synchronisation ou d'incompatibilité des données, vous devez synchroniser toutes les sauvegardes à un horodatage identique. L'utilisation de transactions marquées est la méthode la plus facile pour garantir une synchronisation réussie. En marquant régulièrement les transactions associées dans chaque base de données Team Foundation, vous établissez une série de points de récupération communs dans les bases de données. Pour obtenir une aide pas à pas sur la sauvegarde d'un déploiement de serveur unique qui utilise SharePoint Foundation et la création de rapports, consultez Configurer une planification de sauvegarde.

Sauvegarde de bases de données

Vous pouvez créer des sauvegardes des bases de données utilisées par TFS comme aspect clé de la protection de votre déploiement de Team Foundation contre la perte de données. Le tableau suivant et les illustrations associées indiquent les bases de données que vous devez sauvegarder et représentent des exemples de la distribution physique de ces bases de données dans un déploiement.

Type de base de données

Produit

Composant facultatif ?

Base de données de configuration

Team Foundation Server

Non

Base de données de l'entrepôt

Team Foundation Server

Non

Bases de données de collection de projets d'équipe

Team Foundation Server

Non

Bases de données des Produits SharePoint

Produits SharePoint

Oui

Bases de données Reporting

SQL Server Reporting Services

Oui

Bases de données Analysis

SQL Server Analysis Services

Oui

Topologies de déploiement

Selon la configuration de votre déploiement, toutes les bases de données devant être sauvegardées peuvent se trouver sur le même serveur physique, comme dans cet exemple de topologie. Cet exemple n'inclut pas les Produits SharePoint ou Reporting Services, vous n'avez donc pas à sauvegarder toutes les bases de données associées à Reporting, à Analysis ou aux Produits SharePoint.

Topologie simple avec les bases de données

Les bases de données peuvent également être distribuées sur de nombreux serveurs et batteries de serveurs. Dans cet exemple de topologie, vous devez sauvegarder les bases de données suivantes, mises à l'échelle sur six serveurs ou batteries de serveurs :

  • la base de données de configuration

  • la base de données d'entrepôt

  • les bases de données de collection de projets d'équipe qui se trouvent sur le cluster SQL Server

  • la base de données de collection qui se trouve sur le serveur autonome qui exécute SQL Server

  • les bases de données d'administration des Produits SharePoint et les bases de données de collection de sites pour les deux applications Web SharePoint1

  • les bases de données qui se trouvent sur le serveur qui exécute Reporting Services

  • la base de données qui se trouve sur le serveur qui exécute Analysis Services

1 Si vos bases de données SharePoint sont mises à l'échelle sur plusieurs serveurs, vous ne pouvez pas utiliser la fonctionnalité Sauvegardes planifiées pour les sauvegarder. Vous devrez configurer manuellement les sauvegardes pour ces bases de données et vérifier que ces sauvegardes sont synchronisées avec celles des bases de données TFS. Pour plus d'informations, consultez Sauvegarder manuellement Team Foundation Server.

Exemple : distribution complexe de bases de données

Dans ces deux exemples, vous ne devez pas sauvegarder les clients qui se connectent au serveur. Toutefois, vous devrez peut-être effacer manuellement les caches pour Team Foundation Server sur les ordinateurs clients pour qu'ils puissent se reconnecter au déploiement restauré.

Bases de données à sauvegarder

La liste suivante propose des détails supplémentaires sur les éléments à sauvegarder, selon vos ressources de déploiement.

Avertissement

Toutes les bases de données de la liste suivante sont des bases de données SQL Server.Bien que vous puissiez utiliser SQL Server Management Studio pour sauvegarder des bases de données individuelles à tout moment, vous devez éviter d'utiliser ces sauvegardes individuelles dans la mesure du possible.Vous pouvez obtenir des résultats inattendus si vous restaurez des sauvegardes individuelles, car les bases de données utilisées par TFS sont toutes associées.Si vous sauvegardez une seule base de données, ses données ne seront plus synchronisées avec les données des autres bases de données.

  • Bases de données pour Team Foundation Server La couche de données logique pour Team Foundation Server inclut plusieurs bases de données SQL Server, notamment la base de données de configuration, la base de données de l'entrepôt et une base de données pour chaque collection de projets d'équipe dans le déploiement. Ces bases de données peuvent toutes être sur le même serveur, distribuées sur plusieurs instances dans le même déploiement SQL Server ou distribuées sur plusieurs serveurs. Indépendamment de leur distribution physique, vous devez sauvegarder toutes les bases de données à un horodatage identique pour prévenir les pertes de données. Vous pouvez effectuer les sauvegardes de bases de données manuellement ou automatiquement en utilisant des plans de maintenance qui s'exécutent à des horaires ou des intervalles spécifiques.

    Avertissement

    La liste des bases de données Team Foundation Server n'est pas statique.Une base de données est créée chaque fois que vous créez une collection.Lorsque vous créez une collection, veillez à ajouter la base de données de cette collection à votre plan de maintenance.

  • Bases de données pour les Produits SharePoint Si votre déploiement utilise les Produits SharePoint pour héberger des portails de projet d'équipe, vous devez sauvegarder plusieurs bases de données. Ces bases de données incluent la base de données d'administration pour chaque application Web SharePoint utilisée par votre déploiement et les bases de données de collections de sites qui hébergent les portails de projets d'équipe. Dans l'idéal, votre déploiement a été configuré pour utiliser une collection de sites distincte pour chaque collection de projets d'équipe dans votre déploiement. Tout comme les collections de projets d'équipe peuvent être sauvegardées et restaurées en tant qu'unité dans Team Foundation Server, les collections de sites peuvent être sauvegardées et restaurées dans les Produits SharePoint. Si une ou plusieurs collections de votre déploiement utilisent des sites ou des sous-sites au lieu de collections de sites comme site racine, il est possible que vous ne puissiez pas sauvegarder et restaurer la totalité des collections. Pour plus d'informations, consultez gérer les collections de projets d'équipe..

    Notes

    Vous supposez probablement que vous devez sauvegarder les bases de données et les sites Web pour les pages du portail du projet d'équipe.Toutefois, Produits SharePoint génère dynamiquement les sites Web à partir des bases de données.Par conséquent, lorsque vous sauvegardez les bases de données, les sections du projet d'équipe qui s'affichent comme des sites Web sont également sauvegardées.Si vous avez créé des collections de site, des modèles de site ou des WebParts personnalisés dans Produits SharePoint mais en dehors de Team Foundation, vous devez les sauvegarder séparément.Pour plus d'informations, consultez la page suivante sur le site Web de Microsoft : Sauvegarde (SharePoint Foundation).

  • **Bases de données pour Reporting Services et Analysis services   **Si votre déploiement utilise SQL Server Reporting Services ou SQL Server Analysis Services pour générer des rapports pour Team Foundation Server, vous devez sauvegarder les bases de données d'analyse et de création de rapports. Cependant, vous devez continuer à régénérer certaines bases de données après la restauration, comme par exemple l'entrepôt.

  • Clé de chiffrement pour le serveur de rapports Le serveur de rapports a une clé de chiffrement que vous devez sauvegarder. Cette clé protège des informations sensibles stockées dans la base de données pour le serveur de rapports. Vous pouvez sauvegarder manuellement cette clé à l'aide de l'outil de configuration de Reporting Services ou un outil en ligne de commande.

Préparation avancée pour les sauvegardes

Lorsque vous déployez Team Foundation, vous devez garder une trace des comptes que vous créez et de tous les noms d'ordinateurs, mots de passe et options d'installation que vous spécifiez. Vous devez également garder une copie de tous les matériels de récupération, documents, bases de données et sauvegardes des journaux des transactions dans un emplacement sécurisé. Pour se protéger contre un incident, tel qu'un incendie ou un tremblement de terre, vous devez conserver des doubles de vos sauvegardes de serveurs dans un emplacement différent de celui des serveurs. Cette stratégie permet de se protéger contre la perte de données critiques. Il est recommandé de garder trois copies du support de sauvegarde et de conserver au moins une copie en dehors du site, dans un environnement contrôlé.

Important

Effectuez périodiquement une tentative de restauration des données pour vérifier que vos fichiers sont correctement sauvegardés.Une tentative de restauration peut révéler des problèmes matériels qui n'apparaissent pas avec les vérifications logicielles.

Lorsque vous sauvegardez et restaurez une base de données, vous devez sauvegarder les données sur un support disposant d'une adresse réseau (par exemple, des bandes et des disques ayant été partagés comme lecteurs réseau). Votre plan de sauvegarde doit prévoir la gestion des médias, notamment :

  • un plan de suivi et de gestion pour stocker et recycler des jeux de sauvegarde ;

  • un calendrier de remplacement des supports de sauvegarde ;

  • dans un environnement multi-serveur, le choix d'utiliser des sauvegardes centralisées ou distribuées ;

  • un moyen de suivi de la durée de vie des médias ;

  • une procédure permettant de réduire les effets de la perte d'un jeu de sauvegardes ou d'un support de sauvegarde (une bande, par exemple) ;

  • le stockage des jeux de sauvegardes sur place ou hors site, et une analyse de la répercussion de ce choix sur le temps de récupération.

Dans la mesure où les données Team Foundation sont stockées dans les bases de données SQL Server, vous n'avez pas à sauvegarder les ordinateurs sur lesquels les clients Team Foundation sont installés. Si une défaillance de média ou un incident qui implique ces ordinateurs devait se produire, vous pouvez réinstaller le logiciel client et rétablir la connexion au serveur. La réinstallation du logiciel client représente pour vos utilisateurs une alternative plus propre et plus fiable à la restauration d'un ordinateur client à partir d'une sauvegarde.

Vous pouvez sauvegarder un serveur en utilisant les fonctionnalités Sauvegardes planifiées disponibles dans Update 2 ou en créant manuellement des plans de maintenance dans SQL Server pour sauvegarder les bases de données en rapport avec votre déploiement de Team Foundation. Les bases de données pour Team Foundation Server fonctionnent les unes avec les autres et si vous créez un plan manuel, vous devez les sauvegarder et les restaurer en même temps. Pour plus d'informations sur les stratégies de sauvegarde de bases de données, consultez la page suivante sur le site Web de Microsoft : Présentation des stratégies de sauvegarde et de restauration dans SQL Server.

Types de sauvegardes

Comprendre les types de sauvegardes disponibles peut vous aider à déterminer les meilleures options de sauvegarde de votre déploiement. Par exemple, si vous travaillez avec de grands déploiements et que vous souhaitez vous protéger contre la perte de données tout en étant efficaces dans l'utilisation des ressources de stockage limitées, vous pouvez configurer des sauvegardes différentielles ainsi que des sauvegardes de données complètes. Si vous utilisez SQL Server ALwaysOn, vous pouvez prendre les sauvegardes de votre base de données secondaire. Vous pouvez également utiliser la compression des sauvegardes ou fractionner les sauvegardes sur plusieurs fichiers. Voici de brèves descriptions des options de sauvegarde disponibles :

Sauvegardes complètes de données (bases de données)   Une sauvegarde complète de la base de données est nécessaire pour pouvoir récupérer votre déploiement. Une sauvegarde complète inclut des portions du journal des transactions afin que la sauvegarde complète puisse être récupérée. Les sauvegardes complètes sont autonomes, car elles représentent l'intégralité de la base de données telle qu'elle existait lorsque vous l'avez sauvegardée. Pour plus d'informations, consultez la page suivante sur le site Web de Microsoft : Sauvegardes complètes de base de données.

Sauvegardes de données différentielles (Bases de données) Une sauvegarde de base de données différentielle enregistre uniquement les données qui ont changé depuis la dernière sauvegarde complète de la base de données, nommée base différentielle. Les sauvegardes de base de données différentielles sont plus petites et plus rapides que les sauvegardes complètes. Cette option réduit le temps de sauvegarde au prix d'une complexité accrue. Pour les bases de données importantes, les sauvegardes différentielles peuvent être effectuées à des intervalles plus courts que les sauvegardes de base de données, ce qui réduit le risque de perte de données. Pour plus d'informations, consultez la page suivante sur le site Web de Microsoft : Sauvegardes différentielles de base de données.

Vous devez également sauvegarder régulièrement vos journaux des transactions. Ces sauvegardes sont nécessaires pour la récupération de données lorsque vous utilisez le modèle de sauvegarde complète de la base de données. Si vous sauvegardez des journaux des transactions, vous pouvez récupérer la base de données au point de défaillance ou à un autre point spécifique dans le temps.

Sauvegardes du journal des transactions   Le journal des transactions est un enregistrement en série de toutes les modifications qui se sont produites dans une base de données en plus de la transaction qui a exécuté chaque modification. Le journal des transactions enregistre le démarrage de chaque transaction, les modifications de données et, au besoin, les informations nécessaires pour annuler les modifications effectuées pendant cette transaction. Le journal grandit continuellement au fur et à mesure que les opérations enregistrées se produisent dans la base de données.

La sauvegarde des journaux des transactions permet de récupérer la base de données à un point antérieur dans le temps. Par exemple, vous pouvez restaurer la base de données à un point antérieur à l'entrée des données non souhaitées ou à la défaillance. Outre les sauvegardes de la base, les sauvegardes des journaux de transactions doivent faire partie de votre stratégie de récupération. Pour plus d'informations, consultez la page suivante sur le site Web de Microsoft : Utilisation des sauvegardes de journaux de transactions.

Les sauvegardes des journaux de transactions utilisent généralement moins de ressources que les sauvegardes complètes. Par conséquent, vous pouvez créer des sauvegardes de journaux des transactions plus fréquemment que les sauvegardes complètes, ce qui permet de réduire le risque de perte de données. Toutefois, il arrive qu'une sauvegarde des journaux de transactions soit plus grande qu'une sauvegarde complète. Par exemple, une base de données peut avoir un taux de transactions élevé, ce qui entraîne le développement rapide du journal des transactions. Dans ce cas, créez des sauvegardes des journaux des transactions plus fréquemment. Pour plus d'informations, consultez la page suivante sur le site Web de Microsoft : Résolution des problèmes en cas de journal des transactions saturé (erreur 9002).

Vous pouvez effectuer les types de sauvegardes de journaux des transactions suivants :

  • Une sauvegarde ponctuelle d'un journal de transactions contient uniquement les enregistrements des journaux de transactions pour un intervalle sans les modifications en bloc.

  • Une sauvegarde des journaux de transactions contient les pages de journaux et les pages de données modifiées par les opérations en bloc. La récupération à un moment précis n'est pas possible.

  • Une sauvegarde de fichier journal après défaillance est récupérée à partir d'une base de données peut-être endommagée afin de conserver les enregistrements du journal qui n'ont pas encore été sauvegardés. Une sauvegarde de fichier journal après défaillance est effectuée après une défaillance pour éviter toute perte de données et peut contenir les données d'une sauvegarde ponctuelle ou d'une sauvegarde de journaux de transactions.

La synchronisation des données étant critique pour la réussite de la restauration de Team Foundation Server, vous devez utiliser des transactions marquées dans le cadre de votre stratégie de sauvegarde si vous configurez les sauvegardes manuellement. Pour plus d’informations, consultez Configurer une planification de sauvegarde et Sauvegarder manuellement Team Foundation Server.

Sauvegardes pour les services (couche Application)

La seule sauvegarde que vous devez effectuer pour la couche Application logique concerne la clé de chiffrement pour Reporting Services. Si vous utilisez la fonctionnalité Sauvegardes planifiées pour sauvegarder votre déploiement, cette clé est sauvegardée pour vous dans le cadre du plan. Vous supposez peut-être que vous devez sauvegarder les sites Web utilisés comme portails du projet d'équipe. Si vous avez intégré des Produits SharePoint dans le cadre de votre déploiement de Team Foundation Server, les portails seront sauvegardés lors de la sauvegarde des bases de données pour Team Foundation Server et les Produits SharePoint. Toutefois, si vous avez spécifié un site Web qui n'a pas été créé à l'aide d'une application Web intégrée, vous devez sauvegarder et restaurer ces sites manuellement. De plus, si vous avez personnalisé des Produits SharePoint ou des services, vous devez également les sauvegarder ou les enregistrer d'une autre façon afin qu'ils puissent être reproduits sur un nouveau serveur.

Même si la sauvegarde d'une couche Application est plus simple que celle d'une couche de données, vous devez exécuter de nombreuses étapes lorsque vous restaurez une couche Application. Vous devez installer une autre couche Application pour Team Foundation, rediriger des collections de projets d'équipe pour qu'elles utilisent la nouvelle couche Application et rediriger les sites portails pour les projets d'équipe.

Noms de bases de données par défaut

Si vous ne personnalisez pas les noms de vos bases de données, vous pouvez utiliser le tableau suivant pour identifier les bases de données utilisées dans votre déploiement de Team Foundation Server. Comme mentionné précédemment, les déploiements ne comportent pas tous l'ensemble de ces bases de données. Par exemple, si vous n'avez pas configuré Team Foundation Server avec Reporting Services, vous ne disposerez pas des bases de données ReportServer ou ReportServerTempDB. De la même façon, vous n'aurez pas la base de données de System Center Virtual Machine manager (SCVMM), nommé VirtualManagerDB, si vous n'avez pas configuré Team Foundation Server pour prendre en charge Lab Management. De plus, les bases de données que Team Foundation Server utilise peuvent être distribuées via plusieurs instances de SQL Server ou plusieurs serveurs.

Notes

Par défaut, le préfixe TFS_ est ajouté aux noms de toute base de données créée automatiquement lorsque vous installez Team Foundation Server ou pendant qu'il fonctionne.

Base de données

Description

TFS_Configuration

La base de données de configuration de Team Foundation Server contient le catalogue, les noms des serveurs et les données de configuration pour le déploiement. Le nom de cette base de données peut inclure des caractères additionnels entre TFS_ et Configuration, par exemple le nom d'utilisateur de la personne qui a installé Team Foundation Server. Par exemple, le nom de la base de données peut être TFS_UserNameConfiguration.

TFS_Warehouse

La base de données de l'entrepôt contient les données pour la génération de l'entrepôt que Reporting Services utilise. Le nom de cette base de données peut inclure des caractères additionnels entre TFS_ et Warehouse, par exemple le nom d'utilisateur de la personne qui a installé Team Foundation Server. Par exemple, le nom de la base de données peut être TFS_UserNameWarehouse.

TFS_CollectionName

La base de données d'une collection de projets d'équipe contient toutes les données des projets d'équipe de cette collection. Ces données incluent le code source, les configurations de build et les configurations Lab Management. Le nombre de bases de données de collection sera égal au nombre de collections. Par exemple, si vous disposez de trois collections dans votre déploiement, vous devez sauvegarder trois bases de données de collection. Le nom de chaque base de données peut inclure des caractères supplémentaires entre TFS_ et CollectionName, par exemple le nom d'utilisateur de la personne qui a créé la collection. Par exemple, le nom d'une base de données de collection peut être TFS_UserNameCollectionName.

TFS_Analysis

La base de données pour SQL ServerAnalysis Services contient les sources de données et les cubes pour votre déploiement Team Foundation Server. Le nom de cette base de données peut inclure des caractères additionnels entre TFS_ et Analysis, par exemple le nom d'utilisateur de la personne qui a installé Analysis Services. Par exemple, le nom de la base de données peut être TFS_UserNameAnalysis.

Notes

Vous pouvez sauvegarder cette base de données, mais vous devez régénérer l'entrepôt à partir de la base de données TFS_Warehouse restaurée.

ReportServer

La base de données pour Reporting Services contient les rapports et paramètres de rapport pour votre déploiement Team Foundation Server.

Notes

Si Reporting Services est installé sur un serveur distinct de Team Foundation Server, cette base de données peut ne pas être présente sur le serveur de couche Données pour Team Foundation.Dans ce cas, vous devez en effectuer la configuration, la sauvegarde et la restauration séparément de Team Foundation Server.Toutefois, vous devez synchroniser la maintenance des bases de données pour éviter des erreurs de synchronisation.

ReportServerTempDB

La base de données temporaire pour Reporting Services stocke temporairement des informations lorsque vous exécutez des rapports spécifiques.

Notes

Si Reporting Services est installé sur un serveur distinct de Team Foundation Server, cette base de données peut ne pas être présente sur le serveur de couche Données pour Team Foundation.Dans ce cas, vous devez en effectuer la configuration, la sauvegarde et la restauration séparément de Team Foundation Server.Toutefois, vous devez synchroniser la maintenance des bases de données pour éviter des erreurs de synchronisation.

WSS_Config

La base de données de configuration des Produits SharePoint contient une liste de tous les sites, comme les bases de données de contenu, les modèles de site, les WebParts personnalisés et d'autres paramètres de l'administration centrale de SharePoint.

Notes

Vous ne devez pas utiliser de transactions marquées lorsque vous sauvegardez ou restaurez manuellement les bases de données utilisées par les Produits SharePoint.Toutefois, pour éviter les erreurs de synchronisation, vous devez essayer de synchroniser vos plannings de sauvegarde et de restauration pour les Produits SharePoint et Team Foundation Server.Pour plus d'informations, consultez Create a backup plan for SharePoint Foundation.

WSS_Content

La base de données de contenu pour les Produits SharePoint comporte le contenu réel des portails du projet d'équipe.

Notes

Le nom de cette base de données varie selon la version des Produits SharePoint installée et si la personne qui l'a installée a personnalisé le nom.Vous ne devez pas utiliser de transactions marquées lorsque vous sauvegardez ou restaurez manuellement les bases de données utilisées par les Produits SharePoint.Toutefois, pour éviter les erreurs de synchronisation, vous devez essayer de synchroniser vos plannings de sauvegarde et de restauration pour les Produits SharePoint et Team Foundation Server.Pour plus d'informations, consultez Create a backup plan for SharePoint Foundation.

WSS_AdminContent

La base de données d'administration pour les Produits SharePoint contient les informations de sécurité pour les utilisateurs, les rôles et les bases de données.

Notes

Vous ne devez pas utiliser de transactions marquées lorsque vous sauvegardez ou restaurez manuellement les bases de données utilisées par les Produits SharePoint.Toutefois, pour éviter les erreurs de synchronisation, vous devez essayer de synchroniser vos plannings de sauvegarde et de restauration pour les Produits SharePoint et Team Foundation Server.Pour plus d'informations, consultez Create a backup plan for SharePoint Foundation.

VirtualManagerDB

La base de données d'administration de SCVMM contient les informations que vous affichez dans la Console Administration SCVMM, telles que les ordinateurs virtuels, les hôtes d'ordinateur virtuel, les serveurs de bibliothèque d'ordinateur virtuel et leurs propriétés.

Notes

Si SCVMM est installé sur un serveur distinct de Team Foundation Server, cette base de données peut ne pas être présente sur le serveur de couche Données pour Team Foundation.Dans ce cas, vous devez en effectuer la configuration, la sauvegarde et la restauration séparément de Team Foundation Server.Toutefois, vous devez utiliser des transactions marquées et synchroniser la maintenance des bases de données pour éviter des erreurs de synchronisation.

Voir aussi

Concepts

Sauvegarder et restaurer TFS

Autres ressources

Restaurer un déploiement sur un nouveau matériel