你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Set-AzSqlDatabase

设置数据库的属性,或将现有数据库移到弹性池中。

语法

Set-AzSqlDatabase
   [-DatabaseName] <String>
   [-MaxSizeBytes <Int64>]
   [-Edition <String>]
   [-RequestedServiceObjectiveName <String>]
   [-ElasticPoolName <String>]
   [-ReadScale <DatabaseReadScale>]
   [-Tags <Hashtable>]
   [-ZoneRedundant]
   [-AsJob]
   [-LicenseType <String>]
   [-ComputeModel <String>]
   [-AutoPauseDelayInMinutes <Int32>]
   [-MinimumCapacity <Double>]
   [-HighAvailabilityReplicaCount <Int32>]
   [-BackupStorageRedundancy <String>]
   [-SecondaryType <String>]
   [-MaintenanceConfigurationId <String>]
   [-AssignIdentity]
   [-EncryptionProtector <String>]
   [-UserAssignedIdentityId <String[]>]
   [-KeyList <String[]>]
   [-KeysToRemove <String[]>]
   [-FederatedClientId <Guid>]
   [-PreferredEnclaveType <String>]
   [-EncryptionProtectorAutoRotation]
   [-UseFreeLimit]
   [-FreeLimitExhaustionBehavior <String>]
   [-ManualCutover]
   [-PerformCutover]
   [-ServerName] <String>
   [-ResourceGroupName] <String>
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-AzSqlDatabase
   [-DatabaseName] <String>
   [-MaxSizeBytes <Int64>]
   [-Edition <String>]
   [-ReadScale <DatabaseReadScale>]
   [-Tags <Hashtable>]
   [-ZoneRedundant]
   [-AsJob]
   [-VCore <Int32>]
   [-ComputeGeneration <String>]
   [-LicenseType <String>]
   [-ComputeModel <String>]
   [-AutoPauseDelayInMinutes <Int32>]
   [-MinimumCapacity <Double>]
   [-HighAvailabilityReplicaCount <Int32>]
   [-BackupStorageRedundancy <String>]
   [-SecondaryType <String>]
   [-MaintenanceConfigurationId <String>]
   [-AssignIdentity]
   [-EncryptionProtector <String>]
   [-UserAssignedIdentityId <String[]>]
   [-KeyList <String[]>]
   [-KeysToRemove <String[]>]
   [-FederatedClientId <Guid>]
   [-PreferredEnclaveType <String>]
   [-EncryptionProtectorAutoRotation]
   [-UseFreeLimit]
   [-FreeLimitExhaustionBehavior <String>]
   [-ManualCutover]
   [-PerformCutover]
   [-ServerName] <String>
   [-ResourceGroupName] <String>
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-AzSqlDatabase
   [-DatabaseName] <String>
   -NewName <String>
   [-AsJob]
   [-BackupStorageRedundancy <String>]
   [-SecondaryType <String>]
   [-MaintenanceConfigurationId <String>]
   [-AssignIdentity]
   [-EncryptionProtector <String>]
   [-UserAssignedIdentityId <String[]>]
   [-KeyList <String[]>]
   [-KeysToRemove <String[]>]
   [-FederatedClientId <Guid>]
   [-PreferredEnclaveType <String>]
   [-EncryptionProtectorAutoRotation]
   [-UseFreeLimit]
   [-FreeLimitExhaustionBehavior <String>]
   [-ManualCutover]
   [-PerformCutover]
   [-ServerName] <String>
   [-ResourceGroupName] <String>
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

说明

Set-AzSqlDatabase cmdlet 在 Azure SQL 数据库 中设置数据库的属性。 此 cmdlet 可以修改数据库的服务层级(版本)、性能级别(RequestedServiceObjectiveName)和存储最大大小(MaxSizeBytes)。 此外,还可以指定 ElasticPoolName 参数,将数据库移到弹性池中。 如果数据库已位于弹性池中,则可以使用 RequestedServiceObjectiveName 参数将数据库移出弹性池,并进入单一数据库的性能级别。

