Azure sql database 导入的Azure SQL数据库大小始终为250GB
我的问题是,设置一个新的SQL DB bacpac导入(S3标准)的最大大小总是为250 GB,就像忽略了参数“DatabaseMaxSizeBytes”一样。代码如下:Azure sql database 导入的Azure SQL数据库大小始终为250GB,azure-sql-database,Azure Sql Database,我的问题是,设置一个新的SQL DB bacpac导入(S3标准)的最大大小总是为250 GB,就像忽略了参数“DatabaseMaxSizeBytes”一样。代码如下: $sdvobjDbImport = New-AzureRmSqlDatabaseImport ` -ResourceGroupName $sdvstrSqlsResourceGroupName ` -ServerName $sdvstrSqlsNa
$sdvobjDbImport = New-AzureRmSqlDatabaseImport `
-ResourceGroupName $sdvstrSqlsResourceGroupName `
-ServerName $sdvstrSqlsName `
-AdministratorLogin $sdvstrAdminLI `
-AdministratorLoginPassword $sdvsstrAdminPW `
-DatabaseName $sdvstrDatabaseName `
-Edition $sdvstrDbEditionAtImport `
-ServiceObjectiveName $sdvstrServiceObjectiveAtImport `
-DatabaseMaxSizeBytes 262144000 `
-StorageKey $sdvstrStorageKey `
-StorageKeyType 'StorageAccessKey' `
-StorageUri $sdvstrStorageUri `
-EA Stop
它应该是250 MB,但不是GB。我不需要这样的怪物;之后的缩小(从250 GB到250 MB)会导致在DB上运行时间过长的问题。你知道我的代码出了什么问题吗?谷歌也没有给出答案。Az正在取代AzureRM,所以这个bug可能不会被修复。解决方案是使用新的AzSqlDatabaseImport而不是新的AzureRmSqlDatabaseImport 下面是一个如何使用它的示例
$importRequest = New-AzSqlDatabaseImport
-ResourceGroupName "<your_resource_group>" `
-ServerName "<your_server>" `
-DatabaseName "<your_database>" `
-DatabaseMaxSizeBytes "<database_size_in_bytes>" `
-StorageKeyType "StorageAccessKey" `
-StorageKey $(Get-AzStorageAccountKey -ResourceGroupName "<your_resource_group>" -StorageAccountName "<your_storage_account").Value[0] `
-StorageUri "https://myStorageAccount.blob.core.windows.net/importsample/sample.bacpac" `
-Edition "Standard" `
-ServiceObjectiveName "P6" `
-AdministratorLogin "<your_server_admin_account_user_id>" `
-AdministratorLoginPassword $(ConvertTo-SecureString -String "<your_server_admin_account_password>" -AsPlainText -Force)
$importRequest=新AzSqlDatabaseImport
-ResourceGroupName“”`
-服务器名“”`
-数据库名称“”`
-数据库MaxSizeBytes“”`
-StorageKeyType“StorageAccessKey”`
-StorageKey$(Get-AzStorageAccountKey-ResourceGroupName”“-StorageAccountName“我经过测试,遇到了相同的问题:参数-DatabaseMaxSizeBytes
不起作用。无论我们使用哪个值,它都将使用最大存储250G(DTU标准S2)创建数据库
Azure文档使用了-DatabaseMaxSizeBytes 5000000
,我已经测试过了,但它也不起作用
解决方案:
导入完成后,我们必须手动设置数据库大小,下面是示例命令:
Set-AzSqlDatabase -DatabaseName "TestDB" -ServerName "sqlservername" -ResourceGroupName "resourcegroup" -MaxSizeBytes "104857600"
注意:
-MaxSizeBytes
的值必须为:100M、500m、1GB、2GB、5GB、10GB、20GB、30GB、40GB、50GB、100GB、150GB、200GB、250GB
你也可以测试
您可以从门户获取此值:
我用这个
希望这能有所帮助。感谢您的贡献,但您的internet复制粘贴代码以及您到SQL Server Powershell的链接都无法作为答案。还有,您听说过“神奇数字”吗“1024当涉及转换数据单位时?已看到。那个家伙的问题与我的不同。但是,再次感谢您的参考!嗨,如果我的答案对您有帮助,请接受(马克)这就是答案。这对其他社区成员是有益的。谢谢。谢谢你确认我的观察。和你一样,我也会在bacpac导入后缩小数据库的大小。