Skip to content

Commit 5135bf4

Browse files
committed
Merge branch 'master' of https://github.com/MicrosoftDocs/sql-docs-pr into workingbranch1
2 parents 308f347 + 74c8a5a commit 5135bf4

5 files changed

Lines changed: 25 additions & 20 deletions

File tree

docs/database-engine/availability-groups/windows/overview-of-always-on-availability-groups-sql-server.md

Lines changed: 15 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
title: "What is an Always On availability group?"
33
description: "An introduction to the concepts that are central for configuring and managing Always On availability groups."
44
ms.custom: seo-lt-2019
5-
ms.date: "05/17/2016"
5+
ms.date: "04/29/2020"
66
ms.prod: sql
77
ms.reviewer: ""
88
ms.technology: high-availability
@@ -17,7 +17,7 @@ ms.assetid: 04fd9d95-4624-420f-a3be-1794309b3a47
1717
author: MashaMSFT
1818
ms.author: mathoma
1919
---
20-
# Overview of Always On Availability Groups (SQL Server)
20+
# What is an Always On availability group?
2121
[!INCLUDE[appliesto-ss-xxxx-xxxx-xxx-md](../../../includes/appliesto-ss-xxxx-xxxx-xxx-md.md)]
2222

2323
This topic introduces the [!INCLUDE[ssHADR](../../../includes/sshadr-md.md)] concepts that are central for configuring and managing one or more availability groups in [!INCLUDE[ssCurrent](../../../includes/sscurrent-md.md)]. For a summary of the benefits offered by availability groups and an overview of [!INCLUDE[ssHADR](../../../includes/sshadr-md.md)] terminology, see [Always On Availability Groups (SQL Server)](../../../database-engine/availability-groups/windows/always-on-availability-groups-sql-server.md).
@@ -49,15 +49,15 @@ ms.author: mathoma
4949

5050
![Availability group with five replicas](../../../database-engine/availability-groups/windows/media/aoag-agintrofigure.gif "Availability group with five replicas")
5151

