У меня есть установка Team Foundation Server 2010, в которой у меня есть TFS на одном сервере и базы данных на другом. Недавно сервер с базами данных полностью вышел из строя и мне пришлось его заменить. Я восстановил базы данных из резервных копий и изменил файл web.config для tfs, чтобы он указывал на новый сервер, и почти все работает. Я могу подключаться к tfs, выполнять проверки/регистрации, создавать рабочие элементы и т. д. Однако я не могу ставить в очередь сборки, а журнал событий заполняется ошибками, говорящими о том, что TfsJobAgent не может подключиться к базе данных. Мне было интересно, знает ли кто-нибудь, есть ли способ настроить TfsJobAgent так, чтобы он указывал на мою новую базу данных. Подробности журнала событий приведены ниже (TCOSRV1 — это машина, на которой работает tfs, а не сервер базы данных). Любая помощь будет принята с благодарностью.
TF53010: в компоненте или расширении Team Foundation произошла следующая ошибка: Дата (UTC): 11.07.2013 16:55:27 Компьютер: TCOSRV1 Домен приложения: TfsJobAgent.exe Сборка: Microsoft.TeamFoundation.Framework.Server, Версия = 10.0.0.0, культура = нейтральная, PublicKeyToken = b03f5f7f11d50a3a; v2.0.50727 Узел службы: Сведения о процессе: Имя процесса: TFSJobAgent Идентификатор процесса: 3520 Идентификатор потока: 5304 Имя учетной записи: NT AUTHORITY\NETWORK SERVICE
Подробное сообщение: Во время выполнения агента задания произошла ошибка. Операция будет повторена. Подобные ошибки в следующие пять минут могут не регистрироваться. Сообщение об исключении: TF246017: Team Foundation Server не удалось подключиться к базе данных. Убедитесь, что сервер, на котором размещается база данных, работает и что сетевые проблемы не блокируют связь с сервером. (введите исключение DatabaseConnectionException)
Трассировка стека исключений: в Microsoft.TeamFoundation.Framework.Server.TeamFoundationSqlResourceComponent.TranslateException(Int32 errorNumber, SqlException sqlException, SqlError sqlError) в Microsoft.TeamFoundation.Framework.Server.TeamFoundationSqlResourceComponent.TranslateException(SqlException sqlException) в Microsoft.TeamFoundation.Framework.Server .TeamFoundationSqlResourceComponent.MapException(SqlException ex, QueryExecutionState queryState) в Microsoft.TeamFoundation.Framework.Server.TeamFoundationSqlResourceComponent.HandleException(SqlException ex) в Microsoft.TeamFoundation.Framework.Server.TeamFoundationSqlResourceComponent.Execute(ExecuteType executeType, CommandBehavior поведение) в Microsoft. .Framework.Server.ExtendedAttributeComponent.ReadDatabaseAttribute(String attributeName) в Microsoft.TeamFoundation.Framework.Server.DatabaseConnectionValidator.ValidateDatabaseInstanceStamp(String configConnectionString, Guid configInst anceId) в Microsoft.TeamFoundation.Framework.Server.DatabaseConnectionValidator.ValidateApplicationConfiguration(String configConnectionString, Guid configInstanceId, List`1 sqlInstances, String analysisInstance, String analysisDatabaseName, Boolean ignoreAnalysisDatasourceUpdateErrors, Boolean autoFixConfiguration, Boolean fullValidation, DatabaseVerificationworkeDatabaseTypes continueOnMissing) .Server.ApplicationServiceHost..ctor(Guid instanceId, String connectionString, String PhysicalDirectory, String plugInDirectory, String virtualDirectory, Boolean failOnInvalidConfiguration) в Microsoft.TeamFoundation.Framework.Server.JobApplication.SetupInternal() в Microsoft.TeamFoundation.Framework.Server.JobServiceUtil .RetryOperationsUntilSuccessful (операции RetryOperations)
Детали внутреннего исключения:
Сообщение об исключении: при установлении соединения с SQL Server произошла ошибка, связанная с сетью или экземпляром. Сервер не найден или не был доступен. Убедитесь, что имя экземпляра указано правильно и что SQL Server настроен на разрешение удаленных подключений. (поставщик: сетевые интерфейсы SQL, ошибка: 26 — указана ошибка обнаружения сервера/экземпляра) (тип SqlException) Класс исключения SQL: 20 Номер исключения SQL: -1 Процедура исключения SQL: Номер строки исключения SQL: 0 Сервер исключений SQL: Состояние исключения SQL : 0 Ошибки SQL:
Словарь данных исключений: HelpLink.ProdName = Microsoft SQL Server HelpLink.EvtSrc = MSSQLServer HelpLink.EvtID = -1 HelpLink.BaseHelpUrl = http://go.microsoft.com/fwlink HelpLink.LinkId = 20476
Восстановление на новый уровень данных (как это называется при перемещении между серверами) требует достаточно обширного процесса, чтобы обеспечить правильное обновление всех параметров. Процедура будет такой же для процесса, который вы будете использовать для миграции с одного SQL Server на другой.