SSIS包 放到作业里执行出错

时间:2022-01-30 16:34:16
用vs2008建了几个包,是执行同步2个数据库部分时间的数据的。
像通过作业建立,然后建立维护计划在定点时间去执行。可是总是报错误
开始是报一个xml不规范的错误。后来加入包配置文件后又报版本错误什么从3到2版本错,
求高人详细讲解一下建立包作业的过程,谢谢

17 个解决方案

#1


要看具体什么错误的 请详细描述一下
建包可以参考
http://blog.csdn.net/wpc820411/archive/2010/10/08/5927050.aspx

#2


erver 执行包实用工具  Version 10.50.1600.1 for 64-bit  版权所有 (C) Microsoft Corporation 2010。保留所有权利。    开始时间:  11:10:34  错误: 2010-12-29 11:10:34.37     代码: 0xC0016016     源:       说明: 无法解密受保护的 XML 节点“DTS:Password”,错误为 0x8009000B“该项不适于在指定状态下使用。”。可能您无权访问此信息。当发生加密错误时会出现此错误。请确保提供正确的密钥。  错误结束  错误: 2010-12-29 11:10:34.37     代码: 0xC0016016     源:       说明: 无法解密受保护的 XML 节点“DTS:Password”,错误为 0x8009000B“该项不适于在指定状态下使用。”。可能您无权访问此信息。当发生加密错误时会出现此错误。请确保提供正确的密钥。  错误结束  错误: 2010-12-29 11:10:34.39     代码: 0xC0016016     源:       说明: 无法解密受保护的 XML 节点“DTS:Password”,错误为 0x8009000B“该项不适于在指定状态下使用。”。可能您无权访问此信息。当发生加密错误时会出现此错误。请确保提供正确的密钥。  错误结束  错误: 2010-12-29 11:10:35.07     代码: 0xC0202009     源: 污染源在线监测废气的小时数据临时入库 连接管理器“DataResult”     说明: SSIS 错误代码 DTS_E_OLEDBERROR。出现 OLE DB 错误。错误代码: 0x80040E4D。  已获得 OLE DB 记录。源:“Microsoft SQL Server Native Client 10.0” Hresult: 0x80040E4D 说明:“用户 'ths' 登录失败。”。  错误结束  错误: 2010-12-29 11:10:35.07     代码: 0xC020801C     源: 数据流任务 废气小时yuxh_T_AutoMoni_HourData_Gas [16]     说明: SSIS 错误代码 DTS_E_CANNOTACQUIRECONNECTIONFROMCONNECTIONMANAGER。对连接管理器“DataResult”的 AcquireConnection 方法调用失败,错误代码为 0xC0202009。可能在此之前已经发出错误消息,提供了有关 AcquireConnection 方法调用失败原因的详细信息。  错误结束  错误: 2010-12-29 11:10:35.07     代码: 0xC0047017     源: 数据流任务 SSIS.Pipeline     说明: 组件“废气小时yuxh_T_AutoMoni_HourData_Gas”(16) 未能通过验证,返回的错误代码为 0xC020801C。  错误结束  错误: 2010-12-29 11:10:35.07     代码: 0xC004700C     源: 数据流任务 SSIS.Pipeline     说明: 一个或多个组件未能通过验证。  错误结束  错误: 2010-12-29 11:10:35.07     代码: 0xC0024107     源: 数据流任务      说明: 任务验证期间出错。  错误结束  DTExec: 已返回包执行 DTSER_FAILURE (1)。  开始时间:  11:10:34  完成时间: 11:10:35  占用时间:  1.077 秒.  包执行失败。.  该步骤失败。

#3


无法解密受保护的 XML 节点“DTS:Password
这个要改下你的包的保护级别,看看包的属性protect level,改成dont save sen

然后用包配置,配置相应的链接、密码。

#4


感觉是权限问题 试试
用sa或者windows 认证的话用管理员身份登录
部署的时候手动指定密码
设置agent的启动帐号为你登录的windows帐号(需要管理员权限)

#5


