linked-server - SQL 作业、链接服务器、域帐户
问题描述
我想我已经尝试了一切,但我不知道如何设置一个 SQL 作业,它有一个在链接服务器上执行 SELECT 的 T-SQL 步骤。
1) 我有一个域用户 mydomain\SQLJob
2) 我有一个 SQL 2017 服务器“JOBSERVER”,运行 SQL 代理,以域用户 mydomain\sv_agent 身份登录(无法更改)。也不应向该用户授予任何进一步的权利。
3) 在 JOBSERVER 上,我创建了一个链接服务器
EXEC sp_addlinkedserver 'LINKEDSERVER'
4) mydomain\SQLJob 是 LINKEDSERVER 数据库上的数据读取器
5) 我可以在常规查询窗口中从 JOBSERVER 执行 SELECT * FROM LINKEDSERVER...。
在 JOBSERVER 我试过
ALTER DATABASE MyDatabase SET TRUSTWORTHY ON
然后将作业设置为在 MyDatabase 中执行
我也试过
Job Step Properties > Advanced > Run as user > mydomain\SQLJob
我尝试将 mydomain\SQLJob 添加到 JOBSERVER 上的链接服务器,无论是否使用 Impersonate
有人可以让我知道正确的步骤是什么吗?
谢谢
解决方案
我发现另一个帖子说它无法完成。
我所做的是将 T-SQL 更改为 PowerShell 脚本。在这里运行方式工作得很好。
推荐阅读
- mysql - 构造具有可变数量参数的参数化 sql 查询
- pytorch - K40c 上的 CUDA 10.1 问题
- objective-c - 委托属性有什么特殊含义吗?
- google-apps-script - 如何对 Google 表格中的多个标签使用相同的脚本
- javascript - 模式在 JSTL foreach 中不重复
- swift - 即使您的互联网连接丢失,方法 report(_:withCompletionHandler:) 也会发送分数吗?
- mongodb - 以时间序列存储大量 Mongo 数据以便轻松查询的正确方法?
- c# - 有没有办法阻止日历控件进入月视图?
- php - 如何在 Symfony 中设置 .env 以使用 PDO 进行逆向工程
- java - java - 如何将空值添加到java中的数组?