如何使用 SQL Server 代理作业运行包
更新日期: 2007 年 9 月 15 日
本过程介绍如何在 SQL Server 代理作业中创建一个运行 Integration Services 包的步骤。 您必须为要运行的每个包创建单独的作业步骤。
一个作业可以与一个或多个计划相关联。 有关如何安排作业以运行作业步骤中指定的包的信息,请参阅如何计划作业 (SQL Server Management Studio)。
将 Integration Services 包作为 SQL Server 代理作业步骤运行的帐户要求自身的权限与直接运行该包的帐户所拥有的权限完全相同。 有关如何对从 SQL Server 代理作业中运行的包进行故障排除的信息,请参阅 Microsoft 知识库文章 An SSIS package does not run when you call the SSIS package from a SQL Server Agent job step(从 SQL Server 代理作业步骤中调用 SSIS 包时 SSIS 包不运行)。
有关如何立即运行包的信息,请参阅运行包。
创建运行包的作业步骤
在 SQL Server Management Studio 中,打开要在其中创建作业的 SQL Server 的实例,或者打开包含要向其中添加步骤的作业的实例。
展开 SQL Server 代理,然后执行下列操作之一:
- 若要创建新的作业,请右键单击**“作业”,再单击“新建”**。
- 若要使用现有作业,请展开**“作业”,右键单击该作业,再单击“属性”**。
在**“常规”**页上,如果要创建新的作业,请提供作业名称,选择所有者和作业类别,还可以选择提供作业说明。
若要使作业可以进行安排,请选择**“已启用”**。
单击**“步骤”,再单击“新建”**。
提供一个步骤名称,然后基于将要运行该作业的 dtexec 实用工具 (dtexec.exe) 的版本在**“类型”**列表中选择一种作业步骤类型:
- 若要使用由系统自动调用的 dtexec 实用工具版本来运行作业,请选择**“SQL Server Integration Services 包”**。
在运行 SQL Server 和 SQL Server 代理的 32 位计算机上,此设置将调用 32 位版本的 dtexec 实用工具。
在安装和运行 64 位版本的 SQL Server 和 SQL Server 代理的 64 位计算机上,此设置将调用 64 位版本的 dtexec 实用工具。
在只安装和运行 32 位版本的 SQL Server 和 SQL Server 代理的 64 位计算机上,此设置将调用 32 位版本的 dtexec 实用工具。 - 若要在非默认版本的 dtexec 实用工具中运行作业,请选择**“操作系统(CmdExec)”,然后输入用于调用 dtexec 实用工具特定版本的命令行。 若要创建随后可以将其粘贴到作业步骤中的命令行,可以使用执行包实用工具 (dtexecui.exe)。
例如,假设您希望在 32 位模式下从 64 位 SQL Server 代理作业中运行包。 对于“类型”,选择“操作系统(CmdExec)”**,然后输入用于调用 32 位版本的 dtexec 实用工具的命令行。 - 若要从 SQL Server 代理作业中运行 SQL Server 2000 DTS 包,请选择**“操作系统(CmdExec)”**,然后输入一个命令行或使用一个批处理文件以调用 dtsrun 实用工具 (dtsrun.exe)。 若要创建随后可以将其粘贴到作业步骤中的命令行,可以使用执行包实用工具 (dtexecui.exe)。
- 若要使用由系统自动调用的 dtexec 实用工具版本来运行作业,请选择**“SQL Server Integration Services 包”**。
在**“运行身份”**列表中,选择该作业将要使用的代理帐户和凭据。 有关详细信息,请参阅以下主题:
在**“常规”选项卡上,选择包源。 如果源是 SQL Server 或 SSIS 包存储区,请提供服务器名,选择要使用的身份验证模式,然后提供包的名称,或单击省略号按钮“(…)”,接着选择该包。 如果源是文件系统,请提供包的路径和名称,或单击省略号按钮“(…)”**并找到该包。
重要提示: 对于受密码保护的 SSIS 包,请单击“配置”选项卡,在“包密码”对话框中输入密码。 否则,执行受密码保护包的 SQL Server 代理作业将失败。 若要指定命令行选项,请执行下列操作:
- 单击**“命令文件”**选项卡,指定包含包所使用的选项的文件。
- 单击**“命令行”**选项卡,编辑或还原命令行选项。
- 单击**“配置”**选项卡,添加配置文件,还可以选择将已配置的变量导出到文件中。
- 单击**“数据源”**选项卡,选中连接管理器复选框,然后更新连接字符串。
- 单击**“执行选项”**选项卡,指定包运行时的行为,例如,如果出现警告包是否失败。
- 单击**“日志记录”选项卡,添加日志提供程序。 选择“日志提供程序”**列表中的一个日志提供程序,然后键入连接字符串。
- 单击**“设置值”**选项卡,将属性和变量映射为值。
注意: 属性路径使用此语法:\Package\<容器名称>.<属性名称>。 根据包结构的不同,容器可能包括其他容器,在这种情况下,嵌套的容器由反斜杠 (\) 分隔。 例如,Package\MyForeachLoop\MySequence\MyExecuteSQLTask.Description。 - 单击**“验证”**选项卡,指定是否只有签名的包才可以运行,并指定运行的包的版本。
单击**“确定”**。