Поделиться через


Майкрософт. Sql-серверы/базы данных

Определение ресурса Bicep

Тип ресурсов серверов и баз данных можно развернуть с помощью операций, предназначенных для следующих операций:

Список измененных свойств в каждой версии API см. в журнала изменений.

Формат ресурса

Создать Майкрософт. Ресурс SQL/серверы/базы данных — добавьте следующий Bicep в свой шаблон.

resource symbolicname 'Microsoft.Sql/servers/databases@2025-02-01-preview' = {
  parent: resourceSymbolicName
  identity: {
    type: 'string'
    userAssignedIdentities: {
      {customized property}: {}
    }
  }
  location: 'string'
  name: 'string'
  properties: {
    autoPauseDelay: int
    availabilityZone: 'string'
    catalogCollation: 'string'
    collation: 'string'
    createMode: 'string'
    elasticPoolId: 'string'
    encryptionProtector: 'string'
    encryptionProtectorAutoRotation: bool
    federatedClientId: 'string'
    freeLimitExhaustionBehavior: 'string'
    highAvailabilityReplicaCount: int
    isLedgerOn: bool
    keys: {
      {customized property}: {}
    }
    licenseType: 'string'
    longTermRetentionBackupResourceId: 'string'
    maintenanceConfigurationId: 'string'
    manualCutover: bool
    maxSizeBytes: int
    minCapacity: int
    performCutover: bool
    preferredEnclaveType: 'string'
    readScale: 'string'
    recoverableDatabaseId: 'string'
    recoveryServicesRecoveryPointId: 'string'
    requestedBackupStorageRedundancy: 'string'
    restorableDroppedDatabaseId: 'string'
    restorePointInTime: 'string'
    sampleName: 'string'
    secondaryType: 'string'
    sourceDatabaseDeletionDate: 'string'
    sourceDatabaseId: 'string'
    sourceResourceId: 'string'
    useFreeLimit: bool
    zoneRedundant: bool
  }
  sku: {
    capacity: int
    family: 'string'
    name: 'string'
    size: 'string'
    tier: 'string'
  }
  tags: {
    {customized property}: 'string'
  }
}

Значения свойств

Майкрософт. SQL/серверы/базы данных

Name Description Value
identity Идентификация Azure Active Directory базы данных. DatabaseIdentity
location Расположение ресурса. строка (обязательно)
name имя ресурса. строка (обязательно)
parent В Bicep можно указать родительский ресурс для дочернего ресурса. Это свойство необходимо добавить, только если дочерний ресурс объявлен за пределами родительского ресурса.

Дополнительные сведения см. в разделе Дочерний ресурс за пределами родительского ресурса.
Символьное имя ресурса типа: серверы
properties Свойства ресурса. DatabaseProperties
sku Номер SKU базы данных.

Список номеров SKU может отличаться по регионам и предложению поддержки. Чтобы определить SKU (включая имя, уровень/издание, семейство и емкость), доступные вашей подписке в Azure регионе, используйте API REST Capabilities_ListByLocation или одну из следующих команд:

azurecli<br />az sql db list-editions -l &lt;location&gt; -o table<br />````<br /><br />Оболочка PowerShell
Get-AzSqlServerServiceObjective -Location <расположение>
````
Sku
tags Теги ресурсов Словарь имен и значений тегов. См. теги в шаблонах

DatabaseIdentity

Name Description Value
type Тип удостоверения 'None'
'UserAssigned'
userAssignedIdentities Идентификаторы ресурса назначенных пользователем удостоверений для использования DatabaseIdentityUserAssignedIdentities

DatabaseIdentityUserAssignedIdentities

Name Description Value

DatabaseKey

Name Description Value

DatabaseProperties

Name Description Value
autoPauseDelay Время в минутах после автоматической приостановки базы данных. Значение -1 означает, что автоматическая приостановка отключена int
availabilityZone Указывает зону доступности, к ней закреплена база данных. '1'
'2'
'3'
'NoPreference'
catalogCollation Параметры сортировки каталога метаданных. 'DATABASE_DEFAULT'
'SQL_Latin1_General_CP1_CI_AS'
collation Параметры сортировки базы данных. string
createMode Задает режим создания базы данных.

По умолчанию: регулярное создание базы данных.

Копирование: создает базу данных как копию существующей базы данных. sourceDatabaseId должен быть указан в качестве идентификатора ресурса исходной базы данных.

Вторичный: создает базу данных в качестве вторичной реплики существующей базы данных. sourceDatabaseId должен быть указан в качестве идентификатора ресурса существующей базы данных-источника.

PointInTimeRestore: создает базу данных путем восстановления резервной копии существующей базы данных на определенный момент времени. sourceDatabaseId необходимо указать в качестве идентификатора ресурса существующей базы данных, и необходимо указать restorePointInTime.

Восстановление. Создание базы данных путем восстановления геореплицированной резервной копии. sourceDatabaseId необходимо указать в качестве идентификатора ресурса базы данных для восстановления.

Восстановление. Создание базы данных путем восстановления резервной копии удаленной базы данных. необходимо указать sourceDatabaseId. Если sourceDatabaseId является исходным идентификатором ресурса базы данных, необходимо указать sourceDatabaseDeletionDeletionDate. В противном случае sourceDatabaseId должен быть идентификатором ресурса базы данных, который можно восстановить, и sourceDatabaseDeletionDeletionDate игнорируется. restorePointInTime также можно указать для восстановления с более ранней точки во времени.

RestoreLongTermRetentionBackup: создает базу данных путем восстановления из долгосрочного хранилища хранения. RecoveryServicesRecoveryPointResourceId необходимо указать в качестве идентификатора ресурса точки восстановления.

Копирование, вторичный и restoreLongTermRetentionBackup не поддерживается для выпуска DataWarehouse.
'Copy'
'Default'
'OnlineSecondary'
'PointInTimeRestore'
'Recovery'
'Restore'
'RestoreExternalBackup'
'RestoreExternalBackupSecondary'
'RestoreLongTermRetentionBackup'
'Secondary'
elasticPoolId Идентификатор ресурса эластичного пула, содержащего эту базу данных. string
encryptionProtector URI хранилища ключей Azure базы данных, если она настроена с использованием ключей, управляемых клиентом базы данных. string
encryptionProtectorAutoRotation Флаг для включения или отключения автоматического поворота ключа AKV шифрования базы данных. bool
federatedClientId Идентификатор клиента, используемый для межтенантного сценария CMK для каждой базы данных string

