首页 > 解决方案 > 调试仅在 SQL Server 2014 上短时间运行的链接服务器

问题描述

在 SQL Server 2008(最新版本)上,我有一个连接到 Excel 文件的链接服务器,该文件使用以下设置运行流畅:

@srvproduct=N'ACE 12.0', @provider=N'Microsoft.ACE.OLEDB.12.0' and @provstr=N'Excel 12.0; HDR=Yes'

此外,查询和连接超时设置为 30 秒。

当我在 SQL Server 2014(最新版本)上生成完全相同的链接服务器时,链接服务器工作正常。

不幸的是,大约一天后,从 SQL Server 2014 到 Excel 文件的连接停止工作。例如,当右键单击链接服务器并单击Test Connection时,SQL Server Management Studio 会冻结大约半小时。我得到的错误如下:


与链接服务器的测试连接失败。

====================================

执行 Transact-SQL 语句或批处理时发生异常。(Microsoft.SqlServer.ConnectionInfo)


程序位置:在 Microsoft.SqlServer.Management.Common.ServerConnection。ExecuteNonQuery(String sqlCommand, ExecutionTypes executionType, Boolean retry) at Microsoft.SqlServer.Management.Smo.ExecutionManager.ExecuteNonQuery (String cmd, Boolean retry) at Microsoft.SqlServer.Management.Smo.LinkedServer.TestConnection() at Microsoft.SqlServer.Management .UI.VSIntegration.ObjectExplorer。LinkedServer-ConnectionTest.Invoke()

====================================

执行超时已过期。在操作完成之前超时时间已过或服务器没有响应。(.Net SqlClient 数据提供者)

错误号:-2 严重性:11 状态:0


节目地点:

在 Microsoft.SqlServer.Management.Common.ConnectionManager.ExecuteTSql(ExecuteTSqlAction 操作,对象 execObject,DataSet fillDataSet,布尔 catchException)在 Microsoft.SqlServer.Management.Common.ServerConnection.ExecuteNonQuery(字符串 sqlCommand,ExecutionTypes executionType,布尔重试)

====================================

等待操作超时


到目前为止,我唯一的解决方案是重新启动“SQL Server”服务。完成此操作后,链接服务器也再次工作。

有没有一种方法可以调试链接服务器在什么时候停止工作?

标签: sql-serverexcelsql-server-2014

解决方案


推荐阅读