неуверенное разрешение xact (параметр конфигурации сервера)
Область применения: SQL Server
Используйте параметр разрешения xact по умолчанию для управления результатом транзакций, которые не удается разрешить координатор распределенных транзакций Майкрософт (MS DTC). Невозможность разрешить транзакции может быть связана с простоем MS DTC или с неизвестным результатом транзакции на момент восстановления.
В следующей таблице перечислены возможные значения результатов для разрешения сомнительных транзакций.
Значение результата | Description |
---|---|
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
Параметр in-doubt xact resolution является дополнительным. Если для изменения настроек используется системная хранимая процедура sp_configure , то изменить значение параметра in-doubt xact resolution можно только при условии, что параметр show advanced options равен 1. Параметр вступает в силу сразу без перезапуска сервера.
Примечание.
Последовательная настройка этого параметра во всех экземплярах Microsoft SQL Server, которые участвуют в распределенных транзакциях, поможет избежать несогласованности данных.
См. также
RECONFIGURE (Transact-SQL)
Параметры конфигурации сервера (SQL Server)
sp_configure (Transact-SQL)
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по