Constraints:
Минимальная длина = 36
Максимальная длина = 36
Шаблон = ^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$
freeLimitExhaustionBehavior Указывает поведение, когда ежемесячные бесплатные ограничения исчерпаны для бесплатной базы данных.

AutoPause: база данных будет автоматически приостановлена при исчерпании бесплатных ограничений на оставшуюся часть месяца.

BillForUsage: база данных будет продолжать оставаться в сети после исчерпания бесплатных ограничений, и все превышение счетов будет выставлено.
'AutoPause'
'BillOverUsage'
highAvailabilityReplicaCount Количество вторичных реплик, связанных с базой данных выпуска "Критически важный для бизнеса", "Премиум" или "Гипермасштабирование", используемых для обеспечения высокой доступности. Неприменимо к базе данных гипермасштабирования в эластичном пуле. int
isLedgerOn Независимо от того, является ли эта база данных базой данных реестра, то есть все таблицы в базе данных являются таблицами реестра. Примечание. Значение этого свойства невозможно изменить после создания базы данных. bool
keys Идентификаторы ресурса назначенных пользователем удостоверений для использования DatabasePropertiesKeys
licenseType Тип лицензии, применяемый для этой базы данных. LicenseIncluded, если вам нужна лицензия, или BasePrice, если у вас есть лицензия и вы имеете право на Преимущество гибридного использования Azure. 'BasePrice'
'LicenseIncluded'
longTermRetentionBackupResourceId Идентификатор ресурса долгосрочной резервной копии хранения, связанной с операцией создания этой базы данных. string
maintenanceConfigurationId Идентификатор конфигурации обслуживания, назначенный базе данных. Эта конфигурация определяет период, когда будут выполняться обновления обслуживания. string
manualCutover Требуется ли выполнить переход вручную, контролируемый клиентом, во время операции "Обновить базу данных" на уровень "Гипермасштабирование".

Это свойство применимо только при масштабировании базы данных из уровня "Критически важный для бизнеса", "Общего назначения", "Премиум"/ "Стандартный" на уровень "Гипермасштабирование".

При указании вручнуюCutover операция масштабирования будет ожидать, пока входные данные пользователя активируют переключение в базу данных Гипермасштабирования.

Чтобы активировать переключение, укажите параметр "performCutover", когда операция масштабирования находится в состоянии ожидания.
bool
maxSizeBytes Максимальный размер базы данных, выраженный в байтах. int
minCapacity Минимальная емкость, которую база данных всегда будет выделена, если она не приостановлена int
performCutover Для активации управляемой клиентом ручной переключения во время выполнения операции масштабирования.

Этот параметр свойства применим только для операций масштабирования, инициируемых вместе с параметром ManualCutover.

Это свойство применимо только при масштабировании базы данных с уровня "Критически важный для бизнеса", "Общего назначения", "Премиум"/ "Стандартный" на уровень "Гипермасштабирование".

При указании performCutover операция масштабирования активирует переключение и выполняет изменение роли в базе данных Гипермасштабирования.
bool
preferredEnclaveType Тип анклава, запрошенного в базе данных, например по умолчанию или анклавов VBS. 'Default'
'VBS'
readScale Состояние маршрутизации только для чтения. Если включено, соединения с приложением intent установлен на readonly в их строка подключения могут быть маршрутизированы к вторичной реплике только для чтения в том же регионе. Неприменимо к базе данных гипермасштабирования в эластичном пуле. 'Disabled'
'Enabled'
recoverableDatabaseId Идентификатор ресурса восстанавливаемой базы данных, связанной с операцией создания этой базы данных. string
recoveryServicesRecoveryPointId Идентификатор ресурса точки восстановления, связанной с операцией создания этой базы данных. string
requestedBackupStorageRedundancy Тип учетной записи хранения, используемый для хранения резервных копий для этой базы данных. 'Geo'
'GeoZone'
'Local'
'Zone'
restorableDroppedDatabaseId Идентификатор ресурса восстанавливаемой удаленной базы данных, связанной с операцией создания этой базы данных. string
restorePointInTime Указывает точку во времени (ISO8601 формате) исходной базы данных, которая будет восстановлена для создания новой базы данных. string
sampleName Имя примера схемы, применяемой при создании этой базы данных. 'AdventureWorksLT'
'WideWorldImportersFull'
'WideWorldImportersStd'
secondaryType Тип вторичной базы данных, если она является вторичной. Допустимыми значениями являются гео, именованные и резервные. 'Geo'
'Named'
'Standby'
sourceDatabaseDeletionDate Указывает время удаления базы данных. string
sourceDatabaseId Идентификатор ресурса исходной базы данных, связанной с операцией создания этой базы данных. string
sourceResourceId Идентификатор ресурса источника, связанного с операцией создания этой базы данных.

Это свойство поддерживается только для выпуска DataWarehouse и позволяет восстанавливаться в подписках.

Если задан sourceResourceId, sourceDatabaseId, restoreableDatabaseId, restoreableDroppedDatabaseId и sourceDatabaseDeletionDeletionDate, а CreateMode должно быть PointInTimeRestore, Restore или Restore.

Если createMode — PointInTimeRestore, sourceResourceId должен быть идентификатором ресурса существующей базы данных или существующего пула SQL, а также необходимо указать restorePointInTime.

При созданииmode — restore, sourceResourceId должен быть идентификатором ресурса восстанавливаемой удаленной базы данных или восстанавливаемым пулом SQL.

При создании объекта CreateMode is Recover источникResourceId должен быть идентификатором ресурса восстанавливаемой базы данных или пула sql с возможностью восстановления.

Если исходная подписка принадлежит к клиенту, отличному от целевой подписки, заголовок x-ms-authorization-вспомогательный должен содержать маркер проверки подлинности для исходного клиента. Дополнительные сведения о заголовке x-ms-authorization-вспомогательный см. в разделе /Azure/azure-resource-manager/management/authenticate-multi-tenant
string
useFreeLimit Независимо от того, использует ли база данных бесплатные ежемесячные ограничения. Разрешено для одной базы данных в подписке. bool
zoneRedundant Независимо от того, является ли эта база данных избыточной по зонам, то есть реплики этой базы данных будут распространяться по нескольким зонам доступности. bool

DatabasePropertiesKeys

Name Description Value

DatabaseUserIdentity

Name Description Value

Sku

