Поделиться через


Общие сведения о резервном копировании сервера Team Foundation Server

Можно способствовать защите развертывания от потери данных, создав регулярное расписание резервного копирования для баз данных, от которых зависит Visual Studio Team Foundation Server (TFS).Чтобы полностью восстановить развертывание Team Foundation, необходимо сначала выполнить резервное копирование всех баз данных для TFS.Если развертывание включает службы отчетов Продукты SharePoint или SQL Server, необходимо также выполнить резервное копирование баз данных, которые TFS использует в этих компонентах.Для предотвращения ошибок синхронизации или несоответствия данных необходимо синхронизировать все резервные копирования, чтобы они выполнялись с одной и той же отметкой времени.Самый простой способ обеспечить синхронизацию — использование помеченных транзакций.Регулярная пометка связанных транзакций в каждой базе данных Team Foundation позволяет создать ряд общих точек восстановления в базах данных.Для получения пошаговых инструкций по резервному копированию развертывания на одном сервере, в котором используются SharePoint Foundation 2010 и функции отчетов, см. раздел Создание резервного графика и плана.

Кроме того, если планируется восстановление базы данных коллекции командного проекта в другое развертывание, чем из которого оно вызвано, сначала необходимо окончательно удалить базу данных с Team Foundation Server, и только затем выполнять архивацию.Дополнительные сведения см. в разделе Move a Team Project Collection.

СоветСовет

В Team Foundation Server 2012 доступен инструмент архивации и восстановления PowerTool.Этот инструмент значительно упрощает ведение и восстановление развертывания.Текущий выпуск этих средств можно найти здесь.

Резервное копирование баз данных

Можно создавать резервные копии баз данных, используемые в TFS как основное средство защиты развертывания Team Foundation от потерь данных.В следующей таблице и на сопутствующих рисунках показывается, для каких баз данных необходимо создавать резервные копии, а также приводятся примеры того, как эти базы данных могут быть физически распределены в развертывании.

Тип базы данных

Продукт

Необязательный компонент?

База данных конфигурации

Team Foundation Server

Нет

База данных хранилища

Team Foundation Server

Нет

Базы данных коллекции командного проекта

Team Foundation Server

Нет

Базы данных Продукты SharePoint

Продукты SharePoint

Да

Базы данных отчетов

Службы отчетов SQL Server

Да

Базы данных аналитики

Службы аналитики SQL Server

Да

ms253151.collapse_all(ru-ru,VS.110).gifТопологии развертывания

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

Простая топология с базами данных

Базы данных также могут быть распределены по нескольким серверам и фермам серверов.В данном примере топологии необходимо создавать резервные копии следующих баз данных на шести серверах или фермах серверов:

  • базы данных конфигурации;

  • базы данных хранилища;

  • баз данных коллекции командного проекта, расположенных в кластере SQL Server;

  • базы данных коллекции, расположенной на изолированном сервере SQL Server;

  • административных баз данных Продукты SharePoint и баз данных семейства веб-сайтов для обоих веб-приложений SharePoint;

  • баз данных, расположенных на сервере, на котором работают службы отчетов;

  • базы данных, расположенной на сервере, на котором работают службы аналитики.

Пример: сложное распределение баз данных

В обоих примерах не нужно создавать резервные копии каких-либо клиентов, подключающихся к серверу.При этом может потребоваться вручную очистить кэши для Team Foundation Server на клиентских компьютерах, чтобы они могли повторно подключиться к восстановленному развертыванию.

ms253151.collapse_all(ru-ru,VS.110).gifБазы данных, подлежащие резервному копированию

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

Предупреждающее замечаниеВнимание