示例

示例 1:将数据库更新为标准 S0 数据库

Set-AzSqlDatabase -ResourceGroupName "ResourceGroup01" -DatabaseName "Database01" -ServerName "Server01" -Edition "Standard" -RequestedServiceObjectiveName "S0"

ResourceGroupName             : ResourceGroup01
ServerName                    : Server01
DatabaseName                  : Database01
Location                      : Central US
DatabaseId                    : a1e6bd1a-735a-4d48-8b98-afead5ef1218
Edition                       : Standard
CollationName                 : SQL_Latin1_General_CP1_CI_AS
CatalogCollation              :
MaxSizeBytes                  : 268435456000
Status                        : Online
CreationDate                  : 7/3/2015 7:33:37 AM
CurrentServiceObjectiveId     : 455330e1-00cd-488b-b5fa-177c226f28b7
CurrentServiceObjectiveName   : S0
RequestedServiceObjectiveId   : 455330e1-00cd-488b-b5fa-177c226f28b7
RequestedServiceObjectiveName :
ElasticPoolName               :
EarliestRestoreDate           :
Tags                          :

此命令将名为 Database01 的数据库更新为 Server01 服务器上的标准 S0 数据库。

示例 2:将数据库添加到弹性池

Set-AzSqlDatabase -ResourceGroupName "ResourceGroup01" -DatabaseName "Database01" -ServerName "Server01" -ElasticPoolName "ElasticPool01"

ResourceGroupName             : ResourceGroup01
ServerName                    : Server01
DatabaseName                  : Database01
Location                      : Central US
DatabaseId                    : a1e6bd1a-735a-4d48-8b98-afead5ef1218
Edition                       : Standard
CollationName                 : SQL_Latin1_General_CP1_CI_AS
CatalogCollation              :
MaxSizeBytes                  : 268435456000
Status                        : Online
CreationDate                  : 7/3/2015 7:33:37 AM
CurrentServiceObjectiveId     : d1737d22-a8ea-4de7-9bd0-33395d2a7419
CurrentServiceObjectiveName   : ElasticPool
RequestedServiceObjectiveId   : d1737d22-a8ea-4de7-9bd0-33395d2a7419
RequestedServiceObjectiveName :
ElasticPoolName               : elasticpool01
EarliestRestoreDate           :
Tags                          :

此命令将名为 Database01 的数据库添加到名为 Server01 的服务器上托管的 ElasticPool01 的弹性池。

示例 3:修改数据库的最大存储大小

Set-AzSqlDatabase -ResourceGroupName "ResourceGroup01" -DatabaseName "Database01" -ServerName "Server01" -MaxSizeBytes 1099511627776

ResourceGroupName             : ResourceGroup01
ServerName                    : Server01
DatabaseName                  : Database01
Location                      : Central US
DatabaseId                    : a1e6bd1a-735a-4d48-8b98-afead5ef1218
Edition                       : Standard
CollationName                 : SQL_Latin1_General_CP1_CI_AS
CatalogCollation              :
MaxSizeBytes                  : 1099511627776
Status                        : Online
CreationDate                  : 8/24/2017 9:00:37 AM
CurrentServiceObjectiveId     : 789681b8-ca10-4eb0-bdf2-e0b050601b40
CurrentServiceObjectiveName   : S3
RequestedServiceObjectiveId   : 789681b8-ca10-4eb0-bdf2-e0b050601b40
RequestedServiceObjectiveName :
ElasticPoolName               :
EarliestRestoreDate           :
Tags                          :

此命令更新名为 Database01 的数据库,将其最大大小设置为 1 TB。

示例 4:将现有的常规用途数据库更新为“超大规模”服务层级

Set-AzSqlDatabase -ResourceGroupName "ResourceGroup01" -DatabaseName "Database01" -ServerName "Server01" -Edition "Hyperscale" -RequestedServiceObjectiveName "HS_Gen5_2"

