来自数据库执行的错误消息:由于不存在登录映射,因此拒绝对远程服务器的访问



环境&详细信息

  • 环境 - SQL Server2014。
  • 所有DB都参加可用性组。
  • 要连接以仅读取服务器的节点,我们在两个节点上创建了链接服务器。
  • 在内部,我们提供了服务器DNS名称和" ApplicationIntent = ReadOnly",作为链接连接字符串的一部分。链接的服务器始终读取辅助/读取节点的数据。
  • 链接服务器正在使用[ReadOnly] SQL用户。该用户在选定的数据库上具有数据读取器的权限。
  • 上面的链接服务器 - 工作正常。我们正在使用SQL作业中的链接服务器,该服务器在" SA"上下文下运行。

问题

  • 我正在开发ADF管道。同样,在SQL Server上创建了SQL用户 - " AdFuser"。该用户具有数据读取器,所需数据库的数据作者权限。
  • 现在,我正在尝试在" adfuser"上下文下关注查询。

    从[readonly].db.dbo.tablea。

  • 中选择Col1,Col2

它正在扔错误 - 数据库操作在服务器"服务器名称"上使用SQL错误编号'7416'失败。来自数据库执行的错误消息:由于不存在登录映射而拒绝对远程服务器的访问。

有什么解决方案?

您需要在创建链接服务器上的提供商字符串中添加"用户ID =用户名"。

EXEC master.dbo.sp_addlinkedserver @server = N’LinkServerName’, @provider=N’SQLNCLI’,@srvproduct = ‘MS SQL Server’, @provstr=N’SERVER=serverNameInstanceName;User ID=myUser‘ 

您可以在这里阅读更多:https://blogs.technet.microsoft.com/mdegre/2011/03/03/10/access-to-te-the-the-remote-server-is-is-is-denied-because-no-login-mapping-exists/pexists/pexists/p.Div>

相关内容

  • 没有找到相关文章

最新更新