Przywracanie danych do tej samej lokalizacji

Azure DevOps Server 2022 r. | Azure DevOps Server 2020 r. | Azure DevOps Server 2019 r.

Możesz przywrócić dane z kopii zapasowej do tego samego serwera i wystąpienia SQL Server dla usługi Azure DevOps, z której utworzono kopię zapasową tych danych. Na przykład możesz przywrócić uszkodzony zestaw baz danych do ostatniego znanego dobrego stanu.

Uwaga

Zapoznaj się ze stroną Pojęcia dotyczące tworzenia kopii zapasowych i przywracania, aby zapoznać się z wprowadzeniem do przywracania danych na tym samym serwerze na potrzeby Azure DevOps Server.

Integracja programu SharePoint z Azure DevOps Server jest przestarzała z programem TFS 2017 i nowszymi wersjami.

Wymagania wstępne

Aby wykonać tę procedurę, musisz być członkiem następujących grup lub mieć następujące uprawnienia:

  • Członek grupy zabezpieczeń Administratorzy na serwerze lub serwerach z konsolą administracyjną usługi Azure DevOps.
  • Albo członek grupy zabezpieczeń administratora systemu SQL Server lub uprawnienie do wykonywania kopii zapasowej i tworzenia planu konserwacji SQL Server musi być ustawione na zezwalanie na wystąpienie SQL Server hostujących bazy danych.
  • Członek grupy zabezpieczeń sysadmin dla wystąpienia bazy danych dla usługi Azure DevOps i wystąpienia usług Analysis Services bazy danych magazynu.
  • Autoryzowany użytkownik bazy danych TFS_Warehouse.
  • Członek roli bazy danych TFSEXECROLE .
  • Jeśli wdrożenie korzysta z produktów programu SharePoint, członek grupy Administratorzy farmy dla farmy, do której są przywracane bazy danych produktów programu SharePoint.

Aby uzyskać więcej informacji, zobacz Kontrola konta użytkownika.

Krok 1. Zatrzymywanie usług

Zatrzymanie usług pomaga chronić przed utratą lub uszkodzeniem danych podczas procesu przywracania, szczególnie w przypadku zmiany nazwy baz danych.

  1. Na serwerze z uruchomionymi usługami warstwy aplikacji dla usługi Azure DevOps otwórz okno wiersza polecenia i zmień katalogi na Dysk:\%programfiles%\Azure DevOps Server 2019\Tools.

  2. Wprowadź następujące polecenie:

    TFSServiceControl quiesce
    

    Aby uzyskać więcej informacji, zobacz polecenie TFSServiceControl.

Krok 2. Zmiana nazw baz danych

Zanim będzie można użyć kreatora przywracania do przywrócenia bazy danych, która Azure DevOps Server, musisz najpierw przejąć ją w tryb offline, a następnie zmienić jej nazwę.

Zatrzymywanie baz danych

  1. Otwórz SQL Server Management Studio.

    Uwaga

    Aby uzyskać więcej informacji na temat przywracania baz danych, zobacz Implementowanie scenariuszy przywracania dla SQL Server baz danych.

    Zostanie otwarte okno dialogowe Łączenie z serwerem .

  2. W polu Typ serwera wybierz pozycję Aparat bazy danych.

  3. W polu Nazwa serwera wprowadź lub wybierz nazwę serwera warstwy danych i wystąpienia bazy danych, a następnie wybierz pozycję Połącz.

    Uwaga

    Jeśli SQL Server jest zainstalowany w klastrze, nazwa serwera jest nazwą klastra, a nie nazwą komputera.

    SQL Server Management Studio zostanie otwarta.

  4. Rozwiń węzeł Bazy danych , aby wyświetlić listę baz danych, które tworzą warstwę danych dla usługi Azure DevOps.

  5. Zmień nazwę, a następnie zatrzymaj każdą bazę danych, którą chcesz przywrócić, postępując zgodnie ze wskazówkami dotyczącymi używanej wersji SQL Server. Nadaj bazie danych nazwę wskazującą, że jest to stara wersja bazy danych, którą zastąpisz przywróconą wersją. Możesz na przykład zmienić nazwę TFS_DefaultCollection na TFS_DefaultCollection_Old.

Krok 3. Przywracanie baz danych usługi Azure DevOps

Dane dla Azure DevOps Server można przywrócić za pomocą Kreatora przywracania w konsoli administracyjnej w Azure DevOps Server. Kreator przywracania przywraca również klucz szyfrowania używany do raportowania.

