求助!!SSIS 用事务实现回滚
本帖最后由 shinichi_jtc 于 2013-09-09 16:48:54 编辑
我有两台服务器A和B,想把A中两张表的数据传到B上,并且实现在第二张表传输出现错误时,对第一张表也实现回滚。
我在SSIS包里创建2个数据流任务,把他们的TransactionOption设置为Supported,包的TransactionOption也设置成Supported,这样我执行是没有问题的,只是不能实现数据的回滚。结果如下图:
现在我为了实现回滚,把这两个数据流放到一个序列容器里,把序列容器的TransactionOption设置为Requied,2个数据流任务和包的TransactionOption都还是Supported,这样执行的话就会出现错误如下:
[OLE DB 源 [2301]] Error: SSIS Error Code DTS_E_CANNOTACQUIRECONNECTIONFROMCONNECTIONMANAGER. The AcquireConnection method call to the connection manager "CacheDB" failed with error code 0xC0202009. There may be error messages posted before this with more information on why the AcquireConnection method call failed.
[SSIS.Pipeline] Error: component "OLE DB 源" (2301) failed the pre-execute phase and returned error code 0xC020801C.
结果如下图所示:
我的Distributed Transaction Coordinator 服务是已启动的。
我的DTC安全配置如下图:
大神们能告诉我为什么会出错吗?还有应该怎么实现这样的回滚啊?
------解决方案--------------------包的属性上有一个是错误时回滚,具体是哪一个忘记了