Wiederherstellen von Daten an demselben Speicherort

Azure DevOps Server 2022 | Azure DevOps Server 2020 | Azure DevOps Server 2019

Sie können Daten aus einer Sicherung auf demselben Server und instance von SQL Server für Azure DevOps wiederherstellen, auf dem diese Daten gesichert wurden. Beispielsweise können Sie einen beschädigten Satz von Datenbanken in den letzten bekannten guten Zustand wiederherstellen.

Hinweis

Eine Einführung in das Wiederherstellen von Daten auf demselben Server für Azure DevOps Server finden Sie auf der Seite Sicherungs- und Wiederherstellungskonzepte.

Die SharePoint-Integration mit Azure DevOps Server ist mit TFS 2017 und höheren Versionen veraltet.

Voraussetzungen

Um diesen Vorgang auszuführen, müssen Sie Mitglied der folgenden Gruppen sein oder über folgende Berechtigungen verfügen:

  • Ein Mitglied der Sicherheitsgruppe Administratoren auf dem Oder den Servern, auf denen die Verwaltungskonsole für Azure DevOps ausgeführt wird.
  • Entweder ein Mitglied der Sicherheitsgruppe SQL Server Systemadministrator oder Ihre SQL Server Die Berechtigung "Sicherung ausführen" und "Wartungsplan erstellen" muss für die instance der SQL Server, die die Datenbanken hostet, auf Zulassen festgelegt werden.
  • Ein Mitglied der Sicherheitsgruppe sysadmin für die Datenbank instance für Azure DevOps und für die Analysis Services-instance der Warehouse-Datenbank.
  • Autorisierter Benutzer der TFS_Warehouse-Datenbank.
  • Ein Mitglied der TFSEXECROLE-Datenbankrolle .
  • Wenn die Bereitstellung SharePoint-Produkte verwendet, ist ein Mitglied der Gruppe Farmadministratoren für die Farm, in der die SharePoint-Produkte-Datenbanken wiederhergestellt werden.

Weitere Informationen finden Sie unter Benutzerkontensteuerung.

Schritt 1: Beenden von Diensten

Das Beenden der Dienste schützt vor Datenverlust oder -beschädigung während der Wiederherstellung, insbesondere dann, wenn Sie Datenbanken umbenennen.

  1. Öffnen Sie auf dem Server, auf dem die Dienste der Anwendungsebene für Azure DevOps ausgeführt werden, ein Eingabeaufforderungsfenster, und ändern Sie die Verzeichnisse in Drive:\%programfiles%\Azure DevOps Server 2019\Tools.

  2. Geben Sie den folgenden Befehl ein:

    TFSServiceControl quiesce
    

    Weitere Informationen finden Sie unter TFSServiceControl-Befehl.

Schritt 2: Umbenennen von Datenbanken

Bevor Sie den Wiederherstellungs-Assistenten verwenden können, um eine Datenbank wiederherzustellen, die Azure DevOps Server, müssen Sie sie zuerst offline schalten und dann umbenennen.

Beenden von Datenbanken

  1. Öffnen Sie SQL Server Management Studio.

    Hinweis

    Weitere Informationen zum Wiederherstellen von Datenbanken finden Sie unter Implementieren von Wiederherstellungsszenarien für SQL Server Datenbanken.

    Das Dialogfeld Verbindung mit Server herstellen wird geöffnet.

  2. Wählen Sie unter Servertypdie Option Datenbank-Engine aus.

  3. Geben Sie unter Servername den Namen des Datenebenenservers und der Datenbank instance ein, oder wählen Sie sie aus, und wählen Sie dann Verbinden aus.

    Hinweis

    Wenn SQL Server in einem Cluster installiert ist, ist der Servername der Name des Clusters und nicht der Computername.

    SQL Server Management Studio wird geöffnet.

  4. Erweitern Sie den Knoten Datenbanken , um die Liste der Datenbanken anzuzeigen, die die Datenebene für Azure DevOps bilden.

  5. Benennen Sie jede Datenbank um, die Sie wiederherstellen möchten, und beenden Sie sie anschließend gemäß den Anleitungen für Ihre Version von SQL Server. Geben Sie der Datenbank einen Namen, der angibt, dass es sich um die alte Version der Datenbank handelt, die Sie durch die wiederhergestellte Version ersetzen. Sie können beispielsweise TFS_DefaultCollection in TFS_DefaultCollection_Old umbenennen.

Schritt 3: Wiederherstellen von Azure DevOps-Datenbanken

Sie können Daten für Azure DevOps Server wiederherstellen, indem Sie den Wiederherstellungs-Assistenten in der Verwaltungskonsole in Azure DevOps Server verwenden. Der Wiederherstellungs-Assistent stellt auch den Verschlüsselungsschlüssel wieder her, der für die Berichterstellung verwendet wird.