Przywracanie baz danych

  1. Otwórz konsolę administracyjną dla Azure DevOps Server, przejdź do obszaru Zaplanowane kopie zapasowe i uruchom Kreatora przywracania baz danych.

    Uruchom kreatora przywracania

  2. Określ ścieżkę do zestawu kopii zapasowych i wybierz zestaw do użycia na potrzeby przywracania.

    Wybierz ścieżkę sieci, a następnie zestaw przywracania

  3. Ukończ pracę kreatora i przywróć bazy danych.

    Bazy danych są przywracane do nowego serwera

Krok 4. Aktualizowanie wszystkich kont usług

Musisz zaktualizować konto usługi dla Azure DevOps Server (TFSService) i konta źródeł danych (TFSReports). Nawet jeśli te konta nie uległy zmianie, należy zaktualizować informacje, aby upewnić się, że tożsamość i format kont są odpowiednie.

Aktualizowanie kont usług

  1. Na serwerze z systemem SQL Server Reporting Services otwórz przystawkę Zarządzanie komputerem i uruchom następujące składniki, jeśli nie zostały jeszcze uruchomione:

    • ReportServer lub ReportServer$InstanceName (pula aplikacji)
    • SQL Server Reporting Services (TFSINSTANCE)
  2. Na serwerze warstwy aplikacji otwórz okno wiersza polecenia i zmień katalogi na Dysk:\%programfiles%\Azure DevOps Server 2019\Tools.

  3. W wierszu polecenia wprowadź następujące polecenie, aby dodać konto usługi dla usługi Azure DevOps, gdzie DatabaseName jest nazwą bazy danych konfiguracji (domyślnie TFS_Configuration):

    Konta TfsConfig /add /AccountType:ApplicationTier /account:AccountName

    Aby uzyskać więcej informacji, zobacz Polecenie Accounts.

  4. Użyj polecenia Accounts , aby dodać konto źródeł danych dla serwera raportów i konto serwera proxy dla serwera proxy usługi Azure DevOps, jeśli wdrożenie korzysta z tych zasobów.

Krok 5. Ponowne kompilowanie magazynu danych

Magazyn danych można ponownie skompilować zamiast przywracać bazy danych TFS_Warehouse i TFS_Analysis. Ponowne skompilowanie magazynu może wymagać znacznego czasu, jeśli wdrożenie zawiera dużo danych. Jednak ta strategia pomaga zapewnić prawidłową synchronizację wszystkich danych. Podczas ponownego kompilowania magazynu Azure DevOps Server tworzy wystąpienie, które należy następnie przetworzyć, aby wypełnić go przy użyciu danych z magazynów operacyjnych.

Uwaga

Jeśli przywrócono bazy danych TFS_Warehouse i TFS_Analysis w poprzedniej sekcji, nie trzeba wykonywać poniższej procedury.

Ponowne kompilowanie magazynu

  1. Na serwerze, na którym są uruchomione usługi warstwy aplikacji dla usługi Azure DevOps, otwórz okno wiersza polecenia i zmień katalogi na Drive:\\%programfiles%\\Azure DevOps Server 2019\\Tools.

  2. Wprowadź następujące polecenie:

    TFSConfig rebuildwarehouse /all /ReportingDataSourcePassword:Password

    gdzie Hasło to hasło dla konta źródeł danych dla usług Reporting Services (TFSReports).

  3. Zaczekaj na ukończenie polecenia.

  4. Na serwerze raportów otwórz program Internet Explorer i wprowadź następujący ciąg na pasku Adres:

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

    W polu VirtualDirectory wprowadź katalog wirtualny usług Internet Information Services (IIS), który został określony podczas instalowania Azure DevOps Server. Domyślnie ten katalog ma nazwę tfs.

    Zostanie otwarta strona WarehouseControlWebService .

    Uwaga

    Aby usługa sieci Web Kontrola magazynu mogła być dostępna, musi być uruchomiona pula aplikacji microsoft Azure DevOps Server.

  5. Wybierz pozycję GetProcessingStatus, a następnie wybierz pozycję Wywołaj.

    Ważne

    Usługa powinna zwrócić wartość Bezczynność dla wszystkich zadań, co oznacza, że moduł nie jest przetwarzany. Jeśli zostanie zwrócona inna wartość, powtórz ten krok do momentu zwrócenia bezczynności dla wszystkich zadań.

  6. Na stronie WarehouseControlWebService wybierz pozycję ProcessAnalysisDatabase, a następnie wybierz pozycję Wywołaj.

    Otworzy się okno przeglądarki. Usługa zwraca wartość True po pomyślnym rozpoczęciu przetwarzania modułu i wartości False , jeśli nie powiedzie się lub jeśli moduł jest obecnie przetwarzany.

  7. Aby określić, kiedy moduł został przetworzony, wróć do strony WarehouseControlWebService , wybierz pozycję GetProcessingStatus, a następnie wybierz pozycję Wywołaj.

    Przetwarzanie jest wykonywane, gdy usługa GetProcessingStatus zwraca wartość Bezczynność dla wszystkich zadań.

  8. Na serwerze warstwy aplikacji dla usługi Azure DevOps otwórz przystawkę Zarządzanie komputerem i uruchom usługę zadań w tle programu Visual Studio Team Foundation.

