Восстановление данных в том же расположении

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

Вы можете восстановить данные из резервной копии на тот же сервер и экземпляр SQL Server для Azure DevOps, из которого были скопированы эти данные. Например, может потребоваться восстановить поврежденный набор баз данных до последнего известного хорошего состояния.

Примечание.

Ознакомьтесь со страницей "Резервное копирование и восстановление", чтобы ознакомиться с общими сведениями о восстановлении данных на том же сервере для Azure DevOps Server.

Интеграция SharePoint с Azure DevOps Server устарела с TFS 2017 и более поздними версиями.

Необходимые компоненты

Для выполнения этой процедуры необходимо быть членом следующих групп или иметь следующие разрешения:

  • Член группы безопасности администраторов на сервере или серверах , на которых запущена консоль администрирования Для Azure DevOps.
  • Либо член группы безопасности системного администратора SQL Server, либо разрешение sql Server Выполнить резервное копирование и создание плана обслуживания должно быть задано в качестве разрешения на экземпляр SQL Server, на котором размещены базы данных.
  • Член группы безопасности sysadmin для экземпляра базы данных для Azure DevOps и экземпляра служб Analysis Services базы данных хранилища.
  • Авторизованный пользователь базы данных TFS_Warehouse.
  • Член роли базы данных TFSEXECROLE .
  • Если развертывание использует продукты SharePoint, член группы "Администраторы фермы" для фермы , в которой восстанавливаются базы данных продуктов SharePoint.

Дополнительные сведения см. в разделе Контроль учетных записей.

Шаг 1. Остановка служб

Остановка служб помогает защитить данные от потери или повреждения во время восстановления, особенно при переименовании баз данных.

  1. На сервере, на котором выполняются службы уровня приложений для Azure DevOps, откройте окно командной строки и измените каталоги на Drive:\%programfiles%\Azure DevOps Server 2019\Tools.

  2. Введите следующую команду:

    TFSServiceControl quiesce
    

    Дополнительные сведения см. в команде TFSServiceControl.

Шаг 2. Переименование баз данных

Прежде чем использовать мастер восстановления для восстановления базы данных, которую Azure DevOps Server, необходимо сначала перевести ее в автономный режим, а затем переименовать ее.

Остановка баз данных

  1. Откройте SQL Server Management Studio.

    Примечание.

    Дополнительные сведения о восстановлении баз данных см. в статье "Реализация сценариев восстановления для баз данных SQL Server".

    Будет открыто диалоговое окно Соединение с сервером .

  2. В типе сервера выберите ядро СУБД.

  3. В имени сервера введите или выберите имя сервера уровня данных и экземпляра базы данных, а затем нажмите кнопку "Подключить".

    Примечание.

    Если SQL Server установлен в кластере, имя сервера — это имя кластера, а не имя компьютера.

    Откроется СРЕДА SQL Server Management Studio.

  4. Разверните узел "Базы данных", чтобы отобразить список баз данных, составляющих уровень данных для Azure DevOps.

  5. Переименуйте и остановите каждую базу данных, которую вы хотите восстановить, следуя инструкциям по вашей версии SQL Server. Присвойте базе данных имя, указывающее, что она является старой версией базы данных, заменяемой восстановленной версией. Например, можно переименовать TFS_DefaultCollection в TFS_DefaultCollection_Old.

Шаг 3. Восстановление баз данных Azure DevOps

Данные для Azure DevOps Server можно восстановить с помощью мастера восстановления в консоли администрирования в Azure DevOps Server. Мастер восстановления также восстанавливает ключ шифрования, используемый для создания отчетов.

Восстановление баз данных

  1. Откройте консоль администрирования для Azure DevOps Server, перейдите к запланированным резервным копиям и запустите мастер восстановления баз данных .

    Запуск мастера восстановления

  2. Укажите путь к резервному набору и выберите набор, используемый для восстановления.

    Выберите сетевой путь, а затем набор восстановления

  3. Завершите работу мастера и восстановите базы данных.

    Базы данных восстанавливаются на новом сервере

Шаг 4. Обновление всех учетных записей служб

Необходимо обновить учетную запись службы для Azure DevOps Server (TFSService) и учетной записи источников данных (TFSReports). Даже если эти учетные записи не изменились, необходимо обновить сведения, чтобы убедиться, что удостоверение и формат учетных записей соответствующие.

Обновление учетных записей служб

  1. На сервере, на котором запущены службы SQL Server Reporting Services, откройте управление компьютерами и запустите следующие компоненты, если они еще не запущены:

    • ReportServer или ReportServer$InstanceName (пул приложений)
    • СЛУЖБЫ SQL Server Reporting Services (TFSINSTANCE)
  2. На сервере уровня приложений откройте окно командной строки и измените каталоги на Drive:\%programfiles%\Azure DevOps Server 2019\Tools.

  3. В командной строке введите следующую команду, чтобы добавить учетную запись службы для Azure DevOps, где DatabaseName — имя базы данных конфигурации (по умолчанию TFS_Configuration):

    Учетные записи TfsConfig /add /AccountType:ApplicationTier /account: AccountName

    Дополнительные сведения см. в команде Accounts.

  4. Используйте команду "Учетные записи", чтобы добавить учетную запись источников данных для сервера отчетов и учетной записи прокси-сервера Azure DevOps, если развертывание использует эти ресурсы.

Шаг 5. Перестроение хранилища данных

