You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Active geo-replication is a feature that lets you to create a continuously synchronized readable secondary database for a primary database. The readable secondary database may be in the same Azure region as the primary, or, more commonly, in a different region. This kind of readable secondary databases are also known as geo-secondaries, or geo-replicas.
17
+
Active geo-replication is a feature that lets you create a continuously synchronized readable secondary database for a primary database. The readable secondary database may be in the same Azure region as the primary, or, more commonly, in a different region. This kind of readable secondary database is also known as a geo-secondary or geo-replica.
18
18
19
19
Active geo-replication is designed as a business continuity solution that lets you perform quick disaster recovery of individual databases in case of a regional disaster or a large scale outage. Once geo-replication is set up, you can initiate a geo-failover to a geo-secondary in a different Azure region. The geo-failover is initiated programmatically by the application or manually by the user.
20
20
21
-
22
21
> [!NOTE]
23
-
> Active geo-replication is not supported by Azure SQL Managed Instance. For geographic failover of instances of SQL Managed Instance, use [Auto-failover groups](auto-failover-group-sql-db.md).
22
+
> For geographic failover of instances of SQL Managed Instance, use [Auto-failover groups](../managed-instance/auto-failover-group-sql-mi.md). For more information, [Compare geo-replication with failover groups](business-continuity-high-availability-disaster-recover-hadr-overview.md#compare-geo-replication-with-failover-groups). Active geo-replication is not supported by Azure SQL Managed Instance.
24
23
25
24
> [!NOTE]
26
25
> To migrate SQL databases from Azure Germany using active geo-replication, see [Migrate SQL Database using active geo-replication](/azure/germany/germany-migration-databases#migrate-sql-database-using-active-geo-replication).
@@ -83,7 +82,7 @@ To achieve full business continuity, adding database regional redundancy is only
83
82
84
83
-**Unplanned geo-failover**
85
84
86
-
Unplanned, or forced, geo-failover immediately switches the geo-secondary to the primary role without any synchronization with the primary. Any transactions committed on the primary but not yet replicated to the secondary are lost. This operation is designed as a recovery method during outages when the primary is not accessible, but database availability must be quickly restored. When the original primary is back online, it will be automatically re-connected, reseeded using the current primary data, and become a new geo-secondary.
85
+
Unplanned, or forced, geo-failover immediately switches the geo-secondary to the primary role without any synchronization with the primary. Any transactions committed on the primary but not yet replicated to the secondary are lost. This operation is designed as a recovery method during outages when the primary is not accessible, but database availability must be quickly restored. When the original primary is back online, it will be automatically reconnected, reseeded using the current primary data, and become a new geo-secondary.
87
86
88
87
> [!IMPORTANT]
89
88
> After either planned or unplanned geo-failover, the connection endpoint for the new primary changes because the new primary is now located on a different logical server.
@@ -135,9 +134,9 @@ To create a geo-secondary in a subscription different from the subscription of t
For more information see,[Configure firewall](firewall-configure.md).
137
+
For more information, see [Configure firewall](firewall-configure.md).
139
138
140
-
2. In the master database on the **primary** server, create a SQL authentication login dedicated to active geo-replication setup. Adjust login name and password as needed.
139
+
2. In the `master` database on the **primary** server, create a SQL authentication login dedicated to active geo-replication setup. Adjust login name and password as needed.
141
140
142
141
```sql
143
142
create login geodrsetup with password ='ComplexPassword01';
@@ -156,7 +155,7 @@ To create a geo-secondary in a subscription different from the subscription of t
156
155
select sid fromsys.sql_loginswhere name ='geodrsetup';
157
156
```
158
157
159
-
5. Connect to the **primary** database (not the master database), and create a user for the same login.
158
+
5. Connect to the **primary** database (not the `master` database), and create a user for the same login.
160
159
161
160
```sql
162
161
createusergeodrsetup for login geodrsetup;
@@ -192,13 +191,13 @@ To create a geo-secondary in a subscription different from the subscription of t
192
191
> [!NOTE]
193
192
> Cross-subscription geo-replication operations including setup and geo-failover are only supported using REST API & T-SQL commands.
194
193
>
195
-
> Adding a geo-secondary using T-SQL is not supported when connecting to the primary server over a [private endpoint](private-endpoint-overview.md). If a private endpoint is configured but public network access is allowed, adding a geo-secondary is supported when connected to the primary server from a public IP address. Once a geo-secondary is added, public access can be [denied](connectivity-settings.md#deny-public-network-access).
194
+
> Adding a geo-secondary using T-SQL is not supported when connecting to the primary server over a [private endpoint](private-endpoint-overview.md). If a private endpoint is configured but public network access is allowed, adding a geo-secondary is supported when connected to the primary server from a public IP address. Once a geo-secondary is added, [public network access can be denied](connectivity-settings.md#deny-public-network-access).
196
195
>
197
196
> Creating a geo-secondary on a logical server in a different Azure tenant is not supported when [Azure Active Directory only](https://techcommunity.microsoft.com/t5/azure-sql/azure-active-directory-only-authentication-for-azure-sql/ba-p/2417673) authentication for Azure SQL is active (enabled) on either primary or secondary logical server.
198
197
199
198
## <aname="keeping-credentials-and-firewall-rules-in-sync"></a> Keep credentials and firewall rules in sync
200
199
201
-
When using public network access for connecting to the database, we recommend using [database-level IP firewall rules](firewall-configure.md) for geo-replicated databases. These rules are replicated with the database, which ensures that all geo-secondaries have the same IP firewall rules as the primary. This approach eliminates the need for customers to manually configure and maintain firewall rules on servers hosting the primary and secondary databases. Similarly, using [contained database users](logins-create-manage.md) for data access ensures both primary and secondary databases always have the same authentication credentials. This way, after a geo-failover, there is no disruptions due to authentication credential mismatches. If you are using logins and users (rather than contained users), you must take extra steps to ensure that the same logins exist for your secondary database. For configuration details see [How to configure logins and users](active-geo-replication-security-configure.md).
200
+
When using public network access for connecting to the database, we recommend using [database-level IP firewall rules](firewall-configure.md) for geo-replicated databases. These rules are replicated with the database, which ensures that all geo-secondaries have the same IP firewall rules as the primary. This approach eliminates the need for customers to manually configure and maintain firewall rules on servers hosting the primary and secondary databases. Similarly, using [contained database users](logins-create-manage.md) for data access ensures both primary and secondary databases always have the same authentication credentials. This way, after a geo-failover, there are no disruptions due to authentication credential mismatches. If you are using logins and users (rather than contained users), you must take extra steps to ensure that the same logins exist for your secondary database. For configuration details, see [How to configure logins and users](active-geo-replication-security-configure.md).
@@ -280,7 +279,6 @@ As discussed previously, active geo-replication can also be managed programmatic
280
279
|[Replication Links - List By Database](/rest/api/sql/replicationlinks/listbydatabase)| Gets all replication links for a given database in a geo-replication partnership. It retrieves the information visible in the sys.geo_replication_links catalog view. |
281
280
|[Delete Replication Link](/rest/api/sql/replicationlinks/delete)| Deletes a database replication link. Cannot be done during failover. |
282
281
283
-
284
282
## Next steps
285
283
286
284
- For sample scripts, see:
@@ -290,4 +288,4 @@ As discussed previously, active geo-replication can also be managed programmatic
290
288
- For a business continuity overview and scenarios, see [Business continuity overview](business-continuity-high-availability-disaster-recover-hadr-overview.md).
291
289
- To learn about Azure SQL Database automated backups, see [SQL Database automated backups](automated-backups-overview.md).
292
290
- To learn about using automated backups for recovery, see [Restore a database from the service-initiated backups](recovery-using-backups.md).
293
-
- To learn about authentication requirements for a new primary server and database, see [SQL Database security after disaster recovery](active-geo-replication-security-configure.md).
291
+
- To learn about authentication requirements for a new primary server and database, see [SQL Database security after disaster recovery](active-geo-replication-security-configure.md).
- When restoring from an LTR backup, the read scale property is disabled. To enable, read scale on the restored database, update the database after it has been created.
325
325
- You need to specify the target service level objective, when restoring from an LTR backup, which was created when the database was in an elastic pool.
326
+
- LTR in the Hyperscale service tier is in limited public preview
327
+
328
+
> [!NOTE]
329
+
> LTR can be enabled for Hyperscale databases created or migrated from other service tiers after June 2022. LTR support for all other Hyperscale databases will be added over the next several weeks. If you attempt to enable LTR for a Hyperscale database where it is not yet supported, you will receive the following error: “Long Term Retention is not supported: Long-term retention on Hyperscale is currently in limited preview and cannot be enabled as yet for your database. To enable long-term retention please reach out to Microsoft support.” Please create a support ticket to resolve this, or wait until LTR support is enabled for your database.
This article describes key rotation for a [server](logical-servers.md) using a TDE protector from Azure Key Vault. Rotating the logical TDE protector for a server means to switch to a new asymmetric key that protects the databases on the server. Key rotation is an online operation and should only take a few seconds to complete, because this only decrypts and re-encrypts the database's data encryption key, not the entire database.
Copy file name to clipboardExpand all lines: azure-sql/managed-instance/auto-failover-group-configure-sql-mi.md
+7-3Lines changed: 7 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -3,7 +3,7 @@ title: Configure an auto-failover group
3
3
description: Learn how to configure an auto-failover group for Azure SQL Managed Instance by using the Azure portal, and Azure PowerShell.
4
4
author: MladjoA
5
5
ms.author: mlandzic
6
-
ms.reviewer: kendralittle, mathoma
6
+
ms.reviewer: mathoma
7
7
ms.date: 07/09/2022
8
8
ms.service: sql-managed-instance
9
9
ms.subservice: high-availability
@@ -240,10 +240,14 @@ The listener endpoint is in the form of `fog-name.database.windows.net`, and is
240
240
241
241
## <aname="creating-a-failover-group-between-managed-instances-in-different-subscriptions"></a> Create group between instances in different subscriptions
242
242
243
-
You can create a failover group between SQL Managed Instances in two different subscriptions, as long as subscriptions are associated to the same [Azure Active Directory Tenant](/azure/active-directory/fundamentals/active-directory-whatis#terminology). When using PowerShell API, you can do it by specifying the `PartnerSubscriptionId` parameter for the secondary SQL Managed Instance. When using REST API, each instance ID included in the `properties.managedInstancePairs` parameter can have its own Subscription ID.
243
+
You can create a failover group between SQL Managed Instances in two different subscriptions, as long as subscriptions are associated to the same [Azure Active Directory Tenant](/azure/active-directory/fundamentals/active-directory-whatis#terminology).
244
+
245
+
- When using PowerShell API, you can do it by specifying the `PartnerSubscriptionId` parameter for the secondary SQL Managed Instance.
246
+
- When using REST API, each instance ID included in the `properties.managedInstancePairs` parameter can have its own Subscription ID.
247
+
- Azure portal does not support creation of failover groups across different subscriptions.
244
248
245
249
> [!IMPORTANT]
246
-
> Azure portal does not support creation of failover groups across different subscriptions. Also, for the existing failover groups across different subscriptions and/or resource groups, failover can't be initiated manually via portal from the primary SQL Managed Instance. Initiate it from the geo-secondary instance instead.
250
+
> Azure portal does not support creation of failover groups across different subscriptions. For failover groups across different subscriptions and/or resource groups, failover can't be initiated manually via the Azure portal from the primary SQL managed instance. Initiate it from the geo-secondary instance instead.
0 commit comments