Name Description Value
capacity Емкость конкретного номера SKU. int
family Если служба имеет разные поколения оборудования для одного номера SKU, это можно записать здесь. string
name Имя номера SKU, как правило, буква + код номера, например P3. строка (обязательно)
size Размер конкретного номера SKU string
tier Уровень или выпуск конкретного номера SKU, например "Базовый", "Премиум". string

TrackedResourceTags

Name Description Value

Примеры использования

Bicep Samples

Простой пример развертывания базы данных MS SQL.

param resourceName string = 'acctest0001'
param location string = 'westeurope'
@secure()
@description('The administrator login password for the SQL server')
param administratorLoginPassword string

resource server 'Microsoft.Sql/servers@2021-02-01-preview' = {
  name: resourceName
  location: location
  properties: {
    administratorLogin: 'mradministrator'
    administratorLoginPassword: null
    minimalTlsVersion: '1.2'
    publicNetworkAccess: 'Enabled'
    restrictOutboundNetworkAccess: 'Disabled'
    version: '12.0'
  }
}

resource database 'Microsoft.Sql/servers/databases@2021-02-01-preview' = {
  parent: server
  name: resourceName
  location: location
  properties: {
    autoPauseDelay: 0
    createMode: 'Default'
    elasticPoolId: ''
    highAvailabilityReplicaCount: 0
    isLedgerOn: false
    licenseType: 'LicenseIncluded'
    maintenanceConfigurationId: resourceId('Microsoft.Maintenance/publicMaintenanceConfigurations', 'SQL_Default')
    minCapacity: 0
    readScale: 'Disabled'
    requestedBackupStorageRedundancy: 'Geo'
    zoneRedundant: false
  }
}

Azure Verified Modules

Следующие Azure Проверенные модули могут использоваться для развертывания этого типа ресурсов.

Модуль Description
База данных SQL Azure AVM Resource Module for База данных SQL Azure

Azure Quickstart Samples

Следующие шаблоны Azure Quickstart содержат Bicep образцов для развертывания этого типа ресурсов.

Bicep File Description
Azure SQL Server с аудитом на Log Analytics Этот шаблон позволяет развернуть Azure SQL-сервер с включённым Auditing для записи журналов аудита в Log Analytics (OMS workspace)
Создать SQL Server и базу данных Этот шаблон позволяет создавать базу данных SQL и сервер.
выделенный SQL-пул с прозрачным шифрованием Создаёт SQL Server и выделенный SQL-пул (ранее SQL DW) с прозрачное шифрование данных.
Развернуть спортивную аналитику на Azure архитектуре Создаёт Azure хранилище с включённым ADLS Gen 2, экземпляр Фабрика данных Azure с связанными сервисами для аккаунта хранения (а также База данных SQL Azure при развертывании) и экземпляр Azure Databricks. Удостоверение AAD для пользователя, развертывающего шаблон и управляемое удостоверение для экземпляра ADF, будет предоставлено роль участника данных BLOB-объектов хранилища в учетной записи хранения. Также есть варианты развертывания экземпляра Azure Key Vault, База данных SQL Azure и Azure Event Hub (для сценариев потокового использования). При развертывании Azure Key Vault идентификатор управляемой фабрикой данных и идентификатор AAD пользователя, развёртывающего шаблон, получают роль пользователя Key Vault Secrets.
Private Endpoint пример Этот шаблон показывает, как создать приватную конечную точку с указанием на Azure SQL Server
Обеспечение веб-приложения с базой данных SQL Этот шаблон подготавливает веб-приложение, базу данных SQL, параметры автомасштабирования, правила генерации оповещений и App Insights. Он настраивает строка подключения в веб-приложении для базы данных.
Sonarqube Docker Web App на Linux с Azure SQL Этот шаблон развёртает Sonarqube в веб-приложении Служба приложений Azure на Linux с использованием официального образа Sonarqube и поддерживается Azure SQL Server.
Веб-приложение с управляемой идентичностью, SQL Server и ΑΙ Простой пример развертывания инфраструктуры Azure для приложения + данных + управляемой идентичности + мониторинга

Определение ресурса шаблона ARM

Тип ресурсов серверов и баз данных можно развернуть с помощью операций, предназначенных для следующих операций:

Список измененных свойств в каждой версии API см. в журнала изменений.

Формат ресурса

Создать Майкрософт. Sql/серверы/ресурсы баз данных, добавьте следующий JSON в свой шаблон.

{
  "type": "Microsoft.Sql/servers/databases",
  "apiVersion": "2025-02-01-preview",
  "name": "string",
  "identity": {
    "type": "string",
    "userAssignedIdentities": {
      "{customized property}": {
      }
    }
  },
  "location": "string",
  "properties": {
    "autoPauseDelay": "int",
    "availabilityZone": "string",
    "catalogCollation": "string",
    "collation": "string",
    "createMode": "string",
    "elasticPoolId": "string",
    "encryptionProtector": "string",
    "encryptionProtectorAutoRotation": "bool",
    "federatedClientId": "string",
    "freeLimitExhaustionBehavior": "string",
    "highAvailabilityReplicaCount": "int",
    "isLedgerOn": "bool",
    "keys": {
      "{customized property}": {
      }
    },
    "licenseType": "string",
    "longTermRetentionBackupResourceId": "string",
    "maintenanceConfigurationId": "string",
    "manualCutover": "bool",
    "maxSizeBytes": "int",
    "minCapacity": "int",
    "performCutover": "bool",
    "preferredEnclaveType": "string",
    "readScale": "string",
    "recoverableDatabaseId": "string",
    "recoveryServicesRecoveryPointId": "string",
    "requestedBackupStorageRedundancy": "string",
    "restorableDroppedDatabaseId": "string",
    "restorePointInTime": "string",
    "sampleName": "string",
    "secondaryType": "string",
    "sourceDatabaseDeletionDate": "string",
    "sourceDatabaseId": "string",
    "sourceResourceId": "string",
    "useFreeLimit": "bool",
    "zoneRedundant": "bool"
  },
  "sku": {
    "capacity": "int",
    "family": "string",
    "name": "string",
    "size": "string",
    "tier": "string"
  },
  "tags": {
    "{customized property}": "string"
  }
}

Значения свойств

Майкрософт. SQL/серверы/базы данных

Name Description Value
apiVersion Версия API «2025-02-01-превью»
identity Идентификация Azure Active Directory базы данных. DatabaseIdentity
location Расположение ресурса. строка (обязательно)
name имя ресурса. строка (обязательно)
properties Свойства ресурса. DatabaseProperties
sku Номер SKU базы данных.

