Skip to content

Commit c2855cf

Browse files
committed
Merge branch 'main' into release-arc-data
2 parents cc372cd + ef5e73c commit c2855cf

31 files changed

Lines changed: 806 additions & 695 deletions

File tree

azure-sql/database/free-offer-faq.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,10 @@ sections:
5050
answer: |
5151
Yes, if you change the **Free limit reached behavior** setting to **Continue using for additional charges**.
5252
53+
- question: Can I use my Student subscription with the Azure SQL Database free offer database?
54+
answer: |
55+
There are multiple student offers. Currently, the Microsoft Azure for Students Starter offer is incompatible with this Azure SQL Database free offer. Instead, consider the [Azure for College Students offer](https://azure.microsoft.com/pricing/offers/ms-azr-0170p/) or the [Azure Free offer](https://azure.microsoft.com/pricing/offers/ms-azr-0044p/). If desired, the **Continue using database for additional charges** option can deduct from the starting credits.
56+
5357
additionalContent: |
5458
## Next step
5559
- [Azure SQL Database free offer](free-offer.md)

azure-sql/database/free-offer.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ description: Guidance on how to deploy the Azure SQL Database free offer for new
44
author: NilsPohlmann
55
ms.author: nilsp
66
ms.reviewer: wiassaf, mathoma, randolphwest
7-
ms.date: 09/25/2023
7+
ms.date: 10/10/2023
88
ms.service: sql-database
99
ms.subservice: service-overview
1010
ms.topic: how-to
@@ -129,6 +129,7 @@ Compared to a normal General Purpose database, this free offer has the following
129129
- Elastic Jobs and DNS Alias aren't available for this free offer.
130130
- The free offer Azure SQL Database can't be a part of an elastic pool or autofailover group.
131131
- Currently, you can only use the Azure portal to create the free offer database.
132+
- Currently, the Microsoft Azure for Students Starter offer is incompatible with this Azure SQL Database free offer. Instead, consider the [Azure for College Students offer](https://azure.microsoft.com/pricing/offers/ms-azr-0170p/) or the [Azure Free offer](https://azure.microsoft.com/pricing/offers/ms-azr-0044p/). If desired, the **Continue using database for additional charges** option can deduct from the starting credits.
132133
- For more information, review the [Azure SQL Database free offer FAQ](free-offer-faq.yml).
133134

134135
## Clean up resources
-16.3 KB
Loading

azure-sql/database/reserved-capacity-overview.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -17,9 +17,9 @@ monikerRange: "=azuresql||=azuresql-db||=azuresql-mi"
1717

1818
Save money with Azure SQL Database or SQL Managed Instance by committing to a reservation for compute resources compared to pay-as-you-go prices. With reserved capacity, you make a commitment for SQL Database and/or SQL Managed Instance use for a period of one or three years to get a significant discount on the compute costs. To purchase reserved capacity, you need to specify the Azure region, deployment type, performance tier, and term.
1919

20-
You do not need to assign the reservation to a specific database or managed instance. Matching existing deployments that are already running or ones that are newly deployed automatically get the benefit. Hence, by purchasing a reserved capacity, existing resources infrastructure would not be modified and thus no failover/downtime is triggered on existing resources. By purchasing a reservation, you commit to usage for the compute costs for a period of one or three years. As soon as you buy a reservation, the compute charges that match the reservation attributes are no longer charged at the pay-as-you go rates.
20+
You do not need to assign the reservation to a specific database or managed instance. Matching existing deployments that are already running, or ones that are newly deployed automatically, get the benefit. Hence, by purchasing a reserved capacity, existing resources infrastructure would not be modified and thus no failover/downtime is triggered on existing resources. By purchasing a reservation, you commit to usage for the compute costs for a period of one or three years. As soon as you buy a reservation, the compute charges that match the reservation attributes are no longer charged at the pay-as-you-go rates.
2121

22-
A reservation applies to both primary and billable secondary compute replicas, but does not cover software, networking, or storage charges associated with the service. At the end of the reservation term, the billing benefit expires and the database or managed instance is billed at the pay-as-you go price. Reservations do not automatically renew. For pricing information, see the [reserved capacity offering](https://azure.microsoft.com/pricing/details/sql-database/managed/).
22+
A reservation applies to both primary and billable secondary compute replicas, but does not cover software, networking, or storage charges associated with the service. At the end of the reservation term, the billing benefit expires and the database or managed instance is billed at the pay-as-you-go price. Reservations do not automatically renew. For pricing information, see the [reserved capacity offering](https://azure.microsoft.com/pricing/details/sql-database/managed/).
2323

2424
You can buy reserved capacity in the [Azure portal](https://portal.azure.com). Pay for the reservation [up front or with monthly payments](/azure/cost-management-billing/reservations/prepare-buy-reservation). To buy reserved capacity:
2525

@@ -31,7 +31,7 @@ For more information about how enterprise customers and Pay-As-You-Go customers
3131
> [!NOTE]
3232
> Purchasing reserved capacity does not pre-allocate or reserve specific infrastructure resources (virtual machines or nodes) for your use.
3333
34-
## Determine correct size before purchase
34+
## Determine the correct size before purchase
3535

3636
The size of reservation should be based on the total amount of compute used by the existing or soon-to-be-deployed database or managed instance within a specific region and using the same performance tier and hardware configuration.
3737

@@ -56,7 +56,7 @@ Also, let's suppose that you know that you will need these resources for at leas
5656

5757
:::image type="content" source="./media/reserved-capacity-overview/sql-reserved-vcores-purchase.png" alt-text="Screenshot before submitting the reserved capacity purchase.":::
5858

59-
The following table describes required fields.
59+
The following table describes the required fields.
6060

6161
| Field | Description|
6262
|------------|--------------|

azure-sql/database/service-tier-hyperscale-replicas.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ Each type has a different architecture, feature set, purpose, and cost. Based on
2929

3030
## High Availability replica
3131

32-
A High Availability (HA) replica uses the same page servers as the primary replica, so no data copy is required to add an HA replica. HA replicas are mainly used to increase database availability; they act as hot standbys for failover purposes. If the primary replica becomes unavailable, failover to one of the existing HA replicas is automatic and quick. Connection string doesn't need to change; during failover applications may experience minimal downtime due to active connections being dropped. As usual for this scenario, proper retry logic is recommended. Several drivers already provide some degree of automatic retry logic. If you are using .NET, the [latest Microsoft.Data.SqlClient](https://devblogs.microsoft.com/azure-sql/configurable-retry-logic-for-microsoft-data-sqlclient/) library provides native full support for configurable automatic retry logic.
32+
A High Availability (HA) replica uses the same page servers as the primary replica, so no data copy is required to add an HA replica. HA replicas are mainly used to increase database availability; they act as hot standbys for failover purposes. If the primary replica becomes unavailable, failover to one of the existing HA replicas is automatic and quick. The connection string doesn't need to change; during failover applications may experience minimal downtime due to active connections being dropped. As usual for this scenario, proper retry logic is recommended. Several drivers already provide some degree of automatic retry logic. If you are using .NET, the [latest Microsoft.Data.SqlClient](https://devblogs.microsoft.com/azure-sql/configurable-retry-logic-for-microsoft-data-sqlclient/) library provides native full support for configurable automatic retry logic.
3333

3434
HA replicas use the same server and database name as the primary replica. Their Service Level Objective is also always the same as for the primary replica. HA replicas are not visible or manageable as a stand-alone resource from the portal or from any API.
3535

@@ -60,8 +60,8 @@ There are differences between HA replicas and named replicas:
6060

6161
As a result, named replicas offer several benefits over HA replicas, for what concern read-only workloads:
6262

63-
- Users connected to a named replica will suffer no disconnection if the primary replica is scaled up or down; at the same time, users connected to primary replica will be unaffected by named replicas scaling up or down.
64-
- Workloads running on any replica, primary or named, will be unaffected by long running queries running on other replicas.
63+
- Users connected to a named replica will suffer no disconnection if the primary replica is scaled up or down; at the same time, users connected to the primary replica will be unaffected by named replicas scaling up or down.
64+
- Workloads running on any replica, primary or named, will be unaffected by long-running queries running on other replicas.
6565

6666
The main goal of named replicas is to enable a broad variety of [read scale-out](read-scale-out.md) scenarios, and to improve Hybrid Transactional and Analytical Processing (HTAP) workloads. Examples of how to create such solutions are available here:
6767

azure-sql/database/service-tier-hyperscale.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -107,11 +107,11 @@ The vCore-based service tiers are differentiated based on database availability,
107107

108108
| Hardware configuration | CPU | Memory |
109109
| :--- | :--- | :--- |
110-
| Standard-series (Gen5) | **Provisioned compute**<br />- Intel&reg; E5-2673 v4 (Broadwell) 2.3 GHz, Intel&reg; SP-8160 (Skylake)<sup>1<sup>, Intel&reg; 8272CL (Cascade Lake) 2.5 GHz<sup>1<sup>, Intel&reg; Xeon Platinum 8307C (Ice Lake)<sup>1<sup>, AMD EPYC 7763v (Milan) processors<br />- Provision up to 128 vCores (hyper-threaded)<br /><br />**Serverless compute**<br />- Intel&reg; E5-2673 v4 (Broadwell) 2.3 GHz, Intel&reg; SP-8160 (Skylake)<sup>1<sup>, Intel&reg; 8272CL (Cascade Lake) 2.5 GHz<sup>1<sup>, Intel Xeon&reg; Platinum 8307C (Ice Lake)<sup>1<sup>, AMD EPYC 7763v (Milan) processors<br />- Autoscale up to 80 vCores (hyper-threaded)<br />- The memory-to-vCore ratio dynamically adapts to memory and CPU usage based on workload demand and can be as high as 24 GB per vCore. For example, at a given point in time, a workload may use and be billed for 240 GB memory and only 10 vCores. | **Provisioned compute**<br />- 5.1 GB per vCore<br />- Provision up to 625 GB<br /><br />**Serverless compute**<br />- Autoscale up to 24 GB per vCore<br />- Autoscale up to 240 GB max |
110+
| Standard-series (Gen5) | **Provisioned compute**<br />- Intel&reg; E5-2673 v4 (Broadwell) 2.3 GHz, Intel&reg; SP-8160 (Skylake)<sup>1</sup>, Intel&reg; 8272CL (Cascade Lake) 2.5 GHz<sup>1</sup>, Intel&reg; Xeon Platinum 8307C (Ice Lake)<sup>1</sup>, AMD EPYC 7763v (Milan) processors<br />- Provision up to 128 vCores (hyper-threaded)<br /><br />**Serverless compute**<br />- Intel&reg; E5-2673 v4 (Broadwell) 2.3 GHz, Intel&reg; SP-8160 (Skylake)<sup>1</sup>, Intel&reg; 8272CL (Cascade Lake) 2.5 GHz<sup>1</sup>, Intel Xeon&reg; Platinum 8307C (Ice Lake)<sup>1</sup>, AMD EPYC 7763v (Milan) processors<br />- Autoscale up to 80 vCores (hyper-threaded)<br />- The memory-to-vCore ratio dynamically adapts to memory and CPU usage based on workload demand and can be as high as 24 GB per vCore. For example, at a given point in time, a workload may use and be billed for 240 GB memory and only 10 vCores. | **Provisioned compute**<br />- 5.1 GB per vCore<br />- Provision up to 625 GB<br /><br />**Serverless compute**<br />- Autoscale up to 24 GB per vCore<br />- Autoscale up to 240 GB max |
111111
| Premium-series | - Intel&reg; Xeon Platinum 8307C (Ice Lake), AMD EPYC 7763v (Milan) processors | - 5.1 GB per vCore<br />- Provision up to 128 vCores (hyper-threaded) |
112112
| Premium-series memory optimized | - Intel&reg; Xeon Platinum 8307C (Ice Lake), AMD EPYC 7763v (Milan) processors | - 10.2 GB per vCore<br />- Provision up to 80 vCores (hyper-threaded) |
113113

114-
<sup>1<sup> In the [sys.dm_user_db_resource_governance](/sql/relational-databases/system-dynamic-management-views/sys-dm-user-db-resource-governor-azure-sql-database) dynamic management view, hardware generation for databases using Intel&reg; SP-8160 (Skylake) processors appears as Gen6, hardware generation for databases using Intel&reg; 8272CL (Cascade Lake) appears as Gen7, and hardware generation for databases using Intel Xeon&reg; Platinum 8307C (Ice Lake) or AMD&reg; EPYC&reg; 7763v (Milan) appear as Gen8. For a given compute size and hardware configuration, resource limits are the same regardless of CPU type. For more information, see resource limits for [single databases](resource-limits-vcore-single-databases.md) and [elastic pools](resource-limits-vcore-elastic-pools.md).
114+
<sup>1</sup> In the [sys.dm_user_db_resource_governance](/sql/relational-databases/system-dynamic-management-views/sys-dm-user-db-resource-governor-azure-sql-database) dynamic management view, hardware generation for databases using Intel&reg; SP-8160 (Skylake) processors appears as Gen6, hardware generation for databases using Intel&reg; 8272CL (Cascade Lake) appears as Gen7, and hardware generation for databases using Intel Xeon&reg; Platinum 8307C (Ice Lake) or AMD&reg; EPYC&reg; 7763v (Milan) appear as Gen8. For a given compute size and hardware configuration, resource limits are the same regardless of CPU type. For more information, see resource limits for [single databases](resource-limits-vcore-single-databases.md) and [elastic pools](resource-limits-vcore-elastic-pools.md).
115115

116116
Serverless is only supported on Standard-series (Gen5) hardware.
117117

azure-sql/database/transparent-data-encryption-byok-create-server-cross-tenant.md

Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ description: Learn how to configure user-assigned managed identity and transpare
55
author: GithubMirek
66
ms.author: mireks
77
ms.reviewer: vanto
8-
ms.date: 05/01/2023
8+
ms.date: 10/10/2023
99
ms.service: sql-database
1010
ms.subservice: security
1111
ms.custom: devx-track-azurecli, has-azure-ad-ps-ref
@@ -197,7 +197,23 @@ To get your user-assigned managed identity **Resource ID**, search for **Managed
197197

198198
```powershell
199199
# create a server with user-assigned managed identity and cross-tenant customer-managed TDE
200-
New-AzSqlServer -ResourceGroupName <ResourceGroupName> -Location <Location> -ServerName <ServerName> -ServerVersion "12.0" -SqlAdministratorCredentials (Get-Credential) -SqlAdministratorLogin <ServerAdminName> -SqlAdministratorPassword <ServerAdminPassword> -AssignIdentity -IdentityType <IdentityType> -UserAssignedIdentityId <UserAssignedIdentityId> -PrimaryUserAssignedIdentityId <PrimaryUserAssignedIdentityId> -KeyId <CustomerManagedKeyId> -FederatedClientId <FederatedClientId>
200+
$params = @{
201+
ResourceGroupName = "<ResourceGroupName>"
202+
Location = "<Location>"
203+
ServerName = "<ServerName>"
204+
ServerVersion = "12.0"
205+
SqlAdministratorCredentials = (Get-Credential)
206+
SqlAdministratorLogin = "<ServerAdminName>"
207+
SqlAdministratorPassword = "<ServerAdminPassword>"
208+
AssignIdentity = $true
209+
IdentityType = "<IdentityType>"
210+
UserAssignedIdentityId = "<UserAssignedIdentityId>"
211+
PrimaryUserAssignedIdentityId = "<PrimaryUserAssignedIdentityId>"
212+
KeyId = "<CustomerManagedKeyId>"
213+
FederatedClientId = "<FederatedClientId>"
214+
}
215+
216+
New-AzSqlServer @params
201217
```
202218

203219
# [ARM Template](#tab/arm-template)

azure-sql/database/transparent-data-encryption-byok-create-server.md

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ description: Learn how to configure user-assigned managed identity and customer-
55
author: GithubMirek
66
ms.author: mireks
77
ms.reviewer: vanto
8-
ms.date: 09/19/2023
8+
ms.date: 10/10/2023
99
ms.service: sql-database
1010
ms.subservice: security
1111
ms.custom: devx-track-azurecli
@@ -154,8 +154,22 @@ To get your user-assigned managed identity **Resource ID**, search for **Managed
154154

155155
```powershell
156156
# create a server with user-assigned managed identity and customer-managed TDE
157-
New-AzSqlServer -ResourceGroupName <ResourceGroupName> -Location <Location> -ServerName <ServerName> -ServerVersion "12.0" -SqlAdministratorCredentials (Get-Credential) -SqlAdministratorLogin <ServerAdminName> -SqlAdministratorPassword <ServerAdminPassword> -AssignIdentity -IdentityType <IdentityType> -UserAssignedIdentityId <UserAssignedIdentityId> -PrimaryUserAssignedIdentityId <PrimaryUserAssignedIdentityId> -KeyId <CustomerManagedKeyId>
157+
$params = @{
158+
ResourceGroupName = "<ResourceGroupName>"
159+
Location = "<Location>"
160+
ServerName = "<ServerName>"
161+
ServerVersion = "12.0"
162+
SqlAdministratorCredentials = (Get-Credential)
163+
SqlAdministratorLogin = "<ServerAdminName>"
164+
SqlAdministratorPassword = "<ServerAdminPassword>"
165+
AssignIdentity = $true
166+
IdentityType = "<IdentityType>"
167+
UserAssignedIdentityId = "<UserAssignedIdentityId>"
168+
PrimaryUserAssignedIdentityId = "<PrimaryUserAssignedIdentityId>"
169+
KeyId = "<CustomerManagedKeyId>"
170+
}
158171
172+
New-AzSqlServer @params
159173
```
160174

161175
# [ARM Template](#tab/arm-template)

azure-sql/database/transparent-data-encryption-byok-database-level-basic-actions.md

Lines changed: 26 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -154,7 +154,18 @@ To get your user-assigned managed identity **Resource ID**, search for **Managed
154154

155155
```powershell
156156
# create a server with user-assigned managed identity and cross-tenant customer-managed TDE with automatic key rotation enabled
157-
New-AzSqlDatabase -ResourceGroupName <ResourceGroupName> -ServerName <ServerName> -DatabaseName <DatabaseName> -AssignIdentity -UserAssignedIdentityId <UserAssignedIdentityId> -EncryptionProtector <CustomerManagedKeyId> -FederatedClientId <FederatedClientId> -EncryptionProtectorAutoRotation:$true
157+
$params = @{
158+
ResourceGroupName = '<ResourceGroupName>'
159+
ServerName = '<ServerName>'
160+
DatabaseName = '<DatabaseName>'
161+
AssignIdentity = $true
162+
UserAssignedIdentityId = '<UserAssignedIdentityId>'
163+
EncryptionProtector = '<CustomerManagedKeyId>'
164+
FederatedClientId = '<FederatedClientId>'
165+
EncryptionProtectorAutoRotation = $true
166+
}
167+
168+
New-AzSqlDatabase @params
158169
```
159170

160171
# [ARM Template](#tab/arm-template)
@@ -296,7 +307,20 @@ Replace the following values in the example:
296307
To get your user-assigned managed identity **Resource ID**, search for **Managed Identities** in the [Azure portal](https://portal.azure.com). Find your managed identity, and go to **Properties**. An example of your UMI **Resource ID** looks like `/subscriptions/<subscriptionId>/resourceGroups/<ResourceGroupName>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<managedIdentity>`.
297308

298309
```powershell
299-
Set-AzSqlDatabase -ResourceGroupName <ResourceGroupName> -ServerName <ServerName> -DatabaseName <DatabaseName> -AssignIdentity -UserAssignedIdentityId <UserAssignedIdentityId> -EncryptionProtector <CustomerManagedKeyId> -FederatedClientId <FederatedClientId> -KeyList <ListOfKeys> -KeysToRemove <ListOfKeysToRemove> -EncryptionProtectorAutoRotation:$true
310+
$params = @{
311+
ResourceGroupName = "<ResourceGroupName>"
312+
ServerName = "<ServerName>"
313+
DatabaseName = "<DatabaseName>"
314+
AssignIdentity = $true
315+
UserAssignedIdentityId = "<UserAssignedIdentityId>"
316+
EncryptionProtector = "<CustomerManagedKeyId>"
317+
FederatedClientId = "<FederatedClientId>"
318+
KeyList = "<ListOfKeys>"
319+
KeysToRemove = "<ListOfKeysToRemove>"
320+
EncryptionProtectorAutoRotation = $true
321+
}
322+
323+
Set-AzSqlDatabase @params
300324
```
301325

302326
An example of -KeyList and -KeysToRemove is:

0 commit comments

Comments
 (0)