已以用户 NMHB\Administrator 的身份执行。 Microsoft (R) SQL Server 执行包实用工具  版本 9.00.4035.00 (32 位)  版权所有 (C) Microsoft Corp 1984-2005。保留所有权利。    开始时间:  14:07:39  错误: 2010-12-29 14:07:39.33     代码: 0xC001700A     源:       说明: 包中的版本号无效。该版本号不能大于当前的版本号。  错误结束  错误: 2010-12-29 14:07:39.33     代码: 0xC0016020     源:       说明: 包从版本 3 到版本 2 的迁移失败,错误为 0xC001700A“包中的版本号无效。该版本号不能大于当前的版本号。”。  错误结束  错误: 2010-12-29 14:07:39.33     代码: 0xC0010018     源:       说明: 从节点“DTS:Property”加载值“<DTS:Property xmlns:DTS="www.microsoft.com/SqlServer/Dts" DTS:Name="PackageFormatVersion">3</DTS:Property>”时出错。  错误结束  由于出现错误 0xC0010014,导致无法加载包“C:\Program Files\Microsoft SQL Server\90\DTS\Packages\20101220后数据导入\小时数据入库.dtsx”。  说明: 由于错误 0xC0010014“发生了一个或多个错误。在此消息之前应有更为具体的错误消息,对这些错误进行详细说明。此消息用作遇到错误的函数的返回值。”,无法加载包。当 CPackage::LoadFromXML 失败时,会出现这种情况。  源:   开始时间:  14:07:39  完成时间: 14:07:39  已用时间:  0.031 秒.  无法加载该包。.  该步骤失败。

#6


这个包是自己做的吗? 提示中有版本问题

#7


该回复于2010-12-29 17:37:24被版主删除

#8


不清楚了 打打补丁看看

#9


请检查包的ProtectionLevel属性,如果包是在其他用户下或其他机器上开发的,不要选择EncryptSensitiveWithuserkey,数据库连接最好通过配置文件保存,ProtectionLevel选择DontSaveSensitive。

#10


补充一下,如果有包配置文件,建立作业时需要增加配置文件路径。

#11


包需要现在所在机器上打开,重新加载一下

#12


自己搞定~~!

#13


该回复于2011-09-27 16:03:09被版主删除

#14


楼主怎么搞定的  我也遇到了同样的问题了

#15


手动编辑dtsx包,找到版本,将3该为2即可

#16


我现在遇到的一个新问题是部署ssis到作业后,默认执行一个父包,里面加了几个 执行包任务 ,然后提示不能加载这些包,loading task failed,哎你们遇到过么?怎么解决?我也用到了包配置,配置路径没有问题

#17


不能把 ProtectionLevel选择DontSaveSensitive改成,发布在客户机子上客户能看到源码 行不通
但是 ProtectionLevel选择用密码 可是只发布父包,父包调用子包时子包认不到密码报错 怎么搞???

#1


要看具体什么错误的 请详细描述一下
建包可以参考
http://blog.csdn.net/wpc820411/archive/2010/10/08/5927050.aspx

#2


erver 执行包实用工具  Version 10.50.1600.1 for 64-bit  版权所有 (C) Microsoft Corporation 2010。保留所有权利。    开始时间:  11:10:34  错误: 2010-12-29 11:10:34.37     代码: 0xC0016016     源:       说明: 无法解密受保护的 XML 节点“DTS:Password”,错误为 0x8009000B“该项不适于在指定状态下使用。”。可能您无权访问此信息。当发生加密错误时会出现此错误。请确保提供正确的密钥。  错误结束  错误: 2010-12-29 11:10:34.37     代码: 0xC0016016     源:       说明: 无法解密受保护的 XML 节点“DTS:Password”,错误为 0x8009000B“该项不适于在指定状态下使用。”。可能您无权访问此信息。当发生加密错误时会出现此错误。请确保提供正确的密钥。  错误结束  错误: 2010-12-29 11:10:34.39     代码: 0xC0016016     源:       说明: 无法解密受保护的 XML 节点“DTS:Password”,错误为 0x8009000B“该项不适于在指定状态下使用。”。可能您无权访问此信息。当发生加密错误时会出现此错误。请确保提供正确的密钥。  错误结束  错误: 2010-12-29 11:10:35.07     代码: 0xC0202009     源: 污染源在线监测废气的小时数据临时入库 连接管理器“DataResult”     说明: SSIS 错误代码 DTS_E_OLEDBERROR。出现 OLE DB 错误。错误代码: 0x80040E4D。  已获得 OLE DB 记录。源:“Microsoft SQL Server Native Client 10.0” Hresult: 0x80040E4D 说明:“用户 'ths' 登录失败。”。  错误结束  错误: 2010-12-29 11:10:35.07     代码: 0xC020801C     源: 数据流任务 废气小时yuxh_T_AutoMoni_HourData_Gas [16]     说明: SSIS 错误代码 DTS_E_CANNOTACQUIRECONNECTIONFROMCONNECTIONMANAGER。对连接管理器“DataResult”的 AcquireConnection 方法调用失败,错误代码为 0xC0202009。可能在此之前已经发出错误消息,提供了有关 AcquireConnection 方法调用失败原因的详细信息。  错误结束  错误: 2010-12-29 11:10:35.07     代码: 0xC0047017     源: 数据流任务 SSIS.Pipeline     说明: 组件“废气小时yuxh_T_AutoMoni_HourData_Gas”(16) 未能通过验证,返回的错误代码为 0xC020801C。  错误结束  错误: 2010-12-29 11:10:35.07     代码: 0xC004700C     源: 数据流任务 SSIS.Pipeline     说明: 一个或多个组件未能通过验证。  错误结束  错误: 2010-12-29 11:10:35.07     代码: 0xC0024107     源: 数据流任务      说明: 任务验证期间出错。  错误结束  DTExec: 已返回包执行 DTSER_FAILURE (1)。  开始时间:  11:10:34  完成时间: 11:10:35  占用时间:  1.077 秒.  包执行失败。.  该步骤失败。