Krok 6. Czyszczenie pamięci podręcznej danych na serwerach warstwy aplikacji

Każdy serwer warstwy aplikacji we wdrożeniu usługi Azure DevOps używa pamięci podręcznej plików, dzięki czemu użytkownicy mogą szybko pobierać pliki z serwera warstwy danych. Podczas przywracania wdrożenia należy wyczyścić tę pamięć podręczną na każdym serwerze warstwy aplikacji. W przeciwnym razie niezgodne identyfikatory plików mogą powodować problemy, gdy użytkownicy pobierają pliki z kontroli wersji. Jeśli wdrożenie korzysta z serwera proxy usługi Azure DevOps, należy również wyczyścić pamięć podręczną danych na każdym serwerze skonfigurowanym jako serwer proxy.

Uwaga

Usuwając pamięć podręczną danych, można zapobiec pobieraniu nieprawidłowych wersji plików w kontroli wersji. Należy to zrobić rutynowo, chyba że zastąpisz cały sprzęt we wdrożeniu w ramach przywracania. Jeśli zastępujesz cały sprzęt, możesz pominąć tę procedurę.

Czyszczenie pamięci podręcznej danych

  1. Na serwerze z uruchomionymi usługami warstwy aplikacji dla usługi Azure DevOps lub skonfigurowanym za pomocą serwera proxy usługi Azure DevOps otwórz okno wiersza polecenia i zmień katalogi na Drive:\%programfiles%\Azure DevOps Server 2019\Application Tier\Web Services\_tfs_data.

  2. Usuń wszystko w katalogu _tfs_data.

  3. Powtórz te kroki dla każdego serwera warstwy aplikacji i każdego serwera z uruchomionym serwerem proxy usługi Azure DevOps we wdrożeniu.

Krok 7. Ponowne uruchamianie usług

Po przywróceniu danych należy ponownie uruchomić usługi, aby przywrócić serwer do stanu operacyjnego.

Ponowne uruchamianie usług

  1. Na serwerze z uruchomionymi usługami warstwy aplikacji dla usługi Azure DevOps otwórz okno wiersza polecenia i zmień katalogi na Drive:\%programfiles%\Azure DevOps Server 2019\Tools.

  2. Wprowadź następujące polecenie:

    Funkcja TFSServiceControl wyczyszczanie

Aby uzyskać więcej informacji, zobacz polecenie TFSServiceControl.

Krok 8. Odświeżanie pamięci podręcznych na komputerach klienckich

Odświeżanie pamięci podręcznej na potrzeby śledzenia elementów roboczych na komputerach klienckich

  1. Na nowym serwerze otwórz program Internet Explorer.

  2. Na pasku Adres wprowadź następujący adres, aby nawiązać połączenie z usługą internetową ClientService :

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

    Uwaga

    Nawet jeśli zalogowano się przy użyciu poświadczeń administracyjnych, może być konieczne uruchomienie programu Internet Explorer jako administrator i może zostać wyświetlony monit o podanie poświadczeń.

  3. Wybierz pozycję StampWorkitemCache, a następnie wybierz pozycję Wywołaj. Metoda StampWorkitemCache nie zwraca żadnych danych.

Odświeżanie pamięci podręcznej kontroli wersji na komputerach klienckich

  1. Na komputerze klienckim otwórz okno wiersza polecenia z uprawnieniami administracyjnymi i zmień katalogi na Drive:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE.

  2. W wierszu polecenia wprowadź następujące polecenie, w tym adres URL kolekcji, który zawiera nazwę serwera i numer portu nowego serwera:

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

    W przykładowym wdrożeniu deweloper musi odświeżyć pamięć podręczną kontroli wersji dla projektu, który jest członkiem kolekcji DefaultCollection hostowanej we wdrożeniu FabrikamPrime Azure DevOps Server:

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

    Aby uzyskać więcej informacji, zobacz Polecenie Obszary robocze.