创建目标服务器

适用于: SQL Server

重要

Azure SQL 托管实例,目前大多数但并非所有 SQL Server 代理功能都受支持。 有关详细信息,请参阅 Azure SQL 托管实例 T-SQL 与 SQL Server 的差异 或 SQL 托管实例中的 SQL 代理作业限制 。

本主题介绍如何使用 SQL Server Management Studio、Transact-SQL 或 SQL Server 管理对象(SMO)在 SQL Server 中创建目标服务器。

开始之前

安全性

具有与代理关联的步骤的分布式作业在目标服务器上的代理帐户的上下文下运行。 确保以下条件必须满足,否则与代理关联的作业步骤不会从主服务器下载到目标服务器上:

  • 主服务器注册表子项 \HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\<*instance_name*>\SQL Server Agent\AllowDownloadedJobsToMatchProxyName (REG_DWORD)的值设置为 1(true)。 默认情况下,此子项设置为 0(false)。

  • 目标服务器上存在与运行作业步骤的主服务器代理帐户同名的代理帐户。

如果使用代理帐户的作业步骤在从主服务器下载到目标服务器时失败,您可以在 msdb 数据库的 sysdownloadlist 表中的 error_message 列中检查以下错误消息:

  • “作业步骤需要代理帐户,但目标服务器上禁用了代理匹配。

    若要解决此错误,请将 AllowDownloadedJobsToMatchProxyName 注册表子项设置为 1。

  • “找不到代理。

    若要解决此错误,请确保目标服务器上存在与运行作业步骤的主服务器代理帐户同名的代理帐户。

权限

执行此过程的权限默认授予系统管理员 固定服务器角色的成员。

使用 SQL Server Management Studio

创建目标服务器

  1. 在 对象资源管理器中, 连接到Microsoft SQL Server 数据库引擎实例,然后展开该实例。

  2. 右键单击 SQL Server 代理,指向 多服务器管理,然后单击 将此设为目标。 目标服务器向导 指导你完成创建目标服务器的过程。

  3. 在“选择主服务器”页,选择此目标服务器将从中接收作业的主服务器。

    选取服务器
    连接到主服务器。

    此服务器的说明
    为此目标服务器输入描述。 目标服务器将此说明上传到主服务器。

  4. 在 Master Server 登录凭据 页中,根据需要在目标服务器上创建新的登录名。

    如有必要,请创建新登录名并将其权限分配给 MSX
    如果指定的登录名尚不存在,请在目标服务器上创建新登录名。

使用 Transact-SQL

创建目标服务器

  1. 连接到数据库引擎。

  2. 在标准栏中,单击“新建查询”。

  3. 将以下示例复制并粘贴到查询窗口中,然后单击 执行。 此示例将当前服务器登记到 AdventureWorks1 主服务器。 当前服务器的位置为 Building 21,Room 309,Rack 5。

    USE msdb ;  
    GO  
    
    EXEC dbo.sp_msx_enlist N'AdventureWorks1',   
        N'Building 21, Room 309, Rack 5' ;   
    GO
    

    有关详细信息,请参阅 sp_msx_enlist(Transact-SQL)。

另请参阅

跨企业自动化管理