ResourceGroupName             : ResourceGroup01
ServerName                    : Server01
DatabaseName                  : Database01
Location                      : Central US
DatabaseId                    : 56246136-839f-4171-80af-4c28142463b1
Edition                       : Hyperscale
CollationName                 : SQL_Latin1_General_CP1_CI_AS
CatalogCollation              :
MaxSizeBytes                  : -1
Status                        : Online
CreationDate                  : 12/6/2020 5:34:16 PM
CurrentServiceObjectiveId     : 00000000-0000-0000-0000-000000000000
CurrentServiceObjectiveName   : HS_Gen5_2
RequestedServiceObjectiveName : HS_Gen5_2
RequestedServiceObjectiveId   :
ElasticPoolName               :
EarliestRestoreDate           : 12/6/2020 5:34:16 PM
Tags                          : {}
ResourceId                    : /subscriptions/xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxx/resourceGroups/ResourceGroup01/providers/Microsoft.Sql/servers/Server01/databases/Database01
CreateMode                    :
ReadScale                     : Enabled
ZoneRedundant                 :
Capacity                      : 2
Family                        : Gen5
SkuName                       : HS_Gen5
LicenseType                   : LicenseIncluded
AutoPauseDelayInMinutes       :
MinimumCapacity               :
ReadReplicaCount              : 1
BackupStorageRedundancy       : Geo

此命令将名为 Database01 的数据库从“常规用途”更新为“超大规模”服务层级。

示例 5:将数据库的首选 enclave 类型更新为 VBS

Set-AzSqlDatabase -ResourceGroupName "ResourceGroup01" -DatabaseName "Database01" -ServerName "Server01" -PreferredEnclaveType "VBS"

ResourceGroupName             : ResourceGroup01
ServerName                    : Server01
DatabaseName                  : Database01
Location                      : Central US
DatabaseId                    : a1e6bd1a-735a-4d48-8b98-afead5ef1218
Edition                       : Standard
CollationName                 : SQL_Latin1_General_CP1_CI_AS
CatalogCollation              :
MaxSizeBytes                  : 1099511627776
Status                        : Online
CreationDate                  : 8/24/2017 9:00:37 AM
CurrentServiceObjectiveId     : 789681b8-ca10-4eb0-bdf2-e0b050601b40
CurrentServiceObjectiveName   : S3
RequestedServiceObjectiveId   : 789681b8-ca10-4eb0-bdf2-e0b050601b40
PreferredEnclaveType          : VBS
RequestedServiceObjectiveName :
ElasticPoolName               :
EarliestRestoreDate           :
Tags                          :

此命令更新数据库以在数据库上配置 VBS enclave

参数

-AsJob

在后台运行 cmdlet

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-AssignIdentity

为此数据库生成并分配一个Microsoft Entra 标识,以用于 Azure KeyVault 等密钥管理服务。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-AutoPauseDelayInMinutes

数据库(仅限无服务器)的自动暂停延迟(仅限服务器),-1 选择退出

类型:Int32
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-BackupStorageRedundancy

用于存储SQL 数据库备份的备份存储冗余。 选项包括:本地、区域、地理和 GeoZone。 若要了解每个版本的数据库支持的选项,请参阅 Get-AzSqlCapability

类型:String
接受的值:Local, Zone, Geo, GeoZone
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-ComputeGeneration

要分配的计算生成。

类型:String
别名:Family
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-ComputeModel

Azure Sql 数据库的计算模型。 无服务器或预配

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Confirm

提示你在运行 cmdlet 之前进行确认。

类型:SwitchParameter
别名:cf
Position:Named
默认值:False
必需:False
接受管道输入:False
接受通配符:False

-DatabaseName

指定数据库的名称。

类型:String
别名:Name
Position:2
默认值:None
必需:True
接受管道输入:True
接受通配符:False

-DefaultProfile

用于与 azure 通信的凭据、帐户、租户和订阅

类型:IAzureContextContainer
别名:AzContext, AzureRmContext, AzureCredential
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Edition