52-
## <a name="AvDbs"></a> Availability Databases
52+
## <a name="AvDbs"></a> Availability databases
5353
To add a database to an availability group, the database must be an online, read-write database that exists on the server instance that hosts the primary replica. When you add a database, it joins the availability group as a primary database, while remaining available to clients. No corresponding secondary database exists until backups of the new primary database are restored to the server instance that hosts the secondary replica (using RESTORE WITH NORECOVERY). The new secondary database is in the RESTORING state until it is joined to the availability group. For more information, see [Start Data Movement on an Always On Secondary Database &#40;SQL Server&#41;](../../../database-engine/availability-groups/windows/start-data-movement-on-an-always-on-secondary-database-sql-server.md).
5454

5555
Joining places the secondary database into the ONLINE state and initiates data synchronization with the corresponding primary database. *Data synchronization* is the process by which changes to a primary database are reproduced on a secondary database. Data synchronization involves the primary database sending transaction log records to the secondary database.
5656

5757
> [!IMPORTANT]
5858
> An availability database is sometimes called a *database replica* in [!INCLUDE[tsql](../../../includes/tsql-md.md)], PowerShell, and SQL Server Management Objects (SMO) names. For example, the term "database replica" is used in the names of the Always On dynamic management views that return information about availability databases: **sys.dm_hadr_database_replica_states** and **sys.dm_hadr_database_replica_cluster_states**. However, in SQL Server Books Online, the term "replica" typically refers to availability replicas. For example, "primary replica" and "secondary replica" always refer to availability replicas.
5959
60-
## <a name="AGsARsADBs"></a> Availability Replicas
60+
## <a name="AGsARsADBs"></a> Availability replicas
6161
Each availability group defines a set of two or more failover partners known as availability replicas. *Availability replicas* are components of the availability group. Each availability replica hosts a copy of the availability databases in the availability group. For a given availability group, the availability replicas must be hosted by separate instances of [!INCLUDE[ssNoVersion](../../../includes/ssnoversion-md.md)] residing on different nodes of a WSFC cluster. Each of these server instances must be enabled for Always On.
6262

6363
A given instance can host only one availability replica per availability group. However, each instance can be used for many availability groups. A given instance can be either a stand-alone instance or a [!INCLUDE[ssNoVersion](../../../includes/ssnoversion-md.md)] failover cluster instance (FCI). If you require server-level redundancy, use Failover Cluster Instances.
@@ -67,20 +67,21 @@ ms.author: mathoma
6767
> [!NOTE]
6868
> When the role of an availability replica is indeterminate, such as during a failover, its databases are temporarily in a NOT SYNCHRONIZING state. Their role is set to RESOLVING until the role of the availability replica has resolved. If an availability replica resolves to the primary role, its databases become the primary databases. If an availability replica resolves to the secondary role, its databases become secondary databases.
6969
70-
## <a name="AvailabilityModes"></a> Availability Modes
71-
The availability mode is a property of each availability replica. The availability mode determines whether the primary replica waits to commit transactions on a database until a given secondary replica has written the transaction log records to disk (hardened the log). [!INCLUDE[ssHADR](../../../includes/sshadr-md.md)] supports two availability modes-*asynchronous-commit mode* and *synchronous-commit mode*.
70+
## <a name="AvailabilityModes"></a> Availability modes
71+
72+
The availability mode is a property of each availability replica. The availability mode determines whether the primary replica waits to commit transactions on a database until a given secondary replica has written the transaction log records to disk (hardened the log). [!INCLUDE[ssHADR](../../../includes/sshadr-md.md)] supports two availability modes-*asynchronous-commit mode* and *synchronous-commit mode*.
7273

7374
- **Asynchronous-commit mode**
7475

75-
An availability replica that uses this availability mode is known as an *asynchronous-commit replica*. Under asynchronous-commit mode, the primary replica commits transactions without waiting for acknowledgement that an asynchronous-commit secondary replica has hardened the log. Asynchronous-commit mode minimizes transaction latency on the secondary databases but allows them to lag behind the primary databases, making some data loss possible.
76+
An availability replica that uses this availability mode is known as an *asynchronous-commit replica*. Under asynchronous-commit mode, the primary replica commits transactions without waiting for acknowledgment that an asynchronous-commit secondary replica has hardened the log. Asynchronous-commit mode minimizes transaction latency on the secondary databases but allows them to lag behind the primary databases, making some data loss possible.
7677

7778
- **Synchronous-commit mode**
7879

7980
An availability replica that uses this availability mode is known as a *synchronous-commit replica*. Under synchronous-commit mode, before committing transactions, a synchronous-commit primary replica waits for a synchronous-commit secondary replica to acknowledge that it has finished hardening the log. Synchronous-commit mode ensures that once a given secondary database is synchronized with the primary database, committed transactions are fully protected. This protection comes at the cost of increased transaction latency.
8081

8182
For more information, see [Availability Modes &#40;Always On Availability Groups&#41;](../../../database-engine/availability-groups/windows/availability-modes-always-on-availability-groups.md).
8283

83-
## <a name="FormsOfFailover"></a> Types of Failover
84+
## <a name="FormsOfFailover"></a> Types of failover
8485
Within the context of a session between the primary replica and a secondary replica, the primary and secondary roles are potentially interchangeable in a process known as *failover*. During a failover the target secondary replica transitions to the primary role, becoming the new primary replica. The new primary replica brings its databases online as the primary databases, and client applications can connect to them. When the former primary replica is available, it transitions to the secondary role, becoming a secondary replica. The former primary databases become secondary databases and data synchronization resumes.
8586

8687
Three forms of failover exist-automatic, manual, and forced (with possible data loss). The form or forms of failover supported by a given secondary replica depends on its availability mode, and, for synchronous-commit mode, on the failover mode on the primary replica and target secondary replica, as follows.
@@ -105,15 +106,15 @@ ms.author: mathoma
105106

106107
For more information, see [Failover and Failover Modes &#40;Always On Availability Groups&#41;](../../../database-engine/availability-groups/windows/failover-and-failover-modes-always-on-availability-groups.md).
107108

108-
## <a name="ClientConnections"></a> Client Connections
109+
## <a name="ClientConnections"></a> Client connections
109110
You can provide client connectivity to the primary replica of a given availability group by creating an availability group listener. An *availability group listener* provides a set of resources that is attached to a given availability group to direct client connections to the appropriate availability replica.
110111

111112
An availability group listener is associated with a unique DNS name that serves as a virtual network name (VNN), one or more virtual IP addresses (VIPs), and a TCP port number. For more information, see [Availability Group Listeners, Client Connectivity, and Application Failover &#40;SQL Server&#41;](../../../database-engine/availability-groups/windows/listeners-client-connectivity-application-failover.md).
112113

113114
> [!TIP]
114115
> If an availability group possesses only two availability replicas and is not configured to allow read-access to the secondary replica, clients can connect to the primary replica by using a [database mirroring connection string](../../../database-engine/database-mirroring/connect-clients-to-a-database-mirroring-session-sql-server.md). This approach can be useful temporarily after you migrate a database from database mirroring to [!INCLUDE[ssHADR](../../../includes/sshadr-md.md)]. Before you add additional secondary replicas, you will need to create an availability group listener the availability group and update your applications to use the network name of the listener.
115116
116-
## <a name="ActiveSecondaries"></a> Active Secondary Replicas
117+
## <a name="ActiveSecondaries"></a> Active secondary replicas
117118
[!INCLUDE[ssHADR](../../../includes/sshadr-md.md)] supports active secondary replicas. Active secondary capabilities include support for:
118119

119120
- **Performing backup operations on secondary replicas**
@@ -126,7 +127,7 @@ ms.author: mathoma
126127

127128
If an availability group currently possesses an availability group listener and one or more readable secondary replicas, [!INCLUDE[ssNoVersion](../../../includes/ssnoversion-md.md)] can route read-intent connection requests to one of them (*read-only routing*). For more information, see [Availability Group Listeners, Client Connectivity, and Application Failover &#40;SQL Server&#41;](../../../database-engine/availability-groups/windows/listeners-client-connectivity-application-failover.md).
128129

129-
## <a name="SessionTimeoutPerios"></a> Session-Timeout Period
130+
## <a name="SessionTimeoutPerios"></a> Session-timeout period
130131
The session-timeout period is an availability-replica property that determines how long connection with another availability replica can remain inactive before the connection is closed. The primary and secondary replicas ping each other to signal that they are still active. Receiving a ping from the other replica during the timeout period indicates that the connection is still open and that the server instances are communicating. On receiving a ping, an availability replica resets its session-timeout counter on that connection.
131132

132133
The session-timeout period prevents either replica from waiting indefinitely to receive a ping from the other replica. If no ping is received from the other replica within the session-timeout period, the replica times out. Its connection is closed, and the timed-out replica enters the DISCONNECTED state. Even if a disconnected replica is configured for synchronous-commit mode, transactions will not wait for that replica to reconnect and resynchronize.
@@ -136,16 +137,16 @@ ms.author: mathoma
136137
> [!NOTE]
137138
> In the resolving role, the session-timeout period does not apply because pinging does not occur.
138139
139-
## <a name="APR"></a> Automatic Page Repair
140+
## <a name="APR"></a> Automatic page repair
140141
Each availability replica tries to automatically recover from corrupted pages on a local database by resolving certain types of errors that prevent reading a data page. If a secondary replica cannot read a page, the replica requests a fresh copy of the page from the primary replica. If the primary replica cannot read a page, the replica broadcasts a request for a fresh copy to all the secondary replicas and gets the page from the first to respond. If this request succeeds, the unreadable page is replaced by the copy, which usually resolves the error.
141142

142143
For more information, see [Automatic Page Repair &#40;Availability Groups: Database Mirroring&#41;](../../../sql-server/failover-clusters/automatic-page-repair-availability-groups-database-mirroring.md).
143144

144-
## <a name="RelatedTasks"></a> Related Tasks
145+
## <a name="RelatedTasks"></a> Related tasks
145146

146147
- [Getting Started with Always On Availability Groups &#40;SQL Server&#41;](../../../database-engine/availability-groups/windows/getting-started-with-always-on-availability-groups-sql-server.md)
147148

148-
## <a name="RelatedContent"></a> Related Content
149+
## <a name="RelatedContent"></a> Related content
149150

150151
- **Blogs:**
151152

docs/dma/dma-commandline.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -203,7 +203,7 @@ Configuration file contents when using source connections:
203203

204204
```
205205
<?xml version="1.0" encoding="utf-8" ?>
206-
<TargetReadinessConfiguration xmlns="https://microsoft.com/schemas/SqlServer/Advisor/TargetReadinessConfiguration">
206+
<TargetReadinessConfiguration xmlns="http://microsoft.com/schemas/SqlServer/Advisor/TargetReadinessConfiguration">
207207
<AssessmentName>name</AssessmentName>
208208
<SourcePlatform>Source Platform</SourcePlatform> <!-- Optional. The default is SqlOnPrem -->
209209
<TargetPlatform>TargetPlatform</TargetPlatform> <!-- Optional. The default is ManagedSqlServer -->

docs/integration-services/service/integration-services-ssis-in-a-cluster.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -122,7 +122,7 @@ For those customers who conclude that the advantages of configuring the [!INCLUD
122122

123123
4. Change the value of the **StorePath** element to the fully-qualified path of the **Packages** folder created on the shared disk in a previous step.
124124

125-
5. Update the value of **HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\100\SSIS\ServiceConfigFile** in the Registry to the fully-qualified path and file name of the service configuration file on the shared disk.
125+
5. On each node, update the value of **HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\100\SSIS\ServiceConfigFile** in the Registry to the fully-qualified path and file name of the service configuration file on the shared disk.
126126

127127
### To bring the Integration Services service online
128128

docs/relational-databases/performance/upgrade-dbcompat-using-qta.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ ms.author: pelopes
2020
manager: amitban
2121
---
2222
# Upgrading Databases by using the Query Tuning Assistant
23-
[!INCLUDE[tsql-appliesto-ss2016-asdb-xxxx-xxx-md.md](../../includes/tsql-appliesto-ss2016-asdb-xxxx-xxx-md.md)]
23+
[!INCLUDE[tsql-appliesto-ss2016-xxxx-xxxx-xxx-md.md](../../includes/tsql-appliesto-ss2016-xxxx-xxxx-xxx-md.md)]
2424

2525
When migrating from an older version of [!INCLUDE[ssNoVersion](../../includes/ssnoversion-md.md)] to [!INCLUDE[ssSQL14](../../includes/sssql14-md.md)] or newer, and [upgrading the database compatibility level](../../relational-databases/databases/view-or-change-the-compatibility-level-of-a-database.md) to the latest available, a workload may be exposed to the risk of performance regression. This is also possible to a lesser degree when upgrading between [!INCLUDE[ssSQL14](../../includes/sssql14-md.md)] and any newer version.
2626

docs/toc.yml

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -616,10 +616,11 @@
616616
- name: SignalAbort
617617
href: relational-databases/backup-restore/vdi-reference/iservervirtualdeviceset2-signalabort.md
618618
- name: Always On availability groups
619-
href: database-engine/availability-groups/windows/overview-of-always-on-availability-groups-sql-server.md
620619
items:
621620
- name: Overview
622621
items:
622+
- name: What is an Always On availability group?
623+
href: database-engine/availability-groups/windows/overview-of-always-on-availability-groups-sql-server.md
623624
- name: Availability modes
624625
href: database-engine/availability-groups/windows/availability-modes-always-on-availability-groups.md
625626
- name: Technology & capabilities
@@ -948,10 +949,13 @@
948949
- name: SQL Server error log
949950
href: database-engine/availability-groups/windows/sql-server-error-log-always-on-availability-groups.md
950951
- name: Always On failover cluster instance
951-
href: sql-server/failover-clusters/windows/windows-server-failover-clustering-wsfc-with-sql-server.md
952952
items:
953953
- name: Overview
954-
href: sql-server/failover-clusters/windows/always-on-failover-cluster-instances-sql-server.md
954+
items:
955+
- name: What is a failover cluster instance?
956+
href: sql-server/failover-clusters/windows/always-on-failover-cluster-instances-sql-server.md
957+
- name: Windows Server failover cluster
958+
href: sql-server/failover-clusters/windows/windows-server-failover-clustering-wsfc-with-sql-server.md
955959
- name: How-to
956960
items:
957961
- name: Deployment

0 commit comments

Comments
 (0)