Список номеров SKU может отличаться по регионам и предложению поддержки. Чтобы определить SKU (включая имя, уровень/издание, семейство и емкость), доступные вашей подписке в Azure регионе, используйте API REST Capabilities_ListByLocation или одну из следующих команд:

azurecli<br />az sql db list-editions -l &lt;location&gt; -o table<br />````<br /><br />Оболочка PowerShell
Get-AzSqlServerServiceObjective -Location <расположение>
````
Sku
tags Теги ресурсов Словарь имен и значений тегов. См. теги в шаблонах
type Тип ресурса 'Майкрософт. Sql/серверы/базы данных

DatabaseIdentity

Name Description Value
type Тип удостоверения 'None'
'UserAssigned'
userAssignedIdentities Идентификаторы ресурса назначенных пользователем удостоверений для использования DatabaseIdentityUserAssignedIdentities

DatabaseIdentityUserAssignedIdentities

Name Description Value

DatabaseKey

Name Description Value

DatabaseProperties

Name Description Value
autoPauseDelay Время в минутах после автоматической приостановки базы данных. Значение -1 означает, что автоматическая приостановка отключена int
availabilityZone Указывает зону доступности, к ней закреплена база данных. '1'
'2'
'3'
'NoPreference'
catalogCollation Параметры сортировки каталога метаданных. 'DATABASE_DEFAULT'
'SQL_Latin1_General_CP1_CI_AS'
collation Параметры сортировки базы данных. string
createMode Задает режим создания базы данных.

По умолчанию: регулярное создание базы данных.

Копирование: создает базу данных как копию существующей базы данных. sourceDatabaseId должен быть указан в качестве идентификатора ресурса исходной базы данных.

Вторичный: создает базу данных в качестве вторичной реплики существующей базы данных. sourceDatabaseId должен быть указан в качестве идентификатора ресурса существующей базы данных-источника.

PointInTimeRestore: создает базу данных путем восстановления резервной копии существующей базы данных на определенный момент времени. sourceDatabaseId необходимо указать в качестве идентификатора ресурса существующей базы данных, и необходимо указать restorePointInTime.

Восстановление. Создание базы данных путем восстановления геореплицированной резервной копии. sourceDatabaseId необходимо указать в качестве идентификатора ресурса базы данных для восстановления.

Восстановление. Создание базы данных путем восстановления резервной копии удаленной базы данных. необходимо указать sourceDatabaseId. Если sourceDatabaseId является исходным идентификатором ресурса базы данных, необходимо указать sourceDatabaseDeletionDeletionDate. В противном случае sourceDatabaseId должен быть идентификатором ресурса базы данных, который можно восстановить, и sourceDatabaseDeletionDeletionDate игнорируется. restorePointInTime также можно указать для восстановления с более ранней точки во времени.

RestoreLongTermRetentionBackup: создает базу данных путем восстановления из долгосрочного хранилища хранения. RecoveryServicesRecoveryPointResourceId необходимо указать в качестве идентификатора ресурса точки восстановления.

Копирование, вторичный и restoreLongTermRetentionBackup не поддерживается для выпуска DataWarehouse.
'Copy'
'Default'
'OnlineSecondary'
'PointInTimeRestore'
'Recovery'
'Restore'
'RestoreExternalBackup'
'RestoreExternalBackupSecondary'
'RestoreLongTermRetentionBackup'
'Secondary'
elasticPoolId Идентификатор ресурса эластичного пула, содержащего эту базу данных. string
encryptionProtector URI хранилища ключей Azure базы данных, если она настроена с использованием ключей, управляемых клиентом базы данных. string
encryptionProtectorAutoRotation Флаг для включения или отключения автоматического поворота ключа AKV шифрования базы данных. bool
federatedClientId Идентификатор клиента, используемый для межтенантного сценария CMK для каждой базы данных string

Constraints:
Минимальная длина = 36
Максимальная длина = 36
Шаблон = ^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$
freeLimitExhaustionBehavior Указывает поведение, когда ежемесячные бесплатные ограничения исчерпаны для бесплатной базы данных.

AutoPause: база данных будет автоматически приостановлена при исчерпании бесплатных ограничений на оставшуюся часть месяца.

BillForUsage: база данных будет продолжать оставаться в сети после исчерпания бесплатных ограничений, и все превышение счетов будет выставлено.
'AutoPause'
'BillOverUsage'
highAvailabilityReplicaCount Количество вторичных реплик, связанных с базой данных выпуска "Критически важный для бизнеса", "Премиум" или "Гипермасштабирование", используемых для обеспечения высокой доступности. Неприменимо к базе данных гипермасштабирования в эластичном пуле. int
isLedgerOn Независимо от того, является ли эта база данных базой данных реестра, то есть все таблицы в базе данных являются таблицами реестра. Примечание. Значение этого свойства невозможно изменить после создания базы данных. bool
keys Идентификаторы ресурса назначенных пользователем удостоверений для использования DatabasePropertiesKeys
licenseType Тип лицензии, применяемый для этой базы данных. LicenseIncluded, если вам нужна лицензия, или BasePrice, если у вас есть лицензия и вы имеете право на Преимущество гибридного использования Azure. 'BasePrice'
'LicenseIncluded'
longTermRetentionBackupResourceId Идентификатор ресурса долгосрочной резервной копии хранения, связанной с операцией создания этой базы данных. string
maintenanceConfigurationId Идентификатор конфигурации обслуживания, назначенный базе данных. Эта конфигурация определяет период, когда будут выполняться обновления обслуживания. string
manualCutover Требуется ли выполнить переход вручную, контролируемый клиентом, во время операции "Обновить базу данных" на уровень "Гипермасштабирование".

Это свойство применимо только при масштабировании базы данных из уровня "Критически важный для бизнеса", "Общего назначения", "Премиум"/ "Стандартный" на уровень "Гипермасштабирование".

При указании вручнуюCutover операция масштабирования будет ожидать, пока входные данные пользователя активируют переключение в базу данных Гипермасштабирования.

Чтобы активировать переключение, укажите параметр "performCutover", когда операция масштабирования находится в состоянии ожидания.
bool
maxSizeBytes Максимальный размер базы данных, выраженный в байтах. int
minCapacity Минимальная емкость, которую база данных всегда будет выделена, если она не приостановлена int
performCutover Для активации управляемой клиентом ручной переключения во время выполнения операции масштабирования.

