对链接服务器的查询从不停止执行

时间:2009-08-20 14:03:32

标签: sql-server-2005 oracle linked-server

我在SQL Server 2005中为Oracle DB创建了一个链接服务器。当我运行查询时,查询永远不会停止执行,并且永远不会返回结果。当我取消查询时,它永远不会完成取消。我必须关闭窗户才能让它停下来。

我的设置如下:

  • 在SQL Server上安装了Oracle客户端工具
  • 跟随查询:

    EXEC sp_addlinkedserver
    @server = 'MyNewLinkedServer',
    @srvproduct = 'Oracle',
    @provider = 'OraOLEDB.Oracle',
    @datasrc = 'TNSNAMES_Entry'

  • 然后我将TNSNAMES.ORA文件添加到ORAHOME1\network\admin\目录。

  • 在我的链接服务器的属性中,我使用我的Oracle用户名/密码将所有连接的安全设置更改为Be made using this security context:
  • 我运行了以下查询:

    SELECT * FROM OPENQUERY(MyNewLinkedServer, 'SELECT COUNT(*) FROM MySchema.MyTable');

查询永远不会完成执行。有人有任何见解吗?我缺少的任何步骤?

更新:
第二天我来了,再次尝试了查询,效果很好。我怀疑某种网络问题。

1 个答案:

答案 0 :(得分:1)

查看Oracle服务器,查询v $ session。查看您是否可以看到远程连接以及Oracle会话正在执行的操作。您甚至可以在Oracle端进行跟踪(由登录触发器引发)来记录发生的所有事情(例如查询解析,返回错误等)。