Все базы данных в этом списке являются базами данных SQL Server.Хотя можно использовать SQL Server Management Studio для создания резервных копий отдельных баз данных в любое время, по возможности нужно избегать использования отдельных резервных копий. При восстановлении из отдельных резервных копий можно получить непредвиденные результаты, поскольку все базы данных, используемые TFS, связаны между собой.При создании резервной копии одиночной базы данных данные в ней будут рассинхронизированы с данными в других базах данных.

  • Базы данных для Team Foundation Server. Логический уровень данных для Team Foundation Server состоит из нескольких баз данных SQL Server, к которым относится база данных конфигурации, база данных хранилища и база данных для каждой коллекции командного проекта в развертывании.Эти базы данных могут располагаться на одном сервере, могут быть распределены по нескольким экземплярам в одном развертывании SQL Server или же могут быть распределены по нескольким серверам.Независимо от конкретного физического распределения необходимо создавать резервные копии всех баз данных с одной и той же отметкой времени, чтобы предотвратить потерю данных.Резервное копирование баз данных можно выполнять вручную или автоматически с использованием планов обслуживания, запускаемых в указанное время или через указанные интервалы.

    Предупреждающее замечаниеВнимание

    Список баз данных для Team Foundation Server нестатичен.При каждом создании коллекции создается новая база данных.При создании коллекции обязательно добавьте для нее базу данных в план обслуживания для резервного копирования баз данных Team Foundation Server в SQL Server.

  • Базы данных для продуктов SharePoint. Если в развертывании для размещения порталов командного проекта используется Продукты SharePoint, необходимо создавать резервные копии нескольких баз данных.Эти базы данных могут включать базу данных администрирования для каждого веб-приложения SharePoint, используемого развертыванием, и баз данных коллекции сайтов, на которых размещены портала командных проектов. В идеальном случае развертывание было настроено для использования отдельной коллекции сайтов для каждой коллекции командных проектов в развертывании.Аналогично тому, как резервные копии коллекций командных проектов в Team Foundation Server можно создавать и восстанавливать как одно целое, в Продукты SharePoint можно создавать и восстанавливать резервные копии семейств веб-сайтов.Если одна или несколько коллекций в развертывании использует в качестве корневого сайта сайты или дочерние сайты, а не семейства веб-сайтов, может оказаться, что полное резервное копирование и восстановление коллекций невозможно.Дополнительные сведения см. в разделе Организация сервера с помощью коллекций командных проектов.

    ПримечаниеПримечание

    Можно предположить, что необходимо выполнять резервное копирование как баз данных, так и веб-сайтов со страницами порталов командных проектов.Однако Продукты SharePoint динамически генерируют веб-сайты из баз данных.В связи с этим при создании резервных копий баз данных также создаются резервные копии частей командных проектов, отображаемых в качестве веб-сайтов.Если пользовательские коллекции сайтов, шаблоны сайтов или веб-части созданы в Продукты SharePoint, но вне Team Foundation, необходимо отдельно выполнить их резервное копирование.Дополнительные сведения см. на странице Резервное копирование (SharePoint Foundation 2010) веб-сайта корпорации Microsoft.

  • Базы данных для служб отчетов и служб аналитики. Если в развертывании отчеты для Team Foundation Server создаются с помощью служб отчетов SQL Server или служб аналитики SQL Server, необходимо также создавать резервные копии баз данных отчетов и аналитики.Тем не менее определенные базы данных после восстановления придется создавать повторно.

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

Расширенная подготовка к резервному копированию

При развертывании Team Foundation следует записывать создаваемые учетные записи и любые указываемые имена компьютеров, пароли и параметры.Кроме того, следует сохранять в безопасном расположении копии всех материалов для восстановления и документов, а также резервные копии баз данных и журналов транзакций.Для защиты от аварии, например пожара или землетрясения, следует хранить дубликаты резервных копий серверов в расположении, отличном от расположения серверов.Такая стратегия будет способствовать защите от потери критически важных данных.Рекомендуется хранить три копии резервных носителей, как минимум одна из которых должна храниться за пределами площадки в контролируемой среде.

Важное примечаниеВажно

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

При резервном копировании и восстановлении базы данных резервные копии данных необходимо создавать на носителях (например, лентах или дисках).План резервного копирования должен включать решения по управлению носителями, например:

  • План отслеживания и управления хранением и утилизацией резервных наборов данных.

  • Расписание перезаписи резервных носителей.

  • В многосерверной среде — решение о централизованном или распределенном резервном копировании.

  • Способ отслеживания срока службы носителей.

  • Процедура для минимизации последствий при утере резервного набора данных или резервных носителей (например, ленты).

  • Решение о хранении резервных наборов данных на площадке или за ее пределами и анализ потенциального влияния этого решения на сроки восстановления.