Этот параметр свойства применим только для операций масштабирования, инициируемых вместе с параметром ManualCutover.

Это свойство применимо только при масштабировании базы данных с уровня "Критически важный для бизнеса", "Общего назначения", "Премиум"/ "Стандартный" на уровень "Гипермасштабирование".

При указании performCutover операция масштабирования активирует переключение и выполняет изменение роли в базе данных Гипермасштабирования.
bool
preferredEnclaveType Тип анклава, запрошенного в базе данных, например по умолчанию или анклавов VBS. 'Default'
'VBS'
readScale Состояние маршрутизации только для чтения. Если включено, соединения с приложением intent установлен на readonly в их строка подключения могут быть маршрутизированы к вторичной реплике только для чтения в том же регионе. Неприменимо к базе данных гипермасштабирования в эластичном пуле. 'Disabled'
'Enabled'
recoverableDatabaseId Идентификатор ресурса восстанавливаемой базы данных, связанной с операцией создания этой базы данных. string
recoveryServicesRecoveryPointId Идентификатор ресурса точки восстановления, связанной с операцией создания этой базы данных. string
requestedBackupStorageRedundancy Тип учетной записи хранения, используемый для хранения резервных копий для этой базы данных. 'Geo'
'GeoZone'
'Local'
'Zone'
restorableDroppedDatabaseId Идентификатор ресурса восстанавливаемой удаленной базы данных, связанной с операцией создания этой базы данных. string
restorePointInTime Указывает точку во времени (ISO8601 формате) исходной базы данных, которая будет восстановлена для создания новой базы данных. string
sampleName Имя примера схемы, применяемой при создании этой базы данных. 'AdventureWorksLT'
'WideWorldImportersFull'
'WideWorldImportersStd'
secondaryType Тип вторичной базы данных, если она является вторичной. Допустимыми значениями являются гео, именованные и резервные. 'Geo'
'Named'
'Standby'
sourceDatabaseDeletionDate Указывает время удаления базы данных. string
sourceDatabaseId Идентификатор ресурса исходной базы данных, связанной с операцией создания этой базы данных. string
sourceResourceId Идентификатор ресурса источника, связанного с операцией создания этой базы данных.

Это свойство поддерживается только для выпуска DataWarehouse и позволяет восстанавливаться в подписках.

Если задан sourceResourceId, sourceDatabaseId, restoreableDatabaseId, restoreableDroppedDatabaseId и sourceDatabaseDeletionDeletionDate, а CreateMode должно быть PointInTimeRestore, Restore или Restore.

Если createMode — PointInTimeRestore, sourceResourceId должен быть идентификатором ресурса существующей базы данных или существующего пула SQL, а также необходимо указать restorePointInTime.

При созданииmode — restore, sourceResourceId должен быть идентификатором ресурса восстанавливаемой удаленной базы данных или восстанавливаемым пулом SQL.

При создании объекта CreateMode is Recover источникResourceId должен быть идентификатором ресурса восстанавливаемой базы данных или пула sql с возможностью восстановления.

Если исходная подписка принадлежит к клиенту, отличному от целевой подписки, заголовок x-ms-authorization-вспомогательный должен содержать маркер проверки подлинности для исходного клиента. Дополнительные сведения о заголовке x-ms-authorization-вспомогательный см. в разделе /Azure/azure-resource-manager/management/authenticate-multi-tenant
string
useFreeLimit Независимо от того, использует ли база данных бесплатные ежемесячные ограничения. Разрешено для одной базы данных в подписке. bool
zoneRedundant Независимо от того, является ли эта база данных избыточной по зонам, то есть реплики этой базы данных будут распространяться по нескольким зонам доступности. bool

DatabasePropertiesKeys

Name Description Value

DatabaseUserIdentity

Name Description Value

Sku

Name Description Value
capacity Емкость конкретного номера SKU. int
family Если служба имеет разные поколения оборудования для одного номера SKU, это можно записать здесь. string
name Имя номера SKU, как правило, буква + код номера, например P3. строка (обязательно)
size Размер конкретного номера SKU string
tier Уровень или выпуск конкретного номера SKU, например "Базовый", "Премиум". string

TrackedResourceTags

Name Description Value

Примеры использования

Azure Quickstart Templates

Следующие Azure шаблоны быстрого запуска развёртают этот тип ресурса.

Template Description
Azure SQL Server с аудитом на Log Analytics

Развернуться на Azure
Этот шаблон позволяет развернуть Azure SQL-сервер с включённым Auditing для записи журналов аудита в Log Analytics (OMS workspace)
Создать SQL Server и базу данных

Развернуться на Azure
Этот шаблон позволяет создавать базу данных SQL и сервер.
выделенный SQL-пул с прозрачным шифрованием

Развернуться на Azure
Создаёт SQL Server и выделенный SQL-пул (ранее SQL DW) с прозрачное шифрование данных.
Развернуть новый SQL Elastic Pool

Развернуться на Azure
Этот шаблон позволяет развернуть новый SQL Elastic Pool с новым связанным SQL Server и новыми SQL базами данных для назначения.
Развернуть спортивную аналитику на Azure архитектуре

Развернуться на Azure
Создаёт Azure хранилище с включённым ADLS Gen 2, экземпляр Фабрика данных Azure с связанными сервисами для аккаунта хранения (а также База данных SQL Azure при развертывании) и экземпляр Azure Databricks. Удостоверение AAD для пользователя, развертывающего шаблон и управляемое удостоверение для экземпляра ADF, будет предоставлено роль участника данных BLOB-объектов хранилища в учетной записи хранения. Также есть варианты развертывания экземпляра Azure Key Vault, База данных SQL Azure и Azure Event Hub (для сценариев потокового использования). При развертывании Azure Key Vault идентификатор управляемой фабрикой данных и идентификатор AAD пользователя, развёртывающего шаблон, получают роль пользователя Key Vault Secrets.
HDInsight с кастомной базой данных Ambari + Hive Metastore в VNET

Развернуться на Azure
Этот шаблон позволяет создать кластер HDInsight в существующей виртуальной сети с новой базой данных SQL, которая служит как пользовательской базой данных Ambari DB, так и хранилищем метаданных Hive. У вас должна быть существующая учетная запись SQL, учетная запись хранения и виртуальная сеть.
Private Endpoint пример

