如何计划和运行 SQL Server 2005 中的 SSIS 包 (DTS) 作业






3.97/5 (19投票s)
2006年6月9日
2分钟阅读

526134
如何计划和运行 SQL Server 2005 中的 SSIS 包 (DTS) 作业
引言
如何调度和运行 SSIS 包 (DTS) 作业
在 SQL Server 2005 中,创建 SSIS 包 (DTS) 后,您想创建一个作业并安排其运行。您可能会遇到阻止您运行作业的错误。问题是什么?
原因如下:SQL Server 2005 与 SQL Server 2000 非常不同。在 SQL Server 2000 中,您可以创建作业并运行它而不会出现问题。在 SQL Server 2005 中,您需要通过安全层才能运行作业。
逻辑如下:
Ø 作业执行帐户需要 sysadmin、SQLAgentUserRole、SQLAgentReaderRole 和 SQLAgentOperatorRole 角色。
Ø 作业需要在代理帐户下运行。
Ø 最好使用作业执行帐户来创建 SSIS 包,这样您可以确保作业执行帐户有权运行此 SSIS 包。
您可以按照以下步骤完成作业。
工作环境为 MS SQL Server Management Studio,您以 sa 身份登录。
一、创建作业执行帐户
突出显示“安全”->“新建登录名”,例如创建名为 devlogin 的登录名,输入您的密码,默认数据库可以是您的目标数据库。
服务器角色:选中“sysadmin”
用户映射:您的目标数据库
Msdb 数据库:确保包含 SQLAgentUserRole、SQLAgentReaderRole 和 SQLAgentOperatorRole
然后单击“确定”
二、创建 SQL 代理帐户并将代理帐户与作业执行帐户关联
以下是代码,请在查询窗口中运行。
Use master
CREATE CREDENTIAL [MyCredential] WITH IDENTITY = 'yourdomain\myWindowAccount', secret = 'WindowLoginPassword'
Use msdb
Sp_add_proxy @proxy_name='MyProxy', @credential_name='MyCredential'
Sp_grant_login_to_proxy @login_name='devlogin', @proxy_name='MyProxy'
Sp_grant_proxy_to_subsystem @proxy_name='MyProxy', @subsystem_name='SSIS'
三、创建 SSIS 包
在 MS SQL Server Business Intelligence Development Studio 中,使用作业执行帐户 devlogin 创建 SSIS 包 (DTS),并确保您可以在 SQL Server Business Intelligence Development Studio 中执行此包。编译/构建此包。
四、创建作业、安排作业并运行作业
在 SQL Server Management Studio 中,突出显示 SQL Server 代理 -> 开始。突出显示作业 -> 新建作业…,将其命名为 myJob。
在步骤下,新建步骤,将其命名为 Step1。
类型:SQL Server 集成服务包
以…运行:myProxy
包源:文件系统
浏览以选择您的包文件 xxx.dtsx
点击“确定”
安排您的作业并启用它
现在您可以运行您的作业了。
如果您觉得这非常有用,请留下您的在线评论。如果您有任何问题或建议,请通过电子邮件联系我:hong_wei_li@yahoo.com.
祝您 SQL 愉快!
- 李宏伟