Так как данные Team Foundation хранятся в базах данных SQL Server, резервное копирование компьютеров, на которых установлены клиенты Team Foundation, необязательно.В случае отказа носителей или аварии, затрагивающей эти компьютеры, можно переустановить клиентское программное обеспечение и повторно подключиться к серверу.Переустановка клиентского программного обеспечения является более чистым и надежным способом по сравнению с восстановлением клиентского компьютера из резервной копии.

Резервную копию сервера можно создать с помощью планов обслуживания в SQL Server, выполняющих резервное копирование баз данных, связанных с развертыванием Team Foundation.Базы данных для Team Foundation Server работают взаимосвязанно, и их резервные копии необходимо создавать и восстанавливать одновременно.Дополнительные сведения о стратегиях создания резервных копий баз данных см. на странице Знакомство со стратегиями резервного копирования и восстановления в SQL Server (может быть на английском языке) на веб-сайте корпорации Майкрософт.

ms253151.collapse_all(ru-ru,VS.110).gifТипы резервных копий

Полные резервные копии данных (базы данных) Полное резервное копирование базы данных необходимо для возможности восстановления развертывания.В полную резервную копию входит часть журнала транзакций, что позволяет восстановить полную резервную копию.Полные резервные копии являются самодостаточными в том смысле, что они представляют полную базу данных, существующую на момент создания ее резервной копии.Дополнительные сведения см. на странице Полные резервные копии баз данных (может быть на английском языке) веб-сайта корпорации Майкрософт.

Разностные резервные копии данных (баз данных) Разностные резервные копии баз данных хранят только данные, измененные с момента создания последней полной резервной копии базы данных, которая в данном случае называется базовой копией для разностного копирования.Разностное резервное копирование баз данных компактнее и быстрее по сравнению с полным резервным копированием.Его использование позволяет сократить время резервного копирования за счет повышенной сложности.Для больших баз данных разностное резервное копирование может выполняться с меньшими интервалами, чем в случае полного резервного копирования, что сокращает вероятность потери рабочих данных.Дополнительные сведения см. на странице Разностные резервные копии баз данных (может быть на английском языке) веб-сайта корпорации Майкрософт.

Также следует регулярно создавать резервные копии журналов транзакций.Эти резервные копии необходимы для восстановления данных при использовании модели полного резервного копирования баз данных.При наличии резервных копий журналов транзакций базу данных можно восстановить до точки сбоя или до другого момента времени.

Резервные копии журнала транзакций Журнал транзакций представляет собой последовательную запись всех изменений, произошедших в базе данных в дополнение к транзакции, выполнившей каждое изменение.В журнал транзакций записывается начало каждой транзакции, изменения данных и, при необходимости, достаточные сведения для отмены изменений, внесенных в ходе каждой транзакции.Журнал постоянно увеличивается по мере выполнения регистрируемых операций в базе данных.

Резервные копии журналов транзакций позволяют восстановить базу до предшествующего момента времени.Например, можно восстановить базу данных в том состоянии, которое она имела перед вводом нежелательных данных или до сбоя.Кроме резервных копий базы данных, резервные копии журнала транзакция также должны быть частью стратегии восстановления.Дополнительные сведения см. на странице Работа с резервными копиями журналов транзакций (может быть на английском языке) веб-сайта корпорации Майкрософт.

Резервные копии журнала транзакций обычно занимают меньше ресурсов, чем полные резервные копии.Поэтому резервные копии журналов транзакций можно создавать чаще, чем полные резервные копии, что снижает риск потери данных.Однако иногда резервная копия журнала транзакций занимает больше места, чем полная копия.Например, база данных может отличаться высоким темпом транзакций, что приводит к быстрому увеличению журнала транзакций.В такой ситуации следует чаще создавать резервные копии журнала транзакций.Дополнительные сведения см. на странице Устранение неполадок при переполнении журнала транзакций (может быть на английском языке) веб-сайта корпорации Майкрософт.