Развернуться на Azure
Этот шаблон показывает, как создать приватную конечную точку с указанием на Azure SQL Server
Обеспечение веб-приложения с базой данных SQL

Развернуться на Azure
Этот шаблон подготавливает веб-приложение, базу данных SQL, параметры автомасштабирования, правила генерации оповещений и App Insights. Он настраивает строка подключения в веб-приложении для базы данных.
Remote Desktop Услуги с высокой доступностью

Развернуться на Azure
Этот примерный код шаблона ARM будет развернуть лабораторию Remote Desktop Services 2019 Session Collection с высокой доступностью. Цель — внедрить полностью избыточное, высокодоступное решение для Remote Desktop Services, используя Windows Server 2019.
Sonarqube Docker Web App на Linux с Azure SQL

Развернуться на Azure
Этот шаблон развёртает Sonarqube в веб-приложении Служба приложений Azure на Linux с использованием официального образа Sonarqube и поддерживается Azure SQL Server.
Веб-приложение с управляемой идентичностью, SQL Server и ΑΙ

Развернуться на Azure
Простой пример развертывания инфраструктуры Azure для приложения + данных + управляемой идентичности + мониторинга
WebApp использует Azure SQL Private Endpoint

Развернуться на Azure
Этот шаблон показывает, как создать веб-приложение, которое использует частную конечную точку, указывающую на Azure SQL Server

Определение ресурса Terraform (поставщик AzAPI)

Тип ресурсов серверов и баз данных можно развернуть с помощью операций, предназначенных для следующих операций:

  • Группы ресурсов

Список измененных свойств в каждой версии API см. в журнала изменений.

Формат ресурса

Создать Майкрософт. Sql/серверы/ресурсы баз данных, добавьте следующий Terraform в ваш шаблон.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.Sql/servers/databases@2025-02-01-preview"
  name = "string"
  parent_id = "string"
  identity {
    type = "string"
    identity_ids = [
      "string"
    ]
  }
  location = "string"
  tags = {
    {customized property} = "string"
  }
  body = {
    properties = {
      autoPauseDelay = int
      availabilityZone = "string"
      catalogCollation = "string"
      collation = "string"
      createMode = "string"
      elasticPoolId = "string"
      encryptionProtector = "string"
      encryptionProtectorAutoRotation = bool
      federatedClientId = "string"
      freeLimitExhaustionBehavior = "string"
      highAvailabilityReplicaCount = int
      isLedgerOn = bool
      keys = {
        {customized property} = {
        }
      }
      licenseType = "string"
      longTermRetentionBackupResourceId = "string"
      maintenanceConfigurationId = "string"
      manualCutover = bool
      maxSizeBytes = int
      minCapacity = int
      performCutover = bool
      preferredEnclaveType = "string"
      readScale = "string"
      recoverableDatabaseId = "string"
      recoveryServicesRecoveryPointId = "string"
      requestedBackupStorageRedundancy = "string"
      restorableDroppedDatabaseId = "string"
      restorePointInTime = "string"
      sampleName = "string"
      secondaryType = "string"
      sourceDatabaseDeletionDate = "string"
      sourceDatabaseId = "string"
      sourceResourceId = "string"
      useFreeLimit = bool
      zoneRedundant = bool
    }
    sku = {
      capacity = int
      family = "string"
      name = "string"
      size = "string"
      tier = "string"
    }
  }
}

Значения свойств

Майкрософт. SQL/серверы/базы данных

Name Description Value
identity Идентификация Azure Active Directory базы данных. DatabaseIdentity
location Расположение ресурса. строка (обязательно)
name имя ресурса. строка (обязательно)
parent_id Идентификатор ресурса, который является родительским для этого ресурса. Идентификатор ресурса типа: серверы
properties Свойства ресурса. DatabaseProperties
sku Номер SKU базы данных.

Список номеров SKU может отличаться по регионам и предложению поддержки. Чтобы определить SKU (включая имя, уровень/издание, семейство и емкость), доступные вашей подписке в Azure регионе, используйте API REST Capabilities_ListByLocation или одну из следующих команд:

azurecli<br />az sql db list-editions -l &lt;location&gt; -o table<br />````<br /><br />Оболочка PowerShell
Get-AzSqlServerServiceObjective -Location <расположение>
````
Sku
tags Теги ресурсов Словарь имен и значений тегов.
type Тип ресурса «Майкрософт. Sql/servers/databases@2025-02-01-preview"

DatabaseIdentity

Name Description Value
type Тип удостоверения 'None'
'UserAssigned'
userAssignedIdentities Идентификаторы ресурса назначенных пользователем удостоверений для использования DatabaseIdentityUserAssignedIdentities

DatabaseIdentityUserAssignedIdentities

Name Description Value

DatabaseKey

Name Description Value

DatabaseProperties

Name Description Value
autoPauseDelay Время в минутах после автоматической приостановки базы данных. Значение -1 означает, что автоматическая приостановка отключена int
availabilityZone Указывает зону доступности, к ней закреплена база данных. '1'
'2'
'3'
'NoPreference'
catalogCollation Параметры сортировки каталога метаданных. 'DATABASE_DEFAULT'
'SQL_Latin1_General_CP1_CI_AS'
collation Параметры сортировки базы данных. string
createMode Задает режим создания базы данных.

По умолчанию: регулярное создание базы данных.

Копирование: создает базу данных как копию существующей базы данных. sourceDatabaseId должен быть указан в качестве идентификатора ресурса исходной базы данных.

Вторичный: создает базу данных в качестве вторичной реплики существующей базы данных. sourceDatabaseId должен быть указан в качестве идентификатора ресурса существующей базы данных-источника.

PointInTimeRestore: создает базу данных путем восстановления резервной копии существующей базы данных на определенный момент времени. sourceDatabaseId необходимо указать в качестве идентификатора ресурса существующей базы данных, и необходимо указать restorePointInTime.

Восстановление. Создание базы данных путем восстановления геореплицированной резервной копии. sourceDatabaseId необходимо указать в качестве идентификатора ресурса базы данных для восстановления.

Восстановление. Создание базы данных путем восстановления резервной копии удаленной базы данных. необходимо указать sourceDatabaseId. Если sourceDatabaseId является исходным идентификатором ресурса базы данных, необходимо указать sourceDatabaseDeletionDeletionDate. В противном случае sourceDatabaseId должен быть идентификатором ресурса базы данных, который можно восстановить, и sourceDatabaseDeletionDeletionDate игнорируется. restorePointInTime также можно указать для восстановления с более ранней точки во времени.

