Restaurer les données au même emplacement
Azure DevOps Server 2022 | Azure DevOps Server 2020 | Azure DevOps Server 2019
Vous pouvez restaurer des données à partir d’une sauvegarde sur le même serveur et instance de SQL Server pour Azure DevOps à partir de laquelle ces données ont été sauvegardées. Par exemple, vous souhaiterez peut-être restaurer un ensemble de bases de données endommagé au dernier état correct connu.
Notes
Consultez la page Concepts de sauvegarde et de restauration pour une introduction à la restauration des données sur le même serveur pour Azure DevOps Server.
L’intégration de SharePoint à Azure DevOps Server est déconseillée avec TFS 2017 et versions ultérieures.
Prérequis
Pour exécuter cette procédure, vous devez être membre des groupes suivants ou disposer des autorisations suivantes :
- Membre du groupe de sécurité Administrateurs sur le serveur ou les serveurs exécutant la console d’administration pour Azure DevOps.
- Un membre du groupe de sécurité Administrateur système SQL Server ou votre SQL Server l’autorisation Effectuer une sauvegarde et créer un plan de maintenance doit être définie sur Autoriser sur le instance de SQL Server qui héberge les bases de données.
- Membre du groupe de sécurité sysadmin pour la base de données instance pour Azure DevOps et pour la instance Analysis Services de la base de données d’entrepôt.
- être un utilisateur autorisé de la base de données TFS_Warehouse ;
- Membre du rôle de base de données TFSEXECROLE .
- Si le déploiement utilise des produits SharePoint, un membre du groupe Administrateurs de batterie pour la batterie de serveurs dans laquelle les bases de données des produits SharePoint sont restaurées.
Pour plus d’informations, consultez Contrôle de compte d’utilisateur.
Étape 1 : Arrêter les services
Le fait d'arrêter les services permet d'éviter la perte de données ou leur altération pendant le processus de restauration, en particulier si vous renommez les bases de données.
Sur le serveur qui exécute les services de la couche Application pour Azure DevOps, ouvrez une fenêtre d’invite de commandes et remplacez les répertoires par Lecteur :\%programfiles%\Azure DevOps Server 2019\Tools.
Entrez la commande suivante :
TFSServiceControl quiesce
Pour plus d’informations, consultez Commande TFSServiceControl.
Étape 2 : Renommer les bases de données
Avant de pouvoir utiliser l’Assistant Restauration pour restaurer une base de données qui Azure DevOps Server, vous devez d’abord la mettre hors connexion, puis la renommer.
Arrêter les bases de données
Ouvrez SQL Server Management Studio.
Notes
Pour plus d’informations sur la restauration des bases de données, consultez Implémenter des scénarios de restauration pour SQL Server bases de données.
La boîte de dialogue Se connecter au serveur s'ouvre.
Dans Type de serveur, sélectionnez Moteur de base de données.
Dans Nom du serveur, entrez ou sélectionnez le nom du serveur de la couche Données et de la base de données instance, puis sélectionnez Se connecter.
Notes
Si SQL Server est installé sur un cluster, le nom du serveur est le nom du cluster et non le nom de l’ordinateur.
SQL Server Management Studio s'ouvre.
Développez le nœud Bases de données pour afficher la liste des bases de données qui composent la couche Données pour Azure DevOps.
Renommez, puis arrêtez chaque base de données que vous souhaitez restaurer, en suivant les instructions relatives à votre version de SQL Server. Donnez à la base de données un nom indiquant qu’il s’agit de l’ancienne version de la base de données que vous remplacerez par la version restaurée. Par exemple, vous pouvez renommer TFS_DefaultCollection en TFS_DefaultCollection_Old.
Étape 3 : Restaurer des bases de données Azure DevOps
Vous pouvez restaurer des données pour Azure DevOps Server à l’aide de l’Assistant Restauration dans la console d’administration de Azure DevOps Server. L'Assistant Restauration restaure également la clé de chiffrement utilisée pour la création de rapports.
Restaurer des bases de données
Ouvrez la console d’administration pour Azure DevOps Server, accédez à Sauvegardes planifiées et démarrez l’Assistant Restauration de bases de données.
Spécifiez le chemin d’accès au jeu de sauvegarde et sélectionnez le jeu à utiliser pour la restauration.
Suivez la procédure de l'Assistant et restaurez les bases de données.
Étape 4 : Mettre à jour tous les comptes de service
Vous devez mettre à jour le compte de service pour Azure DevOps Server (TFSService) et le compte de sources de données (TFSReports). Même si ces comptes n'ont pas changé, vous devez mettre à jour les informations pour garantir que l'identité et le format des comptes sont appropriés.
Mettre à jour les comptes de service
Sur le serveur qui exécute SQL Server Reporting Services, ouvrez Gestion de l’ordinateur et démarrez les composants suivants s’ils ne sont pas déjà démarrés :
- ReportServer ou ReportServer$InstanceName (pool d’applications)
- SQL Server Reporting Services (TFSINSTANCE)
Sur le serveur de la couche Application, ouvrez une fenêtre d’invite de commandes et remplacez les répertoires par Lecteur :\%programfiles%\Azure DevOps Server 2019\Tools.
À l’invite de commandes, entrez la commande suivante pour ajouter le compte de service pour Azure DevOps, où DatabaseName est le nom de la base de données de configuration (par défaut, TFS_Configuration) :
Comptes TfsConfig /add /AccountType :ApplicationTier /account :AccountName
Pour plus d’informations, consultez Commande Comptes.
Utilisez la commande Comptes pour ajouter le compte de sources de données pour le serveur de rapports et le compte proxy pour le serveur proxy Azure DevOps, si votre déploiement utilise ces ressources.
Étape 5 : Reconstruire l’entrepôt de données
Vous pouvez régénérer l'entrepôt de données au lieu de restaurer les bases de données TFS_Warehouse et TFS_Analysis. La reconstruction de l’entrepôt peut nécessiter beaucoup de temps si votre déploiement contient beaucoup de données. Toutefois, cette stratégie permet de s’assurer que toutes les données sont correctement synchronisées. Lorsque vous régénérez l’entrepôt, Azure DevOps Server crée un instance de celui-ci, que vous devez ensuite traiter pour le remplir à l’aide des données des magasins opérationnels.
Notes
Si vous avez restauré les bases de données TFS_Warehouse et TFS_Analysis au cours de la section précédente, il n'est pas nécessaire d'exécuter la procédure suivante.
Reconstruire l’entrepôt
Sur le serveur qui exécute les services de la couche Application pour Azure DevOps, ouvrez une fenêtre d’invite de commandes et remplacez les répertoires par
Drive:\\%programfiles%\\Azure DevOps Server 2019\\Tools
.Entrez la commande suivante :
TFSConfig rebuildwarehouse /all /ReportingDataSourcePassword :Password
où Mot de passe est le mot de passe du compte de sources de données pour Reporting Services (TFSReports).
Attendez que la commande soit terminée.
Sur le serveur de rapports, ouvrez Internet Explorer et entrez la chaîne suivante dans la barre d'adresses :
http://localhost:8080/>VirtualDirectory/TeamFoundation/Administration/v3.0/WarehouseControlService.asmx
Pour VirtualDirectory, entrez le répertoire virtuel des services Internet (IIS) spécifié lors de l’installation de Azure DevOps Server. Par défaut, ce répertoire est nommé tfs.
La page WarehouseControlWebService s’ouvre .
Notes
Le pool d’applications Microsoft Azure DevOps Server doit être en cours d’exécution pour que le service web De contrôle d’entrepôt soit disponible.
Sélectionnez GetProcessingStatus, puis Appeler.
Important
Le service doit retourner la valeur Idle pour tous les travaux, ce qui indique que le cube n’est pas en cours de traitement. Si une autre valeur est retournée, répétez cette étape jusqu’à ce que l’inactif soit retourné pour tous les travaux.
Dans la page WarehouseControlWebService , sélectionnez ProcessAnalysisDatabase, puis Appeler.
Une fenêtre de navigateur s'ouvre. Le service retourne True lorsqu’il commence à traiter le cube et False s’il ne réussit pas ou si le cube est en cours de traitement.
Pour déterminer quand le cube a été traité, revenez à la page WarehouseControlWebService , sélectionnez GetProcessingStatus, puis appeler.
Le traitement est terminé lorsque le service GetProcessingStatus retourne la valeur Idle pour tous les travaux.
Sur le serveur de la couche Application pour Azure DevOps, ouvrez Gestion de l’ordinateur et démarrez le service de travail en arrière-plan de Visual Studio Team Foundation.
Étape 6 : Effacer le cache de données sur les serveurs de la couche Application
Chaque serveur de la couche Application dans votre déploiement d’Azure DevOps utilise un cache de fichiers afin que les utilisateurs puissent télécharger rapidement des fichiers à partir du serveur de la couche Données. Lorsque vous restaurez un déploiement, vous devez effacer le cache sur chaque serveur de couche Application. Sinon, des ID de fichier incompatibles peuvent entraîner des problèmes lorsque les utilisateurs téléchargent des fichiers à partir du contrôle de version. Si votre déploiement utilise le serveur proxy Azure DevOps, vous devez également effacer le cache de données sur chaque serveur configuré en tant que proxy.
Notes
En supprimant les caches de données, vous pouvez empêcher le téléchargement de versions incorrectes des fichiers dans le contrôle de version. Vous devez procéder ainsi régulièrement, sauf si vous remplacez l'ensemble du matériel de votre déploiement dans le cadre de votre restauration. Si vous remplacez l'ensemble du matériel, vous pouvez ignorer cette procédure.
Effacer le cache de données
Sur un serveur qui exécute les services de la couche Application pour Azure DevOps ou qui est configuré avec le serveur proxy Azure DevOps, ouvrez une fenêtre d’invite de commandes et remplacez les répertoires par Drive :\%programfiles%\Azure DevOps Server 2019\Couche Application\Web Services\_tfs_data.
Supprimez tous les éléments du dossier _tfs_data.
Répétez ces étapes pour chaque serveur de la couche Application et chaque serveur qui exécute le serveur proxy Azure DevOps dans votre déploiement.
Étape 7 : Redémarrer les services
Après avoir restauré les données, vous devez redémarrer les services pour ramener le serveur à un état opérationnel.
Redémarrer les services
Sur le serveur qui exécute les services de la couche Application pour Azure DevOps, ouvrez une fenêtre d’invite de commandes et remplacez les répertoires par Lecteur :\%programfiles%\Azure DevOps Server 2019\Tools.
Entrez la commande suivante :
TFSServiceControl unquiesce
Pour plus d’informations, consultez Commande TFSServiceControl.
Étape 8 : Actualiser les caches sur les ordinateurs clients
Actualiser le cache pour le suivi des éléments de travail sur les ordinateurs clients
Sur le nouveau serveur, ouvrez Internet Explorer.
Dans la barre d’adresses, entrez l’adresse suivante pour vous connecter au service web ClientService :
http://PublicURL/VirtualDirectory:8080/WorkItemTracking/v3.0/ClientService.asmx
Notes
Même si vous êtes connecté avec des informations d’identification administratives, vous devrez peut-être démarrer Internet Explorer en tant qu’administrateur, et vous serez peut-être invité à entrer vos informations d’identification.
Sélectionnez StampWorkitemCache, puis Appeler. La méthode StampWorkitemCache ne retourne pas de données.
Actualiser le cache de contrôle de version sur les ordinateurs clients
Sur l’ordinateur client, ouvrez une fenêtre d’invite de commandes avec des autorisations d’administration et remplacez les répertoires par
Drive:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE
.À l'invite de commandes, entrez la commande suivante, y compris l'URL de la collection, qui inclut le nom de serveur et le numéro de port du nouveau serveur :
tf workspaces /collection:http://ServerName:Port/VirtualDirectoryName/CollectionName
Dans l’exemple de déploiement, un développeur doit actualiser le cache du contrôle de version pour un projet membre de la collection DefaultCollection, qui est hébergée dans le déploiement FabrikamPrime de Azure DevOps Server :
tf workspaces /collection:http://FabrikamPrime:8080/tfs/DefaultCollection
Pour plus d’informations, consultez Commande Espaces de travail.