如何在测试环境中从 MessageBox 数据库中手动清除数据

在开发或测试环境中运行BizTalk Server时,存储在 MessageBox 数据库中的数据通常不是业务关键型“实时”数据,因此可能会被删除。 在这些情况下,可能需要一个“快速和更新”的方法将数据从 MessageBox 数据库清除。 按照本主题中的过程,使用 bts_CleanupMsgbox 存储过程将数据从 MessageBox 数据库手动清除。

注意

应该只在测试环境中执行这些步骤。 不支持在生产环境中手动清除 BizTalk MessageBox 数据库。

停止 BizTalk 服务

  1. 从 Services 控制台停止 BizTalk 服务的任何实例。

  2. 如果正在运行独立主机(例如 HTTP、SOAP 或 WCF)中的任何适配器,请通过从命令提示符下运行 IISRESET 来重新启动 IIS。

  3. 关闭正在运行的任何自定义独立适配器。

使用 SQL Server 2008 创建和执行 bts_CleanupMsgbox 存储过程

  1. 依次单击“开始”、“所有程序”、“Microsoft SQL Server 2008 R2”、“SQL Server Management Studio”。

  2. “连接到SQL Server对话框中,选择 SQL Server 和相应的身份验证方法,然后单击”连接”。

  3. “可用数据库” 下拉列表中,默认选择 BizTalk 消息框数据库 (BizTalkMsgBoxDB) 。

  4. 单击工具栏上的 “新建查询” 图标。

  5. SQL Server Management Studio 打开 msgbox_cleanup_logic.sql 文件。 msgbox_cleanup_logic.sql 文件位于BizTalk Server计算机的 \Program Files (x86) \Microsoft BizTalk Server <VERSION>Schema\ 目录中。

  6. 单击工具栏上的 “执行查询” 图标,运行脚本以创建bts_CleanupMsgbox存储过程。 然后,可以在存储过程列表中以dbo.bts_CleanupMsgbox的形式查看bts_CleanupMsgbox存储过程。

  7. 单击工具栏上的 “新建查询” 图标。

  8. 将以下命令粘贴到新查询窗口中:

    exec bts_CleanupMsgbox  
    
  9. 单击工具栏上的 “执行查询 ”图标以运行bts_CleanupMsgbox存储过程。

    重要

    不要在运行BizTalk Server的生产服务器上运行bts_CleanupMsgbox存储过程。 只应在测试环境中运行bts_CleanupMsgbox存储过程。 不支持在生产环境中运行bts_CleanupMsgbox存储过程。

  10. 根据需要重启 BizTalk 服务。

运行bts_CleanupMsgbox存储过程时的注意事项

运行bts_CleanupMsgbox存储过程时,以下注意事项适用:

  1. 如果在测试系统上安装用于更新 BizTalk 数据库架构的热修补程序,则热修补程序可能会用此存储过程的空版本覆盖bts_CleanupMsgbox存储过程。 在这种情况下,需要按照本主题中概述的过程重新创建bts_CleanupMsgbox存储过程。

  2. 如果创建新的 MessageBox 数据库,bts_CleanupMsgbox存储过程将为空,您需要按照本主题中概述的过程重新创建bts_CleanupMsgbox存储过程。

  3. 生产系统 不支持 使用bts_CleanupMsgbox存储过程。 此存储过程会删除 MessageBox 数据库中的所有数据。

另请参阅

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