Далее перечислены типы резервных копий журналов транзакций, которые можно создавать:

  • Чистая резервная копия журнала содержит только записи из журнала транзакций за период времени, без каких-либо массовых изменений.

  • Резервная копия неполного журнала и массовых изменений содержит журнал и страницы данных, измененные массовыми операциями.Восстановление на момент времени не поддерживается.

  • Резервная копия заключительного фрагмента журнала создается для вероятно поврежденной базы данных для перехвата записей журнала, которые еще не были подвергнуты резервному копированию.Резервная копия заключительного фрагмента журнала создается после сбоя для предотвращения потери рабочих данных и может содержать как данные только из самого журнала, так и данные массовых изменений журнала.

Поскольку синхронизация данных крайне важна для удачного восстановления Team Foundation Server, рекомендуется использовать помеченные транзакции как часть стратегии резервирования данных.Дополнительные сведения см. в разделе Back Up Team Foundation Server.

Резервное копирование служб (уровень приложений)

На логическом уровне приложений резервное копирование обязательно только для ключа шифрования служб отчетов.Можно предположить, что необходимо создавать резервные копии веб-сайтов, которые используются в качестве порталов командных проектов.Если Продукты SharePoint интегрируется в состав развертывания Team Foundation Server, резервное копирование порталов будет выполняться в рамках резервного копирования баз данных для Team Foundation Server и Продукты SharePoint.Тем не менее, резервное копирование и восстановление веб-сайта, который не был создан с помощью интегрированного веб-приложения, необходимо выполнять вручную.Кроме того, если существуют какие-либо настройки Продукты SharePoint или служб, для них также следует создавать резервные копии или регистрировать их другим способом, чтобы можно было воспроизвести их на новом сервере.

Хотя резервное копирование уровня приложений можно выполнить проще, чем копирование уровня данных, при восстановлении уровня приложения требуется выполнить большое число действий.Необходимо установить другой уровень приложений для Team Foundation, перенаправить коллекции командных проектов на этот новый уровень приложений, а также перенаправить сайты порталов командных проектов.

Имена базы данных по умолчанию

Если не настраивать имена баз данных, можно использовать следующую таблицу для идентификации баз данных, используемых в развертывании Team Foundation Server.Как упоминалось ранее, не во всех развертываниях имеются все перечисленные базы данных.Например, если в Team Foundation Server не настроено использование служб отчетов, то в развертывании не будет баз данных ReportServer и ReportServerTempDB.Аналогично в нем не будет базы данных диспетчера виртуальных машин System Center (SCVMM), которая называется VirtualManagerDB, если на сервере Team Foundation Server не настроена поддержка Lab Management.Кроме того, базы данных, используемые Team Foundation Server, могут быть распределены по нескольким экземплярам SQL Server или по нескольким серверам.

ПримечаниеПримечание

Префикс TFS_ по умолчанию добавляется к именам всех баз данных, создаваемых автоматически во время установки или работы Team Foundation Server.

База данных

Описание

TFS_Configuration

База данных конфигурации для Team Foundation Server, содержащая каталог, имена серверов и данные конфигурации для развертывания.В имени этой базы данных между TFS_ и Configuration могут находиться дополнительные символы, например имя пользователя, установившего Team Foundation Server.Например, база данных может называться TFS_Имя_пользователяConfiguration.

TFS_Warehouse;

База данных хранилища, содержащая данные для построения хранилища, используемого службами отчетов.В имени этой базы данных между TFS_ и Warehouse могут находиться дополнительные символы, например имя пользователя, установившего Team Foundation Server.Например, база данных может называться TFS_Имя_пользователяWarehouse.

TFS_имя_коллекции

База данных для коллекции командных проектов, содержащая все данные командных проектов из этой коллекции.К этим данным относится исходный код, конфигурации построения и конфигурации Lab Management.Количество баз данных коллекций совпадает с числом имеющихся коллекций.Например, если в развертывании имеется три коллекции, то необходимо создавать резервные копии трех баз данных коллекций.В имени каждой базы данных между TFS_ и именем_коллекции могут находиться дополнительные символы, например имя пользователя, создавшего эту коллекцию.Например, база данных коллекции может называться TFS_Имя_пользователяИмя_коллекции.

