在清除 BizTalk 跟踪 (BizTalkDTADb) 数据库中的数据时,DTA 清除和存档作业将从 BizTalk 跟踪 (BizTalkDTADb) 数据库中清除不同类型的跟踪信息,例如消息和服务实例信息、业务流程事件信息和规则引擎跟踪数据。
重要
使用此过程将不会存档 BizTalk 跟踪 (BizTalkDTADb) 数据库。
警告
如果未启用跟踪就在业务流程中捕获和处理了异常,则可以将具有“已启动”状态和异常信息的孤立跟踪实例插入 BizTalk 跟踪 (BizTalkDTADb) 数据库中。 在清除数据库后,此记录仍将保留。
必备条件
使用 SQL Server sysadmin 固定服务器角色成员的帐户登录以执行此过程。
从 BizTalk 跟踪数据库中清除数据
在承载 BizTalk 跟踪 (BizTalkDTADb) 数据库的SQL Server上,打开SQL Server Management Studio。
在 “连接到服务器”中,输入 BizTalk 跟踪 (BizTalkDTADb) 数据库所在的 SQL 服务器的名称,输入身份验证类型,然后选择“ 连接 ”以连接到 SQL Server。
双击SQL Server 代理,然后选择“作业”。
在“对象资源管理器详细信息”中,右键单击“DTA 清除和存档 (BizTalkDTADb) ”,然后选择“属性”。
在“作业属性 - DTA 清除和存档 (BizTalkDTADb) ”中的“选择页”下,选择“步骤”。
在 “作业步骤”列表中,选择“ 存档和清除”,然后选择“ 编辑”。
在 “作业步骤属性 - 存档和清除” 的“常规 ”页上的“ 命令 ”框中,将 exec dtasp_BackupAndPurgeTrackingDatabase 更改为 exec dtasp_PurgeTrackingDatabase。
注意
exec dtasp_PurgeTrackingDatabase 存储过程不会将 BizTalk 跟踪 (BizTalkDTADb) 数据库存档。 在使用此选项之前,应确保不再需要存档跟踪数据。
在 “命令 ”框中,更新以下参数,然后选择“ 确定”。
@nHours tinyint — 任何早于 (实时小时) + (生存天数) 的已完成实例都将连同所有相关数据一起删除。
@nDays tinyint — 任何早于 (实时小时) + (生存天数) 的已完成实例都将连同所有相关数据一起删除。 默认间隔为 1 天。
@nHardDays tinyint - 即使数据不完整,也会删除超过这一天的所有数据。 为 HardDeleteDays 指定的时间间隔应大于数据生存时段。 数据生存时段是维护 BizTalk 跟踪 (BizTalkDTADb) 数据库中的跟踪数据所需的时间间隔。 早于此间隔的所有内容都应在下一次存档时进行存档,然后清除。
@dtLastBackup — 将此设置为 GetUTCDate () 可从 BizTalk 跟踪 (BizTalkDTADb) 数据库中清除数据。 设置为 NULL 时,不会从数据库清除数据。
@fHardDeleteRunningInstances int - 默认值为 0。 设置为 1 时,它会删除早于 @nHardDeleteDays 该值的所有正在运行的服务实例。
注意
属性@fHardDeleteRunningInstances从 BizTalk Server 2016 累积更新 1、BizTalk Server 2013 R2 累积更新 6 和 BizTalk Server 2013 累积更新 5 开始可用。
编辑的脚本如下所示:
declare @dtLastBackup datetime set @dtLastBackup = GetUTCDate() exec dtasp_PurgeTrackingDatabase 1, 0, 1, @dtLastBackup, 1
在“作业属性 - DTA 清除和存档 (BizTalkDTADb) ”对话框中,在“选择页”下,选择“常规”,选择“启用检查”框,然后选择“确定”。