Вы можете перестроить хранилище данных вместо восстановления TFS_Warehouse и баз данных TFS_Analysis. Для перестроения хранилища может потребоваться значительное время, если развертывание содержит много данных. Однако эта стратегия помогает обеспечить правильную синхронизацию всех данных. При перестроении хранилища Azure DevOps Server создает экземпляр, который затем необходимо обработать, чтобы заполнить его с помощью данных из операционных хранилищ.

Примечание.

Если вы восстановили TFS_Warehouse и TFS_Analysis базы данных в предыдущем разделе, вам не нужно выполнить следующую процедуру.

Перестроение хранилища

  1. На сервере, на котором выполняются службы уровня приложений для Azure DevOps, откройте окно командной строки и измените каталоги Drive:\\%programfiles%\\Azure DevOps Server 2019\\Toolsна .

  2. Введите следующую команду:

    TFSConfig rebuildwarehouse /all /ReportingDataSourcePassword: Password

    Где пароль является паролем для учетной записи источников данных для служб Reporting Services (TFSReports).

  3. Дождитесь завершения команды.

  4. На сервере отчетов откройте Internet Explorer и введите следующую строку в адресной строке:

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

    Для VirtualDirectory введите виртуальный каталог для службы IIS (IIS), указанный при установке Azure DevOps Server. По умолчанию этот каталог называется tfs.

    Откроется страница WarehouseControlWebService .

    Примечание.

    Пул приложений Microsoft Azure DevOps Server должен запускаться для доступности веб-службы управления хранилищем.

  5. Выберите GetProcessingStatus и нажмите кнопку "Вызвать".

    Внимание

    Служба должна возвращать значение простоя для всех заданий, указывающее, что куб не обрабатывается. Если возвращается другое значение, повторите этот шаг, пока не будет возвращено значение простоя для всех заданий.

  6. На странице WarehouseControlWebService выберите ProcessAnalysisDatabase и нажмите кнопку Invoke.

    Откроется окно браузера. Служба возвращает значение True , когда она успешно начинает обрабатывать куб и false , если она не выполнена или если в данный момент обрабатывается куб.

  7. Чтобы определить, когда куб был обработан, вернитесь на страницу WarehouseControlWebService , выберите GetProcessingStatus и нажмите кнопку Invoke.

    Обработка завершается, когда служба GetProcessingStatus возвращает значение простоя для всех заданий.

  8. На сервере уровня приложений для Azure DevOps откройте службу управления компьютерами и запустите службу фоновых заданий Visual Studio Team Foundation.

Шаг 6. Очистка кэша данных на серверах уровня приложений

Каждый сервер уровня приложений в развертывании Azure DevOps использует кэш файлов, чтобы пользователи могли быстро загружать файлы с сервера уровня данных. При восстановлении развертывания необходимо очистить этот кэш на каждом сервере уровня приложений. В противном случае несогласованные идентификаторы файлов могут вызвать проблемы при скачивании файлов из системы управления версиями. Если в развертывании используется прокси-сервер Azure DevOps, необходимо также очистить кэш данных на каждом сервере, настроенном в качестве прокси-сервера.

Примечание.

Очищая кэши данных, вы можете предотвратить скачивание неправильных версий файлов в системе управления версиями. Это следует делать обычно, если вы не заменяете все оборудование в развертывании в рамках восстановления. Если вы заменяете все оборудование, можно пропустить эту процедуру.

Очистка кэша данных

  1. На сервере, на котором выполняются службы уровня приложений для Azure DevOps или настроенные с помощью прокси-сервера Azure DevOps, откройте окно командной строки и измените каталоги на Drive:\%programfiles%\Azure DevOps Server 2019\Application Tier\Web Services\_tfs_data.

  2. Удалите все в каталоге _tfs_data.

  3. Повторите эти действия для каждого сервера уровня приложений и каждого сервера, на котором выполняется прокси-сервер Azure DevOps в развертывании.

Шаг 7. Перезапуск служб

После восстановления данных необходимо перезапустить службы, чтобы вернуть сервер в рабочее состояние.

Перезапуск служб

  1. На сервере, на котором выполняются службы уровня приложений для Azure DevOps, откройте окно командной строки и измените каталоги на Drive:\%programfiles%\Azure DevOps Server 2019\Tools.

  2. Введите следующую команду:

    TFSServiceControl unquiesce

Дополнительные сведения см. в команде TFSServiceControl.

Шаг 8. Обновление кэшей на клиентских компьютерах

Обновление кэша для отслеживания рабочих элементов на клиентских компьютерах

  1. На новом сервере откройте Internet Explorer.

  2. В адресной строке введите следующий адрес для подключения к веб-службе ClientService :

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

    Примечание.

    Даже если вы вошли в систему с учетными данными администратора, может потребоваться запустить Internet Explorer от имени администратора, и вам может потребоваться предоставить учетные данные.

  3. Выберите StampWorkitemCache и нажмите кнопку Invoke. Метод StampWorkitemCache не возвращает данные.

Обновление кэша управления версиями на клиентских компьютерах

  1. На клиентском компьютере откройте окно командной строки с правами администратора и измените каталоги на Drive:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE.

  2. В командной строке введите следующую команду, включая URL-адрес коллекции, включающую имя сервера и номер порта нового сервера:

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

    В примере развертывания разработчику необходимо обновить кэш управления версиями для проекта, который является членом коллекции DefaultCollection, размещенной в развертывании FabrikamPrime Azure DevOps Server:

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

    Дополнительные сведения см. в команде "Рабочие области".