RestoreLongTermRetentionBackup: создает базу данных путем восстановления из долгосрочного хранилища хранения. RecoveryServicesRecoveryPointResourceId необходимо указать в качестве идентификатора ресурса точки восстановления.

Копирование, вторичный и restoreLongTermRetentionBackup не поддерживается для выпуска DataWarehouse.
'Copy'
'Default'
'OnlineSecondary'
'PointInTimeRestore'
'Recovery'
'Restore'
'RestoreExternalBackup'
'RestoreExternalBackupSecondary'
'RestoreLongTermRetentionBackup'
'Secondary'
elasticPoolId Идентификатор ресурса эластичного пула, содержащего эту базу данных. string
encryptionProtector URI хранилища ключей Azure базы данных, если она настроена с использованием ключей, управляемых клиентом базы данных. string
encryptionProtectorAutoRotation Флаг для включения или отключения автоматического поворота ключа AKV шифрования базы данных. bool
federatedClientId Идентификатор клиента, используемый для межтенантного сценария CMK для каждой базы данных string

Constraints:
Минимальная длина = 36
Максимальная длина = 36
Шаблон = ^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$
freeLimitExhaustionBehavior Указывает поведение, когда ежемесячные бесплатные ограничения исчерпаны для бесплатной базы данных.

AutoPause: база данных будет автоматически приостановлена при исчерпании бесплатных ограничений на оставшуюся часть месяца.

BillForUsage: база данных будет продолжать оставаться в сети после исчерпания бесплатных ограничений, и все превышение счетов будет выставлено.
'AutoPause'
'BillOverUsage'
highAvailabilityReplicaCount Количество вторичных реплик, связанных с базой данных выпуска "Критически важный для бизнеса", "Премиум" или "Гипермасштабирование", используемых для обеспечения высокой доступности. Неприменимо к базе данных гипермасштабирования в эластичном пуле. int
isLedgerOn Независимо от того, является ли эта база данных базой данных реестра, то есть все таблицы в базе данных являются таблицами реестра. Примечание. Значение этого свойства невозможно изменить после создания базы данных. bool
keys Идентификаторы ресурса назначенных пользователем удостоверений для использования DatabasePropertiesKeys
licenseType Тип лицензии, применяемый для этой базы данных. LicenseIncluded, если вам нужна лицензия, или BasePrice, если у вас есть лицензия и вы имеете право на Преимущество гибридного использования Azure. 'BasePrice'
'LicenseIncluded'
longTermRetentionBackupResourceId Идентификатор ресурса долгосрочной резервной копии хранения, связанной с операцией создания этой базы данных. string
maintenanceConfigurationId Идентификатор конфигурации обслуживания, назначенный базе данных. Эта конфигурация определяет период, когда будут выполняться обновления обслуживания. string
manualCutover Требуется ли выполнить переход вручную, контролируемый клиентом, во время операции "Обновить базу данных" на уровень "Гипермасштабирование".

Это свойство применимо только при масштабировании базы данных из уровня "Критически важный для бизнеса", "Общего назначения", "Премиум"/ "Стандартный" на уровень "Гипермасштабирование".

При указании вручнуюCutover операция масштабирования будет ожидать, пока входные данные пользователя активируют переключение в базу данных Гипермасштабирования.

Чтобы активировать переключение, укажите параметр "performCutover", когда операция масштабирования находится в состоянии ожидания.
bool
maxSizeBytes Максимальный размер базы данных, выраженный в байтах. int
minCapacity Минимальная емкость, которую база данных всегда будет выделена, если она не приостановлена int
performCutover Для активации управляемой клиентом ручной переключения во время выполнения операции масштабирования.

Этот параметр свойства применим только для операций масштабирования, инициируемых вместе с параметром ManualCutover.

Это свойство применимо только при масштабировании базы данных с уровня "Критически важный для бизнеса", "Общего назначения", "Премиум"/ "Стандартный" на уровень "Гипермасштабирование".

При указании performCutover операция масштабирования активирует переключение и выполняет изменение роли в базе данных Гипермасштабирования.
bool
preferredEnclaveType Тип анклава, запрошенного в базе данных, например по умолчанию или анклавов VBS. 'Default'
'VBS'
readScale Состояние маршрутизации только для чтения. Если включено, соединения с приложением intent установлен на readonly в их строка подключения могут быть маршрутизированы к вторичной реплике только для чтения в том же регионе. Неприменимо к базе данных гипермасштабирования в эластичном пуле. 'Disabled'
'Enabled'
recoverableDatabaseId Идентификатор ресурса восстанавливаемой базы данных, связанной с операцией создания этой базы данных. string
recoveryServicesRecoveryPointId Идентификатор ресурса точки восстановления, связанной с операцией создания этой базы данных. string
requestedBackupStorageRedundancy Тип учетной записи хранения, используемый для хранения резервных копий для этой базы данных. 'Geo'
'GeoZone'
'Local'
'Zone'
restorableDroppedDatabaseId Идентификатор ресурса восстанавливаемой удаленной базы данных, связанной с операцией создания этой базы данных. string
restorePointInTime Указывает точку во времени (ISO8601 формате) исходной базы данных, которая будет восстановлена для создания новой базы данных. string
sampleName Имя примера схемы, применяемой при создании этой базы данных. 'AdventureWorksLT'
'WideWorldImportersFull'
'WideWorldImportersStd'
secondaryType Тип вторичной базы данных, если она является вторичной. Допустимыми значениями являются гео, именованные и резервные. 'Geo'
'Named'
'Standby'
sourceDatabaseDeletionDate Указывает время удаления базы данных. string
sourceDatabaseId Идентификатор ресурса исходной базы данных, связанной с операцией создания этой базы данных. string
sourceResourceId Идентификатор ресурса источника, связанного с операцией создания этой базы данных.

Это свойство поддерживается только для выпуска DataWarehouse и позволяет восстанавливаться в подписках.

Если задан sourceResourceId, sourceDatabaseId, restoreableDatabaseId, restoreableDroppedDatabaseId и sourceDatabaseDeletionDeletionDate, а CreateMode должно быть PointInTimeRestore, Restore или Restore.

Если createMode — PointInTimeRestore, sourceResourceId должен быть идентификатором ресурса существующей базы данных или существующего пула SQL, а также необходимо указать restorePointInTime.

При созданииmode — restore, sourceResourceId должен быть идентификатором ресурса восстанавливаемой удаленной базы данных или восстанавливаемым пулом SQL.

