Tfs 2010 附加集合错误 KB2278944CollectionInstall.sql 列名无效 'System.AreaID'

Tfs 2010 Attach collection error KB2278944CollectionInstall.sql Invalid column name 'System.AreaID'

我们有一个 Tfs 2010 SP1 团队项目集, 我们试图分离它并备份数据库并重新连接它。 分离进行得很好。 附加时出现此错误。

[Error] KB2278944CollectionInstall.sql Line 1587 Error: Invalid column name 'System.AreaID'. Invalid column name 'System.IterationID'. Invalid column name 'ID'. Invalid column name 'ID'. Invalid column name 'ID'. Stamping DB...

在深入分析日志时,我们在 TFS 日志末尾看到了这个错误

[Error] KB2278944CollectionInstall.sql Line 1587 Error: Invalid column name 'System.AreaID'.
Invalid column name 'System.IterationID'.
Invalid column name 'ID'.
Invalid column name 'ID'.
Invalid column name 'ID'.
Stamping DB...
[Info   @11:50:21.425] [2015-12-08 09:43:55Z][Informational] Microsoft.TeamFoundation.Framework.Server.CollectionServicingException: KB2278944CollectionInstall.sql Line 1587 Error: Invalid column name 'System.AreaID'.
Invalid column name 'System.IterationID'.
Invalid column name 'ID'.
Invalid column name 'ID'.
Invalid column name 'ID'.
Stamping DB... ---> System.Data.SqlClient.SqlException: Invalid column name 'System.AreaID'.
Invalid column name 'System.IterationID'.
Invalid column name 'ID'.
Invalid column name 'ID'.
Invalid column name 'ID'.
Stamping DB...
   at Microsoft.TeamFoundation.Framework.Server.TeamFoundationSqlResourceComponent.MapException(SqlException ex, QueryExecutionState queryState)
   at Microsoft.TeamFoundation.Framework.Server.TeamFoundationSqlResourceComponent.HandleException(SqlException ex)
   at Microsoft.TeamFoundation.Framework.Server.TeamFoundationSqlResourceComponent.Execute(ExecuteType executeType, CommandBehavior behavior)
   at Microsoft.TeamFoundation.Framework.Server.TeamFoundationSqlResourceComponent.ExecuteNonQuery(Boolean bindReturnValue)
   at Microsoft.TeamFoundation.Framework.Server.SqlScriptResourceComponent.ExecuteSql(String sqlScriptResourceName, String[] lines, SqlParameter[] sqlParameters)
   --- End of inner exception stack trace ---
   at Microsoft.TeamFoundation.Framework.Server.SqlScriptResourceComponent.ExecuteSql(String sqlScriptResourceName, String[] lines, SqlParameter[] sqlParameters)
   at Microsoft.TeamFoundation.Framework.Server.SqlScriptResourceComponent.ExecuteSql(Stream sqlScriptResource, String sqlScriptResourceName, SqlParameter[] sqlParameters, Boolean retryIfLostConnection)
   at Microsoft.TeamFoundation.Server.Servicing.TFCollection.FrameworkStepPerformer.ExecuteSql(String stepData, ServicingContext servicingContext, Boolean validateOnly)
   at Microsoft.TeamFoundation.Framework.Server.TeamFoundationStepPerformerBase.Microsoft.TeamFoundation.Framework.Server.IStepPerformer.PerformStep(String servicingOperation, String stepType, String stepData, ServicingContext servicingContext)
   at Microsoft.TeamFoundation.Framework.Server.ServicingStepDriver.PerformServicingStep(ServicingStep step, ServicingContext servicingContext, ServicingStepGroup group, ServicingOperation servicingOperation, Boolean validateOnly)
[Info   @11:50:21.425] [2015-12-08 09:43:55Z] Servicing step Tfs2010RtmKB2278944Install SQL servicing step failed. (ServicingOperation: Tfs2010SP1Install; Step group: Tfs2010RtmKB2278944Install)
[Info   @11:50:21.425] [2015-12-08 09:43:55Z][Informational] Clearing dictionary, removing all items.
[Error  @11:50:21.425] The servicing operation failed.

我多次尝试停止和启动、分离和附加。 也重新启动机器,没有任何效果

最终有效的解决方案是

Get into the TFS App Tier server, open command prompt Navigate to the Tools folder.

`E:\Program Files\Microsoft Team Foundation Server 2010\Tools>'

运行以下命令,你将得到如下输出

TfsConfig repair

记录发送到文件 C:\ProgramData\Microsoft\Team Foundation\Server Configuration\Logs\CFG_SVC_UNK_ 1208_103237.log 命令:修复 TfsConfig - Team Foundation Server 配置工具 版权所有 (c) Microsoft Corporation。版权所有。 获取服务锁。 已获取服务锁。 停止应用程序... 应用程序成功停止。 开始申请... 应用程序启动成功。

现在进入团队管理控制台,检查名为 Status

的选项卡

上面会有另一个项目说

Servicing collection Queued.

几分钟后,它应该说

Servicing collection Succeeded

然后您可以将 collection 联机。 :)