Skip to content

Commit ab0437d

Browse files
authored
Merge pull request #24460 from MicrosoftDocs/FromPublicRepo
Confirm merge from FromPublicRepo to main to sync with https://github.com/MicrosoftDocs/sql-docs (branch live)
2 parents 8ecda8f + 065b7bb commit ab0437d

8 files changed

Lines changed: 42 additions & 15 deletions

File tree

azure-sql/database/read-scale-out.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,11 +17,11 @@ monikerRange: "= azuresql || = azuresql-db || = azuresql-mi"
1717
# Use read-only replicas to offload read-only query workloads
1818
[!INCLUDE[appliesto-sqldb-sqlmi](../includes/appliesto-sqldb-sqlmi.md)]
1919

20-
As part of [High Availability architecture](high-availability-sla.md#premium-and-business-critical-service-tier-locally-redundant-availability), each single database, elastic pool database, and managed instance in the Premium and Business Critical service tier is automatically provisioned with a primary read-write replica and several secondary read-only replicas. The secondary replicas are provisioned with the same compute size as the primary replica. The *read scale-out* feature allows you to offload read-only workloads using the compute capacity of one of the read-only replicas, instead of running them on the read-write replica. This way, some read-only workloads can be isolated from the read-write workloads, and will not affect their performance. The feature is intended for the applications that include logically separated read-only workloads, such as analytics. In the Premium and Business Critical service tiers, applications could gain performance benefits using this additional capacity at no extra cost.
20+
As part of [High Availability architecture](high-availability-sla.md#premium-and-business-critical-service-tier-locally-redundant-availability), each single database, elastic pool database, and managed instance in the Premium and Business Critical service tier is automatically provisioned with a primary read-write replica and one or more secondary read-only replicas. Azure SQL Managed Instance supports one secondary read-only replica. The secondary replicas are provisioned with the same compute size as the primary replica. The *read scale-out* feature allows you to offload read-only workloads using the compute capacity of one of the read-only replicas, instead of running them on the read-write replica. This way, some read-only workloads can be isolated from the read-write workloads, and will not affect their performance. The feature is intended for the applications that include logically separated read-only workloads, such as analytics. In the Premium and Business Critical service tiers, applications could gain performance benefits using this additional capacity at no extra cost.
2121

2222
The *read scale-out* feature is also available in the Hyperscale service tier when at least one [secondary replica](service-tier-hyperscale-replicas.md) is added. Hyperscale secondary [named replicas](service-tier-hyperscale-replicas.md#named-replica) provide independent scaling, access isolation, workload isolation, support for a variety of read scale-out scenarios, and other benefits. Multiple secondary [HA replicas](service-tier-hyperscale-replicas.md#high-availability-replica) can be used for load-balancing read-only workloads that require more resources than available on one secondary HA replica.
2323

24-
The High Availability architecture of Basic, Standard, and General Purpose service tiers does not include any replicas. The *read scale-out* feature is not available in these service tiers. However, [geo-replicas](active-geo-replication-overview.md) can provide similar functionality in these service tiers.
24+
The High Availability architecture of Basic, Standard, and General Purpose service tiers does not include any replicas. The *read scale-out* feature is not available in these service tiers. However, when using Azure SQL Database, [geo-replicas](active-geo-replication-overview.md) can provide similar functionality in these service tiers. When using Azure SQL Managed Instance and failover groups, the [failover group read-only listener](../managed-instance/auto-failover-group-sql-mi.md) can provide similar functionality respectively.
2525

2626
The following diagram illustrates the feature for Premium and Business Critical databases and managed instances.
2727

@@ -134,7 +134,7 @@ If a long-running query on a read-only replica directly or indirectly causes thi
134134
135135
## Enable and disable read scale-out for SQL Database
136136

137-
For SQL Managed Instance, read-scale out is automatically enabled on the Business Critical service tier, and is not available in the General Purpose service tier. Disabling and reenabling read scale-out is not possible.
137+
For SQL Managed Instance, read-scale out is automatically enabled on the Business Critical service tier, and is not available in the General Purpose service tier. Disabling and reenabling read scale-out is not possible.
138138

139139
For SQL Database, read scale-out is enabled by default on Premium, Business Critical, and Hyperscale service tiers. Read scale-out cannot be enabled in Basic, Standard, or General Purpose service tiers. Read scale-out is automatically disabled on Hyperscale databases configured with zero secondary replicas.
140140

azure-sql/managed-instance/managed-instance-link-feature-overview.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ To use the link feature, you'll need a supported version of SQL Server. The foll
3232

3333
In addition to the supported version, you'll need:
3434

35-
- Network connectivity between your SQL Server and managed instance is required. If your SQL Server is running on-premises, use a VPN link or Express route. If your SQL Server is running on an Azure VM, either deploy your VM to the same subnet as your managed instance, or use global VNet peering to connect two separate subnets.
35+
- Network connectivity between your SQL Server and managed instance is required. If your SQL Server is running on-premises, use a VPN link or Express route. If your SQL Server is running on an Azure VM, either deploy your VM to the same VNet as your managed instance, or use global VNet peering to connect two separate subnets.
3636
- Azure SQL Managed Instance provisioned on any service tier.
3737

3838
You'll also need the following tooling:

azure-sql/managed-instance/public-endpoint-overview.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ The following diagram shows the recommended security configurations:
3737

3838
![Security configurations for locking down inbound and outbound connectivity](./media/public-endpoint-overview/managed-instance-vnet.png)
3939

40-
A managed instance has a public endpoint address that is dedicated to a customer. This endpoint shares the IP with the [management endpoint](management-endpoint-find-ip-address.md) but uses a different port. In the client-side outbound firewall and in the network security group rules, set this public endpoint IP address to limit outbound connectivity.
40+
A managed instance has a public endpoint address that is dedicated to a customer. This endpoint shares the IP address with the [management endpoint](management-endpoint-find-ip-address.md) but uses a different port. Similar to a local endpoint, the public endpoint may change after certain management operations. Always determine the public endpoint address by resolving the endpoint FQDN record, such as, for example, when configuring application-level firewall rules.
4141

4242
To ensure traffic to the managed instance is coming from trusted sources, we recommend connecting from sources with well-known IP addresses. Use a network security group to limit access to the managed instance public endpoint on port 3342.
4343

@@ -47,4 +47,4 @@ If connections are started from Azure, we recommend that traffic come from a wel
4747

4848
## Next steps
4949

50-
- Learn how to configure public endpoint for manage instances: [Configure public endpoint](public-endpoint-configure.md)
50+
- Learn how to configure public endpoint for manage instances: [Configure public endpoint](public-endpoint-configure.md)

azure-sql/migration-guides/managed-instance/sql-server-to-sql-managed-instance-assessment-rules.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -35,10 +35,10 @@ This article provides a list of the rules used to assess the feasibility of migr
3535
| FileStream | Database | Issue | [Filestream and Filetable are not supported in Azure SQL Managed Instance.](#FileStream) |
3636
| LinkedServerWithNonSQLProvider | Database | Issue | [Linked server with non-SQL Server Provider isn't supported in Azure SQL Managed Instance.](#LinkedServerWithNonSQLProvider) |
3737
| MergeJob | Instance | Warning | [Merge job step isn't supported in Azure SQL Managed Instance.](#MergeJob) |
38-
| MIDatabaseSize | Database | Issue | [Azure SQL Managed Instance does not support database size greater than 8 TB.](#MIDatabaseSize<) |
38+
| MIDatabaseSize | Database | Issue | [Azure SQL Managed Instance does not support database size greater than 16 TB.](#MIDatabaseSize) |
3939
| MIHeterogeneousMSDTCTransactSQL | Database | Issue | [BEGIN DISTRIBUTED TRANSACTION with non-SQL Server remote server isn't supported in Azure SQL Managed Instance.](#MIHeterogeneousMSDTCTransactSQL) |
4040
| MIHomogeneousMSDTCTransactSQL | Database | Issue | [BEGIN DISTRIBUTED TRANSACTION is supported across multiple servers for Azure SQL Managed Instance.](#MIHomogeneousMSDTCTransactSQL) |
41-
| MIInstanceSize | Instance | Warning | [Maximum instance storage size in Azure SQL Managed Instance cannot be greater than 8 TB.](#MIInstanceSize<) |
41+
| MIInstanceSize | Instance | Warning | [Maximum instance storage size in Azure SQL Managed Instance cannot be greater than 8 TB.](#MIInstanceSize) |
4242
| MultipleLogFiles | Database | Issue | [Azure SQL Managed Instance does not support databases with multiple log files.](#MultipleLogFiles<) |
4343
| NextColumn | Database | Issue | [Tables and Columns named NEXT will lead to an error In Azure SQL Managed Instance.](#NextColumn) |
4444
| NonANSILeftOuterJoinSyntax | Database | Warning | [Non-ANSI style left outer join is no longer supported and has been removed.](#NonANSILeftOuterJoinSyntax) |
@@ -300,9 +300,9 @@ Review impacted objects section in Azure Migrate to see all jobs using Merge job
300300
More information: [SQL Server Agent differences in Azure SQL Managed Instance ](../../managed-instance/transact-sql-tsql-differences-sql-server.md#sql-server-agent)
301301

302302

303-
## MI database size<a id="MIDatabaseSize<"></a>
303+
## MI database size<a id="MIDatabaseSize"></a>
304304

305-
**Title: Azure SQL Managed Instance does not support database size greater than 8 TB.**
305+
**Title: Azure SQL Managed Instance does not support database size greater than 16 TB.**
306306
**Category**: Issue
307307

308308
**Description**
@@ -316,7 +316,7 @@ More information: [Hardware characteristics of Azure SQL Managed Instance ](../.
316316

317317

318318

319-
## MI instance size<a id="MIInstanceSize<"></a>
319+
## MI instance size<a id="MIInstanceSize"></a>
320320

321321
**Title: Maximum instance storage size in Azure SQL Managed Instance cannot be greater than 8 TB.**
322322
**Category**: Warning

azure-sql/virtual-machines/windows/hadr-cluster-best-practices.md

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -302,6 +302,27 @@ Consider the scenario when a two-node cluster is created and brought online:
302302

303303
You can avoid this scenario by assigning an unused static IP address to the cluster network name in order to bring the cluster network name online and add the IP address to [Azure Load Balancer](availability-group-load-balancer-portal-configure.md).
304304

305+
If the SQL Server database engine, Always On availability group listener, failover cluster instance health probe, database mirroring endpoint, cluster core IP resource, or any other SQL resource is configured to use a port between 49,152 and 65,536 (the [default dynamic port range for TCP/IP](/windows/client-management/troubleshoot-tcpip-port-exhaust#default-dynamic-port-range-for-tcpip)), add an exclusion for each port. Doing so will prevent other system processes from being dynamically assigned the same port. The following example creates an exclusion for port 59999:
306+
307+
`netsh int ipv4 add excludedportrange tcp startport=59999 numberofports=1 store=persistent`
308+
309+
It is important to configure the port exclusion when the port is not in use, otherwise the command will fail with a message like “The process cannot access the file because it is being used by another process.”
310+
311+
To confirm that the exclusions have been configured correctly, use the following command: `netsh int ipv4 show excludedportrange tcp`.
312+
313+
Setting this exclusion for the AG role IP probe port should prevent events such as **Event ID: 1069** with status 10048. This event can be seen in the Windows Failover cluster events with the following message:
314+
```
315+
Cluster resource '<IP name in AG role>' of type 'IP Address' in cluster role '<AG Name>' failed.
316+
```
317+
An Event ID: 1069 with status 10048 can be identified from cluster logs with events like:
318+
```
319+
Resource IP Address 10.0.1.0 called SetResourceStatusEx: checkpoint 5. Old state OnlinePending, new state OnlinePending, AppSpErrorCode 0, Flags 0, nores=false
320+
IP Address <IP Address 10.0.1.0>: IpaOnlineThread: **Listening on probe port 59999** failed with status **10048**
321+
```
322+
Status [**10048**](/win32/desktop-src/WinSock/windows-sockets-error-codes-2) refers to: **This error occurs** if an application attempts to bind a socket to an **IP address/port that has already been used** for an existing socket.
323+
This can be caused by an internal process taking the same port defined as probe port. Remember that probe port is used to check the status of a backend pool instance from the Azure Load Balancer.
324+
If the **health probe fails** to get a response from a backend instance, then **no new connections will be sent to that backend instance** until the health probe succeeds again.
325+
305326
## Known issues
306327

307328
Review the resolutions for some commonly known issues and errors:

docs/linux/sql-server-linux-performance-best-practices.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -52,8 +52,8 @@ For SQL Server, it is recommended to use RAID configurations. The deployed files
5252
# Creating a log volume, using 6 devices, in RAID 10 configuration with 64KB stripes
5353
mdadm --create --verbose /dev/md3 --level=raid10 --chunk=64K --raid-devices=6 /dev/sda /dev/sdb /dev/sdc /dev/sdd /dev/sde /dev/sdf
5454

55-
mkfs.xfs /dev/sda1 -f -L log
56-
meta-data=/dev/sda1 isize=512 agcount=32, agsize=18287648 blks
55+
mkfs.xfs /dev/md3 -f -L log
56+
meta-data=/dev/md3 isize=512 agcount=32, agsize=18287648 blks
5757
= sectsz=4096 attr=2, projid32bit=1
5858
= crc=1 finobt=1, sparse=1, rmapbt=0
5959
= reflink=1

docs/sql-server/azure-arc/connect.md

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,9 @@ You can connect your existing SQL Server instance to Azure Arc by following thes
2222
* Your machine has at least one instance of SQL Server installed
2323
* The **Microsoft.AzureArcData** and **Microsoft.HybridCompute** resource providers have been registered.
2424

25+
> [!NOTE]
26+
> SQL Server on Azure Arc-enabled servers does not support SQL Server Failover Cluster Instances.
27+
2528
To register the resource providers, use one of the methods below:
2629

2730
# [Azure portal](#tab/azure)
@@ -54,7 +57,7 @@ If the machine with SQL Server is already connected to Azure Arc, you can regist
5457

5558
> [!IMPORTANT]
5659
>1. The Managed System Identity used by the Azure connected machine agent must have the *Azure Connected SQL Server Onboarding* role at resource group level.
57-
>2. The Azure resource with type `SQL Server - Azurde Arc` representing the SQL Server instance installed installed on teh machine machine will use the same region and the resource group as the Azure resources for Arc-enabled servers.
60+
>2. The Azure resource with type `SQL Server - Azurde Arc` representing the SQL Server instance installed on the machine will use the same region and the resource group as the Azure resources for Arc-enabled servers.
5861
5962
# [Azure portal](#tab/azure)
6063

@@ -229,4 +232,4 @@ The instance will be restored after the next sync with the agent. For informatio
229232

230233
* [Configure advanced data security for your SQL Server instance](configure-advanced-data-security.md)
231234

232-
* [Configure on-demand SQL assessment for your SQL Server instance](assess.md)
235+
* [Configure on-demand SQL assessment for your SQL Server instance](assess.md)

docs/sql-server/azure-arc/overview.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,9 @@ Azure Arc-enabled SQL Server supports SQL Server 2012 or higher running on one
4545
> [!NOTE]
4646
> Azure Arc-enabled SQL Server does not support container images with SQL Server.
4747
48+
> [!NOTE]
49+
> SQL Server on Azure Arc-enabled servers does not support SQL Server Failover Cluster Instances.
50+
4851
### Required permissions
4952

5053
To connect the SQL Server instances and the hosting machine to Azure Arc, you must have a user account or Azure service principal with privileges to perform the following actions:

0 commit comments

Comments
 (0)