Wiederherstellen von Datenbanken

  1. Öffnen Sie die Verwaltungskonsole für Azure DevOps Server, navigieren Sie zu Geplante Sicherungen, und starten Sie den Assistenten Zum Wiederherstellen von Datenbanken.

    Wiederherstellungs-Assistenten starten

  2. Geben Sie den Pfad zum Sicherungssatz an, und wählen Sie den Satz aus, der für die Wiederherstellung verwendet werden soll.

    Wählen Sie den Netzwerkpfad und dann den Wiederherstellungssatz aus.

  3. Schließen Sie den Assistenten ab, und stellen Sie die Datenbanken wieder her.

    Die Datenbank werden auf dem neuen Server wiederhergestellt.

Schritt 4: Aktualisieren aller Dienstkonten

Sie müssen das Dienstkonto für Azure DevOps Server (TFSService) und das Datenquellenkonto (TFSReports) aktualisieren. Auch wenn sich diese Konten nicht geändert haben, müssen Sie die Informationen aktualisieren, um sicherzustellen, dass Identität und Format der Konten geeignet sind.

Aktualisieren von Dienstkonten

  1. Öffnen Sie auf dem Server, auf dem SQL Server Reporting Services ausgeführt wird, computerverwaltung, und starten Sie die folgenden Komponenten, sofern sie noch nicht gestartet wurden:

    • ReportServer oder ReportServer$InstanceName (Anwendungspool)
    • SQL Server Reporting Services (TFSINSTANCE)
  2. Öffnen Sie auf dem Anwendungsserver ein Eingabeaufforderungsfenster, und ändern Sie die Verzeichnisse in Drive:\%programfiles%\Azure DevOps Server 2019\Tools.

  3. Geben Sie an der Eingabeaufforderung den folgenden Befehl ein, um das Dienstkonto für Azure DevOps hinzuzufügen, wobei DatabaseName der Name der Konfigurationsdatenbank ist (standardmäßig TFS_Configuration):

    TfsConfig-Konten /add /AccountType:ApplicationTier /account:AccountName

    Weitere Informationen finden Sie unter Kontobefehl.

  4. Verwenden Sie den Befehl Konten , um das Datenquellenkonto für den Berichtsserver und das Proxykonto für Den Azure DevOps-Proxyserver hinzuzufügen, wenn Ihre Bereitstellung diese Ressourcen verwendet.

Schritt 5: Neuerstellen des Data Warehouse

Sie können das Data Warehouse neu erstellen, statt die Datenbanken TFS_Warehouse und TFS_Analysis wiederherzustellen. Die Neuerstellung des Warehouses kann erheblich dauern, wenn Ihre Bereitstellung viele Daten enthält. Diese Strategie trägt jedoch dazu bei, dass alle Daten ordnungsgemäß synchronisiert werden. Wenn Sie das Warehouse neu erstellen, erstellt Azure DevOps Server eine instance davon, die Sie dann verarbeiten müssen, um es mithilfe von Daten aus den Betriebsspeichern aufzufüllen.

Hinweis

Wenn Sie die TFS_Warehouse- und die TFS_Analysis-Datenbanken im vorherigen Abschnitt wiederhergestellt haben, müssen Sie den folgenden Vorgang nicht ausführen.

Neu erstellen des Lagers

  1. Öffnen Sie auf dem Server, auf dem die Dienste der Anwendungsebene für Azure DevOps ausgeführt werden, ein Eingabeaufforderungsfenster, und ändern Sie die Verzeichnisse in Drive:\\%programfiles%\\Azure DevOps Server 2019\\Tools.

  2. Geben Sie den folgenden Befehl ein:

    TFSConfig rebuildwarehouse /all /ReportingDataSourcePassword:Password

    Wobei Password das Kennwort für das Datenquellenkonto für Reporting Services (TFSReports) ist.

  3. Warten Sie, bis der Befehl abgeschlossen ist.

  4. Öffnen Sie auf dem Berichtsserver Internet Explorer, und geben Sie in der Adressleiste die folgende Zeichenfolge ein:

    http://localhost:8080/>VirtualDirectory/TeamFoundation/Administration/v3.0/WarehouseControlService.asmx

    Geben Sie für VirtualDirectory das virtuelle Verzeichnis für Internetinformationsdienste (IIS) ein, das bei der Installation Azure DevOps Server angegeben wurde. Standardmäßig heißt dieses Verzeichnis tfs.

    Die Seite WarehouseControlWebService wird geöffnet.

    Hinweis

    Der Microsoft Azure DevOps Server-Anwendungspool muss ausgeführt werden, damit der Warehouse Control-Webdienst verfügbar ist.

  5. Wählen Sie GetProcessingStatus und dann Aufrufen aus.

    Wichtig

    Der Dienst sollte für alle Aufträge den Wert Leerlauf zurückgeben, was angibt, dass der Cube nicht verarbeitet wird. Wenn ein anderer Wert zurückgegeben wird, wiederholen Sie diesen Schritt, bis der Leerlauf für alle Aufträge zurückgegeben wird.

  6. Wählen Sie auf der Seite WarehouseControlWebServicedie Option ProcessAnalysisDatabase und dann Aufrufen aus.

    Ein Browserfenster wird geöffnet. Der Dienst gibt True zurück, wenn er erfolgreich mit der Verarbeitung des Cubes beginnt, und False , wenn er nicht erfolgreich ist oder wenn der Cube derzeit verarbeitet wird.

  7. Um zu bestimmen, wann der Cube verarbeitet wurde, kehren Sie zur Seite WarehouseControlWebService zurück, wählen Sie GetProcessingStatus und dann Aufrufen aus.

    Die Verarbeitung ist abgeschlossen, wenn der GetProcessingStatus-Dienst den Wert Leerlauf für alle Aufträge zurückgibt.

  8. Öffnen Sie auf dem Anwendungsebenenserver für Azure DevOps die Computerverwaltung, und starten Sie den Visual Studio Team Foundation Background Job Service.

