Поделиться через


Параметр конфигурации сервера для разрешения неуверенных транзакций xact

Используйте параметр разрешения xact для неопределённых транзакций для управления результатом транзакций, которые не удается разрешить Координатору распределенных транзакций Microsoft (MS DTC). Неспособность разрешать транзакции может быть связана с временем простоя MS DTC или неизвестным результатом транзакции во время восстановления.

В следующей таблице перечислены возможные значения результатов для разрешения неуверенной транзакции.

Значение результата Описание
0 Нет презумпции. Восстановление завершается ошибкой, если MS DTC не может устранить какие-либо неуверенные транзакции.
1 Предполагаемая фиксация. Любые транзакции MS DTC в состоянии неопределенности считаются коммитированными.
2 Предположим прерывание. Любые спорные транзакции MS DTC предполагаются прерванными.

Чтобы свести к минимуму возможность расширенного простоя, администратор может выбрать настройку этого параметра, чтобы предполагать фиксацию или предполагать прерывание, как показано в следующем примере.

sp_configure 'show advanced options', 1  
GO  
RECONFIGURE  
GO  
sp_configure 'in-doubt xact resolution', 2 -- presume abort  
GO  
RECONFIGURE  
GO  
sp_configure 'show advanced options', 0  
GO  
RECONFIGURE  
GO  
  

Кроме того, администратор может захотеть оставить значение по умолчанию (без презумпции) и разрешить восстановление завершиться ошибкой, чтобы узнать о сбое DTC, как показано в следующем примере.

sp_configure 'show advanced options', 1  
GO  
RECONFIGURE  
GO  
sp_configure 'in-doubt xact resolution', 1 -- presume commit  
GO  
reconfigure  
GO  
ALTER DATABASE pubs SET ONLINE -- run recovery again  
GO  
sp_configure 'in-doubt xact resolution', 0 -- back to no assumptions  
GO  
sp_configure 'show advanced options', 0  
GO  
RECONFIGURE  
GO  
  

Параметр разрешения xact с сомнением является дополнительным вариантом. Если вы используете системную хранимую процедуру sp_configure для изменения настройки, вы можете изменить разрешение сомнительных транзакций только в том случае, если параметр показать расширенные настройки установлен на 1. Параметр вступает в силу сразу без перезапуска сервера.

Замечание

Согласованная конфигурация этого параметра во всех экземплярах Сервера MicrosoftSQL, участвующих в любых распределенных транзакциях, поможет избежать несоответствий данных.

См. также

RECONFIGURE (Transact-SQL)
Параметры конфигурации сервера (SQL Server)
sp_configure (Transact-SQL)