我想将“更改数据捕获”历史记录行存储在另一个数据库/表中。
我该如何实施?
我应该使用自己的服务,寻找 cdc 表和复制行吗?
我可以为此使用 SSIS cdc包吗?(我从不使用 SSIS,读完这篇文章后,我很困惑)
问问题
1220 次
1 回答
0
我真的不认为这是开箱即用的。最好的办法是将 CDC 数据存储在单独的文件组中。这是使用 的@filegroup_name
参数完成的sys.sp_cdc_enable_table
。
如果您打算这样做,并且希望保留所有 CDC 内置内容,例如辅助视图/函数生成和更改查询系统函数,则需要:
(1) 创建一个与你的主数据库结构相同的空数据库
(2) 在新数据库中配置 CDC,就像在原来的数据库中一样
(3) 安排某种工作来复制数据(如果数据库要在不同的服务器上,您可以使用 SSIS,或者如果在同一台服务器上,您可以使用存储过程。如果您可以将 SP 也用于单独的服务器想使用链接服务器)从原始数据库中的 CDC 表中,包括cdc.lsn_time_mapping
(可能还有其他系统表,但是,这是主要的),到新数据库中。
于 2013-02-27T09:09:42.400 回答