Schritt 6: Löschen des Datencaches auf Anwendungsebenenservern

Jeder Anwendungsschichtserver in Ihrer Bereitstellung von Azure DevOps verwendet einen Dateicache, sodass Benutzer Dateien schnell vom Datenebenenserver herunterladen können. Wenn Sie eine Bereitstellung wiederherstellen, sollten Sie diesen Cache auf jedem Anwendungsebenenserver löschen. Andernfalls können nicht übereinstimmende Datei-IDs Probleme verursachen, wenn Benutzer Dateien aus der Versionskontrolle herunterladen. Wenn Ihre Bereitstellung Azure DevOps Proxy Server verwendet, müssen Sie auch den Datencache auf jedem Server löschen, der als Proxy konfiguriert ist.

Hinweis

Das Löschen des Datencaches hilft, Downloads falscher Dateiversionen in der Versionskontrolle zu verhindern. Sie sollten das routinemäßig ausführen, es sei denn, Sie ersetzen als Teil der Wiederherstellung die gesamte Hardware in der Bereitstellung. Falls Sie die gesamte Hardware ersetzen, können Sie diese Prozedur überspringen.

Löschen des Datencaches

  1. Öffnen Sie auf einem Server, auf dem die Dienste der Anwendungsebene für Azure DevOps ausgeführt oder mit Azure DevOps-Proxyserver konfiguriert ist, ein Eingabeaufforderungsfenster, und ändern Sie die Verzeichnisse in Drive:\%programfiles%\Azure DevOps Server 2019\Application Tier\Web Services\_tfs_data.

  2. Löschen Sie alles im Verzeichnis "_tfs_data".

  3. Wiederholen Sie diese Schritte für jeden Server der Anwendungsebene und jeden Server, auf dem Azure DevOps-Proxyserver in Ihrer Bereitstellung ausgeführt wird.

Schritt 7: Neustarten von Diensten

Nachdem Sie die Daten wiederhergestellt haben, müssen Sie die Dienste neu starten, damit der Server wieder betriebsbereit ist.

Neustarten von Diensten

  1. Öffnen Sie auf dem Server, auf dem die Dienste der Anwendungsebene für Azure DevOps ausgeführt werden, ein Eingabeaufforderungsfenster, und ändern Sie die Verzeichnisse in Drive:\%programfiles%\Azure DevOps Server 2019\Tools.

  2. Geben Sie den folgenden Befehl ein:

    TFSServiceControl unquiesce

Weitere Informationen finden Sie unter TFSServiceControl-Befehl.

Schritt 8: Aktualisieren der Caches auf Clientcomputern

Aktualisieren des Caches zum Nachverfolgen von Arbeitselementen auf Clientcomputern

  1. Öffnen Sie Internet Explorer auf dem neuen Server.

  2. Geben Sie in der Adressleiste die folgende Adresse ein, um eine Verbindung mit dem ClientService-Webdienst herzustellen:

    http://PublicURL/VirtualDirectory:8080/WorkItemTracking/v3.0/ClientService.asmx

    Hinweis

    Auch wenn Sie mit Administratoranmeldeinformationen angemeldet sind, müssen Sie möglicherweise internet Explorer als Administrator starten, und Sie werden möglicherweise aufgefordert, Ihre Anmeldeinformationen einzugeben.

  3. Wählen Sie StampWorkitemCache und dann Aufrufen aus. Die StampWorkitemCache-Methode gibt keine Daten zurück.

Aktualisieren des Versionsverwaltungscaches auf Clientcomputern

  1. Öffnen Sie auf dem Clientcomputer ein Eingabeaufforderungsfenster mit Administratorberechtigungen, und ändern Sie die Verzeichnisse in Drive:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE.

  2. Geben Sie an der Eingabeaufforderung den folgenden Befehl ein, darunter auch die URL der Auflistung, die den Servernamen und die Portnummer des neuen Servers enthält:

    tf workspaces /collection:http://ServerName:Port/VirtualDirectoryName/CollectionName

    In der Beispielbereitstellung muss ein Entwickler den Versionsverwaltungscache für ein Projekt aktualisieren, das Mitglied der DefaultCollection-Auflistung ist, die in der FabrikamPrime-Bereitstellung von Azure DevOps Server gehostet wird:

    tf workspaces /collection:http://FabrikamPrime:8080/tfs/DefaultCollection

    Weitere Informationen finden Sie unter Arbeitsbereichsbefehl.