不可更改的 SQL Server 设置

在BizTalk Server的操作准备过程中设置SQL Server时,不应更改以下设置。

SQL Server 最大并行度

在配置 SQL Server 实例 (托管 BizTalk Server MessageBox 数据库 () 的) BizTalk Server期间,MDOP) 的最大并行度 (设置为“1”。 这是SQL Server实例级设置。 不应将此设置从“1”的值更改。 将此更改为“1”以外的任何内容可能会对BizTalk Server存储过程和性能产生重大负面影响。 如果更改 SQL Server 实例的并行度设置会对SQL Server实例上执行的其他数据库应用程序产生不利影响,则应创建一个单独的SQL Server实例,专用于托管BizTalk Server数据库。

并行查询通常最适合批处理和决策支持工作负载。 在并行运行许多快速的短查询的事务处理环境中,它们通常不可取。 此外,更改 MDOP 设置有时会导致查询计划发生更改,这会导致查询性能不佳,甚至导致BizTalk Server查询出现死锁。

BizTalk Server存储过程尽可能提供正确的联接和锁定提示,以尝试阻止查询优化器执行大量工作和更改计划。 这些存储过程通过构造查询,使查询优化器尽可能多地从图片中取出来提供一致的查询执行。

有关 MessageBox 数据库的SQL Server统计信息

默认情况下,创建 BizTalk Server MessageBox 数据库中的以下选项处于关闭状态:

对 MessageBox 数据库的更改

应将 MessageBox 数据库视为非 Microsoft 应用程序源代码。 也就是说,不应通过更改表、索引、存储过程和大多数SQL Server数据库设置来“调整”MessageBox 数据库。 有关详细信息,请参阅 BizTalk Core Engine 的 WebLog,请参阅 MessageBox 数据库服务器可以执行的操作和不能执行的操作

数据库索引重新生成和碎片整理的默认设置

BizTalk Server不支持对索引进行碎片整理。 “DBCC INDEXDEFRAG”和“ALTER INDEX ... 重新组织...” 不支持,因为它们使用页面锁定,这可能会导致BizTalk Server阻塞和死锁。 BizTalk Server支持数据库索引重新生成 (“DBCC DBREINDEX”和“ALTER INDEX...重新生成...“) ,但只有在BizTalk Server未处理数据时,才应在维护时段内完成这些操作。 不支持在BizTalk Server处理数据时重新生成索引。

有关详细信息,请转到在 BizTalk Server 中连接到 BizTalkMsgBoxDb 数据库时的阻止、死锁条件或其他SQL Server问题

索引碎片对于BizTalk Server而言与其说是一个性能问题,不如说是 DSS 系统或执行索引扫描的 OLTP 系统。 BizTalk Server执行非常选择性的查询和更新,BizTalk Server存储过程不应导致表或索引扫描。

另请参阅

清单:配置 SQL Server