我的 SSIS 项目中包含五个以上的软件包。面对运行包批次的困难,无法跟踪哪个包未运行,哪一个失败,哪一个是成功。重新运行包批处理如何设置失败的包起始点。
答案 0 :(得分:0)
管理包裹执行
要管理Package运行,我更喜欢使用SQL Server Table。我在SQL Server中保留了一个包含类似列的表。
PackageName , LastExecuted , Error , Intervals
创建一个主包,它从该表中读取数据并根据其LastExecuted和interval值执行包。
同样执行在上次执行中出错的包等等,你就明白了。
管理重新运行的起点
根据您的来源和目的地的不同,它可能会有所不同。但是当您从SQL Server中提取或加载到SQL Server时,在SQL Server中创建一个可能包含两列的表。
PK_ID , Status
在程序包执行的第一步中,上载状态ID = 0(行状态启动)的行的主键值。
一旦包开始执行,设置设置StatusID = 1(行状态处理)
一个包执行完成设置StatusID = 2(行状态已处理)
最后,在最后一步中,使用StatusID = 2从该表中删除行,如果未删除任何内容,则删除已处理的行将在下次运行时处理。
答案 1 :(得分:0)
This might not be too big a deal; you can simply restart the package after the problem has been resolved and everything is back to normal. Event-handlers and Server login help you to identify problems but need a process which helps to identify failed batches to manage Start Points for Re-Runs. In detail, the article describes re-run process.