Lokasi ngalangkungan proxy:   [ UP ]  
[Ngawartoskeun bug]   [Panyetelan cookie]                
Skip to content

Commit aa9c18f

Browse files
committed
Merge branch 'master' of https://github.com/MicrosoftDocs/sql-docs-pr into 09-22-real-csharp-extension
2 parents ded794b + d3461c9 commit aa9c18f

103 files changed

Lines changed: 418 additions & 321 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

docs/azure-data-studio/download-azure-data-studio.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -223,6 +223,7 @@ Azure Data Studio runs on Windows, macOS, and Linux and is supported on the foll
223223
- Windows 8.1 (64-bit)
224224
- Windows 8 (64-bit)
225225
- Windows 7 (SP1)
226+
- Windows Server 2022
226227
- Windows Server 2019
227228
- Windows Server 2016
228229
- Windows Server 2012 R2 (64-bit)

docs/database-engine/availability-groups/windows/configure-availability-group-for-distributed-transactions.md

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
title: "Configure distributed transactions for an availability group"
33
description: "Describes how to configure distributed transactions for databases within an Always On availability group. "
44
ms.custom: "seodec18"
5-
ms.date: "02/06/2019"
5+
ms.date: "09/16/2021"
66
ms.prod: sql
77
ms.reviewer: ""
88
ms.technology: availability-groups
@@ -33,22 +33,20 @@ In a distributed transaction, client applications work with Microsoft Distribute
3333

3434
[!INCLUDE[SQLServer](../../../includes/ssnoversion-md.md)] does not prevent distributed transactions for databases in an availability group - even when the availability group is not configured for distributed transactions. However when an availability group is not configured for distributed transactions, failover may not succeed in some situations. Specifically the new primary replica [!INCLUDE[SQLServer](../../../includes/ssnoversion-md.md)] instance may not be able to get the transaction outcome from DTC. To enable the [!INCLUDE[SQLServer](../../../includes/ssnoversion-md.md)] instance to get the outcome of in-doubt transactions from the DTC after failover, configure the availability group for distributed transactions.
3535

36-
DTC is not involved in availability group processing unless a database is also a member of a Failover Cluster. Within an availability group, the consistency between replicas is maintained by the availability group logic: The primary will not complete the commit and acknowledge the commit to the caller until the secondary has acknowledged that it has persisted the log records in durable storage. Only then does the Primary declare the transaction complete. In async mode, we do not wait for the secondary to ack, and there is explicitly the chance of the loss of a small amount of data.
36+
DTC is not involved in availability group processing unless a database is also a member of a Failover Cluster. Within an availability group, the consistency between replicas is maintained by the availability group logic: The primary will not complete the commit and acknowledge the commit to the caller until the secondary has acknowledged that it has persisted the log records in durable storage. Only then will the Primary declare the transaction complete. In async mode, we do not wait for the secondary to ack, and there is explicitly the chance of the loss of a small amount of data.
3737

3838
## Prerequisites
3939

4040
Before you configure an availability group to support distributed transactions, you must meet the following prerequisites:
4141

4242
* All instances of [!INCLUDE[SQLServer](../../../includes/ssnoversion-md.md)] that participate in the distributed transaction must be [!INCLUDE[SQL2016](../../../includes/sssql16-md.md)] or later.
4343

44-
* Availability groups must be running on Windows Server 2016 or Windows Server 2012 R2. For Windows Server 2012 R2, you must install the update in KB3090973 available at [https://support.microsoft.com/kb/3090973](https://support.microsoft.com/kb/3090973).
44+
* Availability groups must be running on Windows Server 2012 R2 or later. For Windows Server 2012 R2, you must install the update in KB3090973 available at [https://support.microsoft.com/kb/3090973](https://support.microsoft.com/kb/3090973).
4545

4646
## Create an availability group for distributed transactions
4747

4848
Configure an availability group to support distributed transactions. Set the availability group to allow each database to register as a resource manager. This article explains how to configure an availability group so that each database can be a resource manager in DTC.
4949

50-
51-
5250
You can create an availability group for distributed transactions on [!INCLUDE[SQL2016](../../../includes/sssql16-md.md)] or later. To create an availability group for distributed transactions, include `DTC_SUPPORT = PER_DB` in the availability group definition. The following script creates an availability group for distributed transactions.
5351

5452
```sql
@@ -121,7 +119,7 @@ The following list explains how the application works with DTC to complete distr
121119
3. The client issues commit or abort for the DTC transaction.
122120
- If the client issues abort, the transaction is aborted immediately.
123121
- If the client issues commit, DTC begins the two-phase commit protocol by asking all the resource managers in the transaction to prepare the transaction.
124-
4. DTC informs all resource managers to commit the transaction after all resource managers successfully acknowledge the prepare phase. If anything prevents successful acknowledgement, DTC aborts the transaction.
122+
4. DTC informs all resource managers to commit the transaction after all resource managers successfully acknowledge the prepare phase. If anything prevents successful acknowledgment, DTC aborts the transaction.
125123

126124
### Effects of configuring an availability group for distributed transactions
127125

@@ -161,7 +159,7 @@ failed to reenlist citing that the database RMID does
161159
not match the RMID [xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx]
162160
associated with the transaction.  Please manually resolve
163161
the transaction.
164-
162+
165163
SQL Server detected a DTC/KTM in-doubt transaction with UOW 
166164
{yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy}.Please resolve it
167165
following the guideline for Troubleshooting DTC Transactions.

0 commit comments

Comments
 (0)