在我们的数据库服务器中,我们安装了以下版本的Microsoft SQL:
Microsoft SQL Server 2016(SP2-CU2-GDR)(KB4458621)-13.0.5201.2 (X64)2018年8月18日版权所有(c)Microsoft Corporation 企业版:Windows Server上的基于内核的许可(64位) 2012 R2 Standard 6.3(Build 9600:)(系统管理程序)
在同一服务器上,我们还安装了 Sybase 16 Driver
使用Adaptive Server Enterprise,我们创建了ODBC 64位连接(由于MS SQL是64位),并且在测试了连接之后,提示显示连接和凭据都很好。
然后我使用以下脚本在MS SQL中创建了链接服务器
不是凭据的真实值
DECLARE @ls_servername varchar(128) = N'SybaseSERVER'
DECLARE @ls_serverproduct varchar(128) = N'sybase'
DECLARE @ls_provider varchar(128) = N'MSDASQL'
DECLARE @ls_datasource varchar(128) = N'SybaseSERVER'
DECLARE @ls_catalog varchar(128) = N'TestDB'
DECLARE @ls_providerstr varchar(max) = NULL
DECLARE @ls_username varchar(128) = N'*TestUser*'
DECLARE @ls_password varchar(128) = N'*TestPass*'
--Add linked server
EXEC sp_addlinkedserver
@server=@ls_servername
,@srvproduct=@ls_serverproduct
,@provider=@ls_provider
,@datasrc=@ls_datasource
,@catalog=@ls_catalog
,@provstr=@ls_providerstr
--Add credentials
EXEC sp_addlinkedsrvlogin
@rmtsrvname=@ls_servername
,@useself=N'False'
,@rmtuser=@ls_username
,@rmtpassword=@ls_password
GO
使用上面的设置,我能够在DEV数据库服务器中成功查询 选择*从SybaseSERVER.TestDB.dbo.SampleTable
但是,在Staging Database Server中使用相同的设置时,我遇到了错误:
链接服务器“ SybaseSERVER”的旧数据库提供程序“ MSDASQL”返回消息“ [SAP] [ASE ODBC驱动程序]客户端无法建立连接”。
但是在测试连接时ODBC 64位连接显示成功。
我已经检查了设置,并且我确定它们在MS SQL和Sybase驱动程序安装方面都是相同的。两者都检查时,PATH环境变量相差不大。
登台服务器中出现此问题的可能原因是什么?可能的解决方案是什么?
答案 0 :(得分:0)
这是我们的DBA所做的,以使其正常工作
我不确定点1是否已连接,但是根据我们的DBA,这就是他所做的。 但是目前,这是我们的第一件事,以防我们在其他服务器上再次遇到此问题。