在SQL Server中使用命令调用SSIS包的具体方法
具体操作步骤如下:
1.首先,当然是要在business intelligence中设计好包,并调试通过。
2.然后,有两种方式可以在sql server中使用命令运行ssis包
第一种是直接执行ssis包文件,命令如: exec xp_cmdshell 'dtexec /f "c:\test.dtsx"'
第二种是将包文件发布或者导入到integration services服务中,然后再执行。
发布包是在business intelligence中生成发布文件,并发布到integration services服务中。生成发布文件后,双击发布文件,选择[部署到sql server],然后输入服务器名称,用户名,密码,并选择包路径为“/”,并选择[依靠服务器存储进行加密],点击[下一步],选择要安装到的位置即可。
导入包是在managemenet studio,选择接integration services服务,选择“已存储的包”-”msdb“,右键导入包,选择文件系统,指定要导入的包,保护级别要选择[依靠服务器存储和角色进行访问控制]。
发布包和导入包的作用和目的是一致的,都为为了将包放入到integration services服务中。
包发布或者导入后,就可以使用如下命令进行调用了:
exec xp_cmdshell 'dtexec /dts "\msdb\test" /server "servername" /maxconcurrent " -1 " /checkpointing off /reporting v '
注意点:
1.以上操作中用到的系统过程xp_cmdshell默认是禁用的,要想使用,必须先开启,开启方法见:
2.发布包或者导入包时,必须选择正确的保护级别,发布包时选择[依靠服务器存储进行加密],导入包时选择[依靠服务器存储和角色进行访问控制],否则会出现错误:[ 说明: 无法解密受保护的 xml 节点“dts:password”,错误为 0x8009000b“该项不适于在指定状态下使用。”。可能您无权访问此信息。当发生加密错误时会出现此错误。请确保提供正确的密钥。
上一篇: 详解KOA2如何手写中间件(装饰器模式)