链接服务器不需要加密

时间:2012-10-24 20:37:24

标签: sql-server-2008 encryption

我正在尝试将链接服务器从Windows 2k3 / SQL Server 2000复制到Windows 2008 / SQL 2008 R2安装程序。

SQL 2000链接服务器的设置如下:

srvname=blah.blah.com
srvproduct=SQL Server
providername=SQLOLEDB
datasource=blah.blah.com
srvnetname=blah.blah.com
rpc=1
rpcout=1
dataaccess=1

SQL 2008 R2链接服务器的设置方式相同。 我已经复制了远程用户,一切似乎都很好,除非我尝试连接,我收到此错误:

 OLE DB provider "SQLNCLI10" for linked server "blah.blah.com" returned message "Client unable to establish connection". (Microsoft SQL Server, Error: 20)
 Encryption not supported on SQL Server

我仍然可以访问SQL 2000机器,并且可以正常运行查询。我猜测问题是Windows2008机器正在尝试加密数据,但链接服务器说它无法处理加密。沿着那条线的东西。我玩过各种不同的数据源类型,似乎没什么好看的。我无法访问远程服务器,所以我不知道它上面有什么操作系统/数据库。

拥有比我更多SQL知识的人能指出我正确的方向吗? 谢谢!

1 个答案:

答案 0 :(得分:0)

万岁!我做到了对于任何可能在将来发现此问题的人来说,这就是我所做的:

  1. 创建与SOMESERVER.COM的ODBC连接,将其命名为dsnSOME
    • 驱动程序:SQL Server
    • 姓名:dsnSOM
    • 服务器:SOMESERVER.COM
  2. 为dsnSOM创建链接服务器:
    • 链接服务器:“SOMESERVER”(我觉得不重要)
    • 提供程序:用于ODBC驱动程序的Microsoft OLE DB提供程序
    • 产品名称:dsnSOME
    • 数据来源:dsnSOME
  3. 就是这样。现在,当我调用存储过程时,我调用:

    [SOMESERVER].database.owner.storedprocedure
    

    它有效!

    似乎无论出于何种原因,当尝试直接在SQL 64位上运行存储过程到SQL 32位链接服务器时,它会给出关于加密的这个奇怪的消息。但是通过ODBC并且效果很好。