2011-06-06 104 views
1

我正在尝试将tfs备份。但它失败了。TFS备份失败:超时已过期

我会在生成的日志文件中添加异常详细信息。

[错误@ 12:41:51.187] Microsoft.SqlServer.Management.Smo.FailedOperationException:服务器'sampledb-tfs-ser'的备份失败。 ---> Microsoft.SqlServer.Management.Common.ExecutionFailureException:执行Transact-SQL语句或批处理时发生异常。 ---> System.Data.SqlClient.SqlException:超时过期。操作完成之前超时的时间或服务器没有响应。 在Microsoft.SqlServer.Management.Common.ConnectionManager.ExecuteTSql(ExecuteTSqlAction行动,对象execObject,数据集fillDataSet,布尔catchException)

我知道服务器超时。是否有任何方法来增加超时或任何其他方式可以解决这个问题..?

任何人都可以请帮助...?

回答

1

看起来你正在使用某种编程语言(C#,PowerShell等)来做到这一点。您将不得不将连接的查询超时设置为0,以使程序无限期地等待备份完成。你如何去做这取决于语言,ServerConnection类有一个名为StatementTimeout的属性。设置为0,你应该很好去。

+0

不,我没有使用任何有点语言。这是TFS管理控制台中的“立即备份”选项。我只是点击它。 – 2011-06-08 05:10:42

+0

对。那么幕后使用什么?它返回一个SMO错误的事实表明它以某种方式与.NET代码一起进行。 – 2011-06-08 15:30:30

+0

这是使用TFS powertools备份计划 – 2011-06-09 17:26:33

1

在您的TFS APPTier服务器,文件 C:\ ProgramData \微软\的Team Foundation \ Server配置\ ConfigPT.xml ,尝试改变的财产

<SqlStatementTimeoutInSeconds>21600</SqlStatementTimeoutInSeconds> 

值尝试12小时(每次43200)代替。这解决了我的问题。

此文件是在“Team Foundation管理控制台”中执行TFS备份计划的结果。因此,在重新执行TFS备份计划后,您可能不得不每次更改该值。