#3


无法解密受保护的 XML 节点“DTS:Password
这个要改下你的包的保护级别,看看包的属性protect level,改成dont save sen

然后用包配置,配置相应的链接、密码。

#4


感觉是权限问题 试试
用sa或者windows 认证的话用管理员身份登录
部署的时候手动指定密码
设置agent的启动帐号为你登录的windows帐号(需要管理员权限)

#5


已以用户 NMHB\Administrator 的身份执行。 Microsoft (R) SQL Server 执行包实用工具  版本 9.00.4035.00 (32 位)  版权所有 (C) Microsoft Corp 1984-2005。保留所有权利。    开始时间:  14:07:39  错误: 2010-12-29 14:07:39.33     代码: 0xC001700A     源:       说明: 包中的版本号无效。该版本号不能大于当前的版本号。  错误结束  错误: 2010-12-29 14:07:39.33     代码: 0xC0016020     源:       说明: 包从版本 3 到版本 2 的迁移失败,错误为 0xC001700A“包中的版本号无效。该版本号不能大于当前的版本号。”。  错误结束  错误: 2010-12-29 14:07:39.33     代码: 0xC0010018     源:       说明: 从节点“DTS:Property”加载值“<DTS:Property xmlns:DTS="www.microsoft.com/SqlServer/Dts" DTS:Name="PackageFormatVersion">3</DTS:Property>”时出错。  错误结束  由于出现错误 0xC0010014,导致无法加载包“C:\Program Files\Microsoft SQL Server\90\DTS\Packages\20101220后数据导入\小时数据入库.dtsx”。  说明: 由于错误 0xC0010014“发生了一个或多个错误。在此消息之前应有更为具体的错误消息,对这些错误进行详细说明。此消息用作遇到错误的函数的返回值。”,无法加载包。当 CPackage::LoadFromXML 失败时,会出现这种情况。  源:   开始时间:  14:07:39  完成时间: 14:07:39  已用时间:  0.031 秒.  无法加载该包。.  该步骤失败。

#6


这个包是自己做的吗? 提示中有版本问题

#7


该回复于2010-12-29 17:37:24被版主删除

#8


不清楚了 打打补丁看看

#9


请检查包的ProtectionLevel属性,如果包是在其他用户下或其他机器上开发的,不要选择EncryptSensitiveWithuserkey,数据库连接最好通过配置文件保存,ProtectionLevel选择DontSaveSensitive。

#10


补充一下,如果有包配置文件,建立作业时需要增加配置文件路径。

#11


包需要现在所在机器上打开,重新加载一下

#12


自己搞定~~!

#13


该回复于2011-09-27 16:03:09被版主删除

#14


楼主怎么搞定的  我也遇到了同样的问题了

#15


手动编辑dtsx包,找到版本,将3该为2即可

#16


我现在遇到的一个新问题是部署ssis到作业后,默认执行一个父包,里面加了几个 执行包任务 ,然后提示不能加载这些包,loading task failed,哎你们遇到过么?怎么解决?我也用到了包配置,配置路径没有问题

#17


不能把 ProtectionLevel选择DontSaveSensitive改成,发布在客户机子上客户能看到源码 行不通
但是 ProtectionLevel选择用密码 可是只发布父包,父包调用子包时子包认不到密码报错 怎么搞???