При создании объекта CreateMode is Recover источникResourceId должен быть идентификатором ресурса восстанавливаемой базы данных или пула sql с возможностью восстановления.

Если исходная подписка принадлежит к клиенту, отличному от целевой подписки, заголовок x-ms-authorization-вспомогательный должен содержать маркер проверки подлинности для исходного клиента. Дополнительные сведения о заголовке x-ms-authorization-вспомогательный см. в разделе /Azure/azure-resource-manager/management/authenticate-multi-tenant
string
useFreeLimit Независимо от того, использует ли база данных бесплатные ежемесячные ограничения. Разрешено для одной базы данных в подписке. bool
zoneRedundant Независимо от того, является ли эта база данных избыточной по зонам, то есть реплики этой базы данных будут распространяться по нескольким зонам доступности. bool

DatabasePropertiesKeys

Name Description Value

DatabaseUserIdentity

Name Description Value

Sku

Name Description Value
capacity Емкость конкретного номера SKU. int
family Если служба имеет разные поколения оборудования для одного номера SKU, это можно записать здесь. string
name Имя номера SKU, как правило, буква + код номера, например P3. строка (обязательно)
size Размер конкретного номера SKU string
tier Уровень или выпуск конкретного номера SKU, например "Базовый", "Премиум". string

TrackedResourceTags

Name Description Value

Примеры использования

Примеры Terraform

Простой пример развертывания базы данных MS SQL.

terraform {
  required_providers {
    azapi = {
      source = "Azure/azapi"
    }
    azurerm = {
      source = "hashicorp/azurerm"
    }
  }
}

provider "azurerm" {
  features {
  }
}

provider "azapi" {
  skip_provider_registration = false
}

variable "resource_name" {
  type    = string
  default = "acctest0001"
}

variable "location" {
  type    = string
  default = "westeurope"
}

variable "administrator_login_password" {
  type        = string
  description = "The administrator login password for the SQL server"
  sensitive   = true
}

data "azurerm_client_config" "current" {
}

resource "azapi_resource" "resourceGroup" {
  type     = "Microsoft.Resources/resourceGroups@2020-06-01"
  name     = var.resource_name
  location = var.location
}

resource "azapi_resource" "server" {
  type      = "Microsoft.Sql/servers@2021-02-01-preview"
  parent_id = azapi_resource.resourceGroup.id
  name      = var.resource_name
  location  = var.location
  body = {
    properties = {
      administratorLogin            = "mradministrator"
      administratorLoginPassword    = var.administrator_login_password
      minimalTlsVersion             = "1.2"
      publicNetworkAccess           = "Enabled"
      restrictOutboundNetworkAccess = "Disabled"
      version                       = "12.0"
    }
  }
  schema_validation_enabled = false
  response_export_values    = ["*"]
}

data "azapi_resource_id" "publicMaintenanceConfiguration" {
  type      = "Microsoft.Maintenance/publicMaintenanceConfigurations@2023-04-01"
  parent_id = "/subscriptions/${data.azurerm_client_config.current.subscription_id}"
  name      = "SQL_Default"
}

resource "azapi_resource" "database" {
  type      = "Microsoft.Sql/servers/databases@2021-02-01-preview"
  parent_id = azapi_resource.server.id
  name      = var.resource_name
  location  = var.location
  body = {
    properties = {
      autoPauseDelay                   = 0
      createMode                       = "Default"
      elasticPoolId                    = ""
      highAvailabilityReplicaCount     = 0
      isLedgerOn                       = false
      licenseType                      = "LicenseIncluded"
      maintenanceConfigurationId       = data.azapi_resource_id.publicMaintenanceConfiguration.id
      minCapacity                      = 0
      readScale                        = "Disabled"
      requestedBackupStorageRedundancy = "Geo"
      zoneRedundant                    = false
    }
  }
  schema_validation_enabled = false
  response_export_values    = ["*"]
}

Простой пример развертывания базы данных MS SQL.

terraform {
  required_providers {
    azapi = {
      source = "Azure/azapi"
    }
    azurerm = {
      source = "hashicorp/azurerm"
    }
  }
}

provider "azurerm" {
  features {
  }
}

provider "azapi" {
  skip_provider_registration = false
}

variable "resource_name" {
  type    = string
  default = "acctest0001"
}

variable "location" {
  type    = string
  default = "westeurope"
}

variable "administrator_login_password" {
  type        = string
  description = "The administrator login password for the SQL server"
  sensitive   = true
}

data "azurerm_client_config" "current" {
}

resource "azapi_resource" "resourceGroup" {
  type     = "Microsoft.Resources/resourceGroups@2020-06-01"
  name     = var.resource_name
  location = var.location
}

resource "azapi_resource" "server" {
  type      = "Microsoft.Sql/servers@2021-02-01-preview"
  parent_id = azapi_resource.resourceGroup.id
  name      = var.resource_name
  location  = var.location
  body = {
    properties = {
      administratorLogin            = "mradministrator"
      administratorLoginPassword    = var.administrator_login_password
      minimalTlsVersion             = "1.2"
      publicNetworkAccess           = "Enabled"
      restrictOutboundNetworkAccess = "Disabled"
      version                       = "12.0"
    }
  }
  schema_validation_enabled = false
  response_export_values    = ["*"]
}

data "azapi_resource_id" "publicMaintenanceConfiguration" {
  type      = "Microsoft.Maintenance/publicMaintenanceConfigurations@2023-04-01"
  parent_id = "/subscriptions/${data.azurerm_client_config.current.subscription_id}"
  name      = "SQL_Default"
}

resource "azapi_resource" "database" {
  type      = "Microsoft.Sql/servers/databases@2021-02-01-preview"
  parent_id = azapi_resource.server.id
  name      = var.resource_name
  location  = var.location
  body = {
    properties = {
      autoPauseDelay                   = 0
      createMode                       = "Default"
      elasticPoolId                    = ""
      highAvailabilityReplicaCount     = 0
      isLedgerOn                       = false
      licenseType                      = "LicenseIncluded"
      maintenanceConfigurationId       = data.azapi_resource_id.publicMaintenanceConfiguration.id
      minCapacity                      = 0
      readScale                        = "Disabled"
      requestedBackupStorageRedundancy = "Geo"
      zoneRedundant                    = false
    }
  }
  schema_validation_enabled = false
  response_export_values    = ["*"]
}