TFS_Analysis

База данных для служб аналитики SQL Server, содержащая источники данных и кубы для развертывания Team Foundation Server.В имени этой базы данных между TFS_ и Analysis могут находиться дополнительные символы, например имя пользователя, установившего службы аналитики.Например, база данных может называться TFS_Имя_пользователяAnalysis.

ПримечаниеПримечание
Можно создавать резервные копии этой базы данных, но перестраивать хранилище следует по восстановленной базе данных TFS_Warehouse.

ReportServer

База данных для служб отчетов, содержащая отчеты и параметры отчетов для развертывания Team Foundation Server.

ПримечаниеПримечание
Если службы отчетов установлены на сервере, отличном от Team Foundation Server, то эта база данных может отсутствовать на сервере уровня данных для Team Foundation.В этом случае необходимо выполнять настройку, резервное копирование и восстановление отдельно от Team Foundation Server.Однако следует синхронизировать обслуживание баз данных во избежание ошибок синхронизации.

ReportServerTempDB

Временная база данных для служб отчетов служит для временного хранения сведений при запуске особых отчетов.

ПримечаниеПримечание
Если службы отчетов установлены на сервере, отличном от Team Foundation Server, то эта база данных может отсутствовать на сервере уровня данных для Team Foundation.В этом случае необходимо выполнять настройку, резервное копирование и восстановление отдельно от Team Foundation Server.Однако следует синхронизировать обслуживание баз данных во избежание ошибок синхронизации.

WSS_Config.

База данных конфигурации для Продукты SharePoint, содержащая список всех сайтов, таких как базы данных контента, шаблоны сайтов, пользовательские веб-части и другие параметры центра администрирования SharePoint.

ПримечаниеПримечание
Не следует использовать помеченные транзакции при резервном копировании и восстановлении баз данных, используемых Продукты SharePoint.Однако чтобы избежать ошибок синхронизации, вместо этого необходимо попробовать синхронизировать расписания резервного копирования и восстановления для Продукты SharePoint и Team Foundation Server.Для получения дополнительной информации см. Создание плана резервного копирования для SharePoint Foundation 2010.

WSS_Content;

База данных контента для Продукты SharePoint, в которой хранится фактический контент порталов командных проектов.

ПримечаниеПримечание
Имя этой базы данных может меняться в зависимости от установленной версии Продукты SharePoint и от того, настраивалось ли имя тем пользователем, который выполнял установку.Не следует использовать помеченные транзакции при резервном копировании и восстановлении баз данных, используемых Продукты SharePoint.Однако чтобы избежать ошибок синхронизации, вместо этого необходимо попробовать синхронизировать расписания резервного копирования и восстановления для Продукты SharePoint и Team Foundation Server.Для получения дополнительной информации см. Создание плана резервного копирования для SharePoint Foundation 2010.

WSS_AdminContent

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

ПримечаниеПримечание
Не следует использовать помеченные транзакции при резервном копировании и восстановлении баз данных, используемых Продукты SharePoint.Однако чтобы избежать ошибок синхронизации, вместо этого необходимо попробовать синхронизировать расписания резервного копирования и восстановления для Продукты SharePoint и Team Foundation Server.Для получения дополнительной информации см. Создание плана резервного копирования для SharePoint Foundation 2010.

VirtualManagerDB

База данных администрирования диспетчера SCVMM содержит сведения, отображаемые в консоли администратора SCVMM, например виртуальные машины, компьютеры виртуальных машин, серверы библиотек виртуальных машин и их свойства.

ПримечаниеПримечание
Если диспетчер SCVMM установлен на сервере, отличном от Team Foundation Server, эта база данных может отсутствовать на сервере уровня данных Team Foundation.В этом случае необходимо выполнять настройку, резервное копирование и восстановление отдельно от Team Foundation Server.Однако следует использовать помеченные транзакции и синхронизировать обслуживание баз данных во избежание ошибок синхронизации.

См. также

Основные понятия

Резервное копирование и восстановление развернутых продуктов

Другие ресурсы

Восстановление односерверного развертывания на новом оборудовании [учебник]