从 BizTalk 跟踪数据库中清除数据

在清除 BizTalk 跟踪 (BizTalkDTADb) 数据库中的数据时,DTA 清除和存档作业将从 BizTalk 跟踪 (BizTalkDTADb) 数据库中清除不同类型的跟踪信息,例如消息和服务实例信息、业务流程事件信息和规则引擎跟踪数据。

重要

使用此过程将不会存档 BizTalk 跟踪 (BizTalkDTADb) 数据库。

警告

如果未启用跟踪就在业务流程中捕获和处理了异常,则可以将具有“已启动”状态和异常信息的孤立跟踪实例插入 BizTalk 跟踪 (BizTalkDTADb) 数据库中。 在清除数据库后,此记录仍将保留。

必备条件

使用 SQL Server sysadmin 固定服务器角色成员的帐户登录以执行此过程。

从 BizTalk 跟踪数据库中清除数据

  1. 在承载 BizTalk 跟踪 (BizTalkDTADb) 数据库的SQL Server上,打开SQL Server Management Studio

  2. “连接到服务器”中,输入 BizTalk 跟踪 (BizTalkDTADb) 数据库所在的 SQL 服务器的名称,输入身份验证类型,然后选择“ 连接 ”以连接到 SQL Server。

  3. 双击SQL Server 代理,然后选择“作业”。

  4. “对象资源管理器详细信息”中,右键单击“DTA 清除和存档 (BizTalkDTADb) ”,然后选择“属性”。

  5. “作业属性 - DTA 清除和存档 (BizTalkDTADb) ”中的“选择页”下,选择“步骤”。

  6. “作业步骤”列表中,选择“ 存档和清除”,然后选择“ 编辑”。

  7. “作业步骤属性 - 存档和清除的“常规 ”页上的“ 命令 ”框中,将 exec dtasp_BackupAndPurgeTrackingDatabase 更改为 exec dtasp_PurgeTrackingDatabase

    注意

    exec dtasp_PurgeTrackingDatabase 存储过程不会将 BizTalk 跟踪 (BizTalkDTADb) 数据库存档。 在使用此选项之前,应确保不再需要存档跟踪数据。

  8. “命令 ”框中,更新以下参数,然后选择“ 确定”。

    • @nHours tinyint — 任何早于 (实时小时) + (生存天数) 的已完成实例都将连同所有相关数据一起删除。

    • @nDays tinyint — 任何早于 (实时小时) + (生存天数) 的已完成实例都将连同所有相关数据一起删除。 默认间隔为 1 天。

    • @nHardDays tinyint - 即使数据不完整,也会删除超过这一天的所有数据。 为 HardDeleteDays 指定的时间间隔应大于数据生存时段。 数据生存时段是维护 BizTalk 跟踪 (BizTalkDTADb) 数据库中的跟踪数据所需的时间间隔。 早于此间隔的所有内容都应在下一次存档时进行存档,然后清除。

    • @dtLastBackup — 将此设置为 GetUTCDate () 可从 BizTalk 跟踪 (BizTalkDTADb) 数据库中清除数据。 设置为 NULL 时,不会从数据库清除数据。

    • @fHardDeleteRunningInstances int - 默认值为 0。 设置为 1 时,它会删除早于 @nHardDeleteDays 该值的所有正在运行的服务实例。

      注意

      属性@fHardDeleteRunningInstances从 BizTalk Server 2016 累积更新 1BizTalk Server 2013 R2 累积更新 6BizTalk Server 2013 累积更新 5 开始可用。

    编辑的脚本如下所示:

    declare @dtLastBackup datetime set @dtLastBackup = GetUTCDate() exec dtasp_PurgeTrackingDatabase 1, 0, 1, @dtLastBackup, 1  
    
  9. “作业属性 - DTA 清除和存档 (BizTalkDTADb) ”对话框中,在“选择页”下,选择“常规”,选择“启用检查”框,然后选择“确定”。

另请参阅

存档和清除 BizTalk 跟踪数据库