SQL 2008 链接服务器访问被拒绝错误的优势

Posted

技术标签:

【中文标题】SQL 2008 链接服务器访问被拒绝错误的优势【英文标题】:Advantage to SQL 2008 Linked Server Access Denied Error 【发布时间】:2011-01-21 18:29:38 【问题描述】:

我正在尝试在 SQL 2008 中创建与 Advantage v7 数据库服务器的链接服务器。我已经使用以下命令在 SQL 2008 中成功创建了链接服务器,并且连接测试正常。另外,我连接的 Advantage DB 没有数据字典。

用于创建链接服务器的 SQL

EXEC master.dbo.sp_addlinkedserver 
  @server = N'ADVANTAGE', @srvproduct=N'Advantage', 
  @provider=N'Advantage.OLEDB', 
  @datasrc=N'\\asc1\questtest$\spaulrun'
 /* For security reasons the linked server remote logins password is changed with ######## */

EXEC master.dbo.sp_addlinkedsrvlogin       
  @rmtsrvname=N'ADVANTAGE',
  @useself=N'False',
  @locallogin=NULL,@rmtuser=NULL,@rmtpassword=NULL

当我运行以下查询时:

select * from
openquery(ADVANTAGE,'select * from members')

我收到此错误:

Msg 7399, Level 16, State 1, Line 1
The OLE DB provider "Advantage.OLEDB" for linked server "ADVANTAGE" reported an error. Access denied.
Msg 7350, Level 16, State 2, Line 1
Cannot get the column information from OLE DB provider "Advantage.OLEDB" for linked server "ADVANTAGE".

我已确认这不是 NT 文件权限问题。此外,就在显示错误消息之前,我可以在屏幕上看到所有列名一秒钟。因此,我至少从 Advantage 获得了一些表格信息。我只是不知道为什么我会收到拒绝访问消息。

非常感谢任何帮助!

【问题讨论】:

问题 DB GUY 你使用的是什么 OLE DB Provider,你是如何找到它的?你需要做什么才能注册? 【参考方案1】:

这听起来很熟悉,但我不记得我收到的确切错误消息。

尝试转到链接服务器设置中的 Advantage OLE DB 提供程序,然后右键单击并选择属性并设置“允许进程内”。

如果我没记错的话,在 Management Studio Express 中我去了 服务器对象 -> 链接服务器 -> 提供程序 -> Advantage OLE DB 提供程序(右键单击-> 属性或双击)

设置“允许进程”

【讨论】:

@DBGuy,如果 Edgar 的回答对您有用,请勾选复选标记以接受它作为此问题的答案。

以上是关于SQL 2008 链接服务器访问被拒绝错误的优势的主要内容,如果未能解决你的问题,请参考以下文章

SQL Server 2008 - 在没有日志的情况下附加 mdf - 操作系统错误 5:5(访问被拒绝。)

提示SQL Sever不存在或拒绝访问,要怎么解决

SQL Server 2008 R2 附加数据库 “尝试打开或创建物理文件 拒绝访问”的解决办法

school.sql拒绝访问

sql 数据库拒绝访问

“/”应用程序中的服务器错误。 SQL Server 不存在或访问被拒绝。 怎么办?