指定数据库的版本。 此参数的可接受值为:

  • 基本
  • 标准
  • 高级
  • DataWarehouse
  • 免费
  • 拉伸
  • 常规用途
  • 超大规模
  • BusinessCritical
类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-ElasticPoolName

指定要在其中移动数据库的弹性池的名称。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-EncryptionProtector

用于SQL 数据库的加密保护程序密钥。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-EncryptionProtectorAutoRotation

AKV 密钥自动轮换状态

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-FederatedClientId

SQL 数据库的联合客户端 ID。 它用于跨租户 CMK 方案。

类型:Nullable<T>[Guid]
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-FreeLimitExhaustionBehavior

免费限制数据库的耗尽行为。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-HighAvailabilityReplicaCount

与数据库关联的只读次要副本数。 仅适用于超大规模版本。

类型:Int32
别名:ReadReplicaCount
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-KeyList

SQL 数据库的 AKV 键列表。

类型:String[]
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-KeysToRemove

要从SQL 数据库中删除的 AKV 键列表。

类型:String[]
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-LicenseType

Azure Sql 数据库的许可证类型。 可能的值为:

  • BasePrice - Azure 混合权益 (AHB) 现有 SQL Server 许可证所有者的折扣定价已应用。 现有 SQL Server 许可证所有者的数据库价格将折扣。
  • LicenseIncluded - 未应用现有 SQL Server 许可证所有者的 Azure 混合权益 (AHB) 折扣定价。 数据库价格将包括新的 SQL Server 许可证成本。
类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-MaintenanceConfigurationId

SQL 数据库的维护配置 ID。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-ManualCutover

使用手动直接转换迁移到“超大规模”。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-MaxSizeBytes

Azure SQL 数据库的最大大小(以字节为单位)。

类型:Int64
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-MinimumCapacity

数据库始终分配的最小容量(如果未暂停)。 仅适用于无服务器 Azure Sql 数据库。

类型:Double
别名:MinVCore, MinCapacity
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-NewName

要重命名数据库的新名称。

类型:String
Position:Named
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-PerformCutover

触发直接转换以迁移到“超大规模”。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-PreferredEnclaveType

Azure Sql 数据库的首选 enclave 类型。 可能的值为 Default 和 VBS。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-ReadScale

如果启用,将应用程序意向设置为只读的连接连接字符串可能会路由到只读次要副本。 此属性仅适用于 Premium 和 业务关键 数据库。

类型:DatabaseReadScale
接受的值:Disabled, Enabled
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-RequestedServiceObjectiveName

指定要分配给数据库的服务目标的名称。 有关服务目标的信息,请参阅Microsoft开发人员网络库中Azure SQL 数据库服务层级和性能级别

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-ResourceGroupName

指定为其分配服务器的资源组的名称。

类型:String
Position:0
默认值:None
必需:True
接受管道输入:True
接受通配符:False

-SecondaryType

数据库的辅助类型(如果是辅助数据库)。 有效值为 Geo 和 Named。

类型:String
接受的值:Named, Geo
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-ServerName

指定承载数据库的服务器的名称。

类型:String
Position:1
默认值:None
必需:True
接受管道输入:True
接受通配符:False

-Tags

以哈希表的形式进行键值对。 例如:@{key0=“value0”;key1=$null;key2=“value2”}

类型:Hashtable
别名:Tag
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-UseFreeLimit

对此数据库使用免费限制。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-UserAssignedIdentityId

SQL 数据库的用户分配标识列表。

类型:String[]
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-VCore

Azure Sql 数据库的 Vcore 数

类型:Int32
别名:Capacity, MaxVCore, MaxCapacity
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-WhatIf

显示运行该 cmdlet 时会发生什么情况。 cmdlet 未运行。

类型:SwitchParameter
别名:wi
Position:Named
默认值:False
必需:False
接受管道输入:False
接受通配符:False

-ZoneRedundant

要与 Azure Sql 数据库关联的区域冗余

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

输入

String

输出

AzureSqlDatabaseModel