Compartilhar via


Microsoft. Servidores/bancos de dados SQL 2017-10-01-preview

Definição de recurso Bicep

O tipo de recurso servidores/bancos de dados pode ser implantado com operações direcionadas:

Para obter uma lista de propriedades alteradas em cada versão da API, consulte de log de alterações.

Formato de recurso

Para criar uma Microsoft. Recurso SQL/servidores/bancos de dados, adicione o seguinte Bicep ao seu modelo.

resource symbolicname 'Microsoft.Sql/servers/databases@2017-10-01-preview' = {
  parent: resourceSymbolicName
  location: 'string'
  name: 'string'
  properties: {
    autoPauseDelay: int
    catalogCollation: 'string'
    collation: 'string'
    createMode: 'string'
    elasticPoolId: 'string'
    licenseType: 'string'
    longTermRetentionBackupResourceId: 'string'
    maxSizeBytes: int
    minCapacity: int
    readReplicaCount: int
    readScale: 'string'
    recoverableDatabaseId: 'string'
    recoveryServicesRecoveryPointId: 'string'
    restorableDroppedDatabaseId: 'string'
    restorePointInTime: 'string'
    sampleName: 'string'
    sourceDatabaseDeletionDate: 'string'
    sourceDatabaseId: 'string'
    zoneRedundant: bool
  }
  sku: {
    capacity: int
    family: 'string'
    name: 'string'
    size: 'string'
    tier: 'string'
  }
  tags: {
    {customized property}: 'string'
  }
}

Valores da propriedade

Microsoft. SQL/servidores/bancos de dados

Name Description Value
local Local do recurso. cadeia de caracteres (obrigatório)
name O nome do recurso cadeia de caracteres (obrigatório)
pai No Bicep, você pode especificar o recurso pai para um recurso filho. Você só precisa adicionar essa propriedade quando o recurso filho é declarado fora do recurso pai.

Para obter mais informações, consulte recurso filho fora do recurso pai.
Nome simbólico para recurso do tipo: servidores
properties Propriedades do recurso. DatabaseProperties
sku A SKU do banco de dados.

A lista de SKUs pode variar de acordo com a região e a oferta de suporte. Para determinar os SKUs (incluindo o nome, tier/edição, família e capacidade) disponíveis para sua assinatura em uma região Azure, use a API REST Capabilities_ListByLocation ou um dos seguintes comandos:

azurecli<br />az sql db list-editions -l &lt;location&gt; -o table<br />````<br /><br />Casca de energia
Get-AzSqlServerServiceObjective -Location <local>
````
Sku
tags Etiquetas de recursos Dicionário de nomes e valores de tags. Consulte Marcas em modelos

DatabaseProperties

Name Description Value
autoPauseDelay Tempo em minutos após o qual o banco de dados é pausado automaticamente. Um valor de -1 significa que a pausa automática está desabilitada int
catalogCollation Ordenação do catálogo de metadados. 'DATABASE_DEFAULT'
'SQL_Latin1_General_CP1_CI_AS'
agrupamento A ordenação do banco de dados. cadeia
createMode Especifica o modo de criação de banco de dados.

Padrão: criação regular de banco de dados.

Cópia: cria um banco de dados como uma cópia de um banco de dados existente. sourceDatabaseId deve ser especificado como a ID do recurso do banco de dados de origem.

Secundário: cria um banco de dados como uma réplica secundária de um banco de dados existente. sourceDatabaseId deve ser especificado como a ID do recurso do banco de dados primário existente.

PointInTimeRestore: cria um banco de dados restaurando um backup pontual de um banco de dados existente. sourceDatabaseId deve ser especificado como a ID do recurso do banco de dados existente e restorePointInTime deve ser especificado.

Recuperação: cria um banco de dados restaurando um backup replicado geograficamente. sourceDatabaseId deve ser especificado como a ID do recurso de banco de dados recuperável para restaurar.

Restauração: cria um banco de dados restaurando um backup de um banco de dados excluído. sourceDatabaseId deve ser especificado. Se sourceDatabaseId for a ID de recurso original do banco de dados, sourceDatabaseDeletionDate deverá ser especificado. Caso contrário, sourceDatabaseId deve ser a ID do recurso de banco de dados descartado restaurável e sourceDatabaseDeletionDate será ignorado. restorePointInTime também pode ser especificado para restaurar de um ponto anterior no tempo.

RestoreLongTermRetentionBackup: cria um banco de dados restaurando de um cofre de retenção de longo prazo. recoveryServicesRecoveryPointResourceId deve ser especificado como a ID do recurso do ponto de recuperação.

Não há suporte para Cópia, Secundária e RestoreLongTermRetentionBackup para a edição DataWarehouse.
'Copy'
'Default'
'OnlineSecondary'
'PointInTimeRestore'
'Recovery'
'Restore'
'RestoreExternalBackup'
'RestoreExternalBackupSecondary'
'RestoreLongTermRetentionBackup'
'Secondary'
elasticPoolId O identificador de recurso do pool elástico que contém esse banco de dados. cadeia
licenseType O tipo de licença a ser aplicado a esse banco de dados. LicenseIncluded se você precisar de licença, ou BasePrice se tiver licença e for elegível para a Benefício Híbrido do Azure. 'BasePrice'
'LicenseIncluded'
longTermRetentionBackupResourceId O identificador de recurso do backup de retenção de longo prazo associado à operação de criação desse banco de dados. cadeia
maxSizeBytes O tamanho máximo do banco de dados expresso em bytes. int
minCapacity Capacidade mínima que o banco de dados sempre alocará, se não estiver em pausa int
readReplicaCount O número de réplicas secundárias somente leitura associadas ao banco de dados para o qual as conexões de intenção de aplicativo somente leitura podem ser roteada. Essa propriedade só é configurável para bancos de dados da edição Hyperscale. int
readScale Se ativadas, conexões que tenham a intenção de aplicação definida para somente leitura em sua cadeia de conexão podem ser roteadas para uma réplica secundária somente leitura. Essa propriedade só é configurável para bancos de dados Premium e Comercialmente Críticos. 'Disabled'
'Enabled'
recoverableDatabaseId O identificador de recurso do banco de dados recuperável associado à operação de criação desse banco de dados. cadeia
recoveryServicesRecoveryPointId O identificador de recurso do ponto de recuperação associado à operação de criação desse banco de dados. cadeia
restorableDroppedDatabaseId O identificador de recurso do banco de dados restaurador descartado associado à operação de criação desse banco de dados. cadeia
restorePointInTime Especifica o ponto no tempo (formato ISO8601) do banco de dados de origem que será restaurado para criar o novo banco de dados. cadeia
sampleName O nome do esquema de exemplo a ser aplicado ao criar esse banco de dados. 'AdventureWorksLT'
'WideWorldImportersFull'
'WideWorldImportersStd'
sourceDatabaseDeletionDate Especifica a hora em que o banco de dados foi excluído. cadeia
sourceDatabaseId O identificador de recurso do banco de dados de origem associado à operação de criação deste banco de dados. cadeia
zoneRedundant Se esse banco de dados é ou não redundante por zona, o que significa que as réplicas desse banco de dados serão distribuídas entre várias zonas de disponibilidade. bool

Sku

Name Description Value
capacidade Capacidade da SKU específica. int
family Se o serviço tiver diferentes gerações de hardware, para a mesma SKU, isso poderá ser capturado aqui. cadeia
name O nome da SKU, normalmente, uma letra + código de número, por exemplo, P3. cadeia de caracteres (obrigatório)
size Tamanho da SKU específica cadeia
nível A camada ou edição da SKU específica, por exemplo, Basic, Premium. cadeia

TrackedResourceTags

Name Description Value

Exemplos de uso

Amostras de Bicep

Um exemplo básico de implantação do Banco de Dados 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

Os seguintes módulos Azure Verificados podem ser usados para implantar esse tipo de recurso.

Módulo Description
Banco de Dados SQL do Azure AVM Resource Module para Banco de Dados SQL do Azure

Exemplos de Início Rápido do Azure

Os seguintes modelos Azure Quickstart contêm Bicep exemplos para implantar esse tipo de recurso.

Arquivo Bicep Description
Azure SQL Server com Auditoria escrita para Log Analytics Este modelo permite que você implante um servidor SQL do Azure com Auditoria ativada para gravar logs de auditoria no Log Analytics (espaço de trabalho OMS)
Criar um SQL Server e Banco de Dados Esse modelo permite que você crie o Banco de Dados SQL e o Servidor.
Pool SQL dedicado com criptografia transparente Cria um SQL Server e um pool SQL dedicado (anteriormente SQL DW) com Transparent Data Encryption.
Implante a Análise Esportiva na Arquitetura Azure Cria uma conta de armazenamento Azure com ADLS Gen 2 ativado, uma instância do Azure Data Factory com serviços vinculados para a conta de armazenamento (e o Banco de Dados SQL do Azure se implantado) e uma instância do Azure Databricks. A identidade do AAD para o usuário que implanta o modelo e a identidade gerenciada para a instância do ADF receberá a função colaborador de dados de blob de armazenamento na conta de armazenamento. Também há opções para implantar uma instância do Azure Key Vault, um Banco de Dados SQL do Azure e um Azure Event Hub (para casos de uso em streaming). Quando um Azure Key Vault é implantado, a identidade gerenciada pela fábrica de dados e a identidade AAD do usuário que está implantando o template receberão o papel de Usuário Key Vault Secrets.
Endpoint privado Este modelo mostra como criar um endpoint privado apontando para o Azure SQL Server
Provisione um Aplicativo Web com um Banco de Dados SQL Esse modelo provisiona um aplicativo Web, um Banco de Dados SQL, configurações de Dimensionamento Automático, regras de alerta e Insights do Aplicativo. Ele configura uma cadeia de conexão no aplicativo web para o banco de dados.
Sonarqube Docker Web App no Linux com SQL do Azure Este modelo implanta o Sonarqube em um contêiner Linux de aplicação web do Serviço de Aplicativo do Azure, usando a imagem oficial do Sonarqube e com suporte de um Azure SQL Server.
Web App com Identidade Gerenciada, SQL Server e ΑΙ Exemplo simples para implantar infraestrutura Azure para app + dados + identidade gerenciada + monitoramento

Definição de recurso de modelo do ARM

O tipo de recurso servidores/bancos de dados pode ser implantado com operações direcionadas:

Para obter uma lista de propriedades alteradas em cada versão da API, consulte de log de alterações.

Formato de recurso

Para criar uma Microsoft. Recurso SQL/servidores/bancos de dados, adicione o seguinte JSON ao seu modelo.

{
  "type": "Microsoft.Sql/servers/databases",
  "apiVersion": "2017-10-01-preview",
  "name": "string",
  "location": "string",
  "properties": {
    "autoPauseDelay": "int",
    "catalogCollation": "string",
    "collation": "string",
    "createMode": "string",
    "elasticPoolId": "string",
    "licenseType": "string",
    "longTermRetentionBackupResourceId": "string",
    "maxSizeBytes": "int",
    "minCapacity": "int",
    "readReplicaCount": "int",
    "readScale": "string",
    "recoverableDatabaseId": "string",
    "recoveryServicesRecoveryPointId": "string",
    "restorableDroppedDatabaseId": "string",
    "restorePointInTime": "string",
    "sampleName": "string",
    "sourceDatabaseDeletionDate": "string",
    "sourceDatabaseId": "string",
    "zoneRedundant": "bool"
  },
  "sku": {
    "capacity": "int",
    "family": "string",
    "name": "string",
    "size": "string",
    "tier": "string"
  },
  "tags": {
    "{customized property}": "string"
  }
}

Valores da propriedade

Microsoft. SQL/servidores/bancos de dados

Name Description Value
apiVersion A versão da API '2017-10-01-preview'
local Local do recurso. cadeia de caracteres (obrigatório)
name O nome do recurso cadeia de caracteres (obrigatório)
properties Propriedades do recurso. DatabaseProperties
sku A SKU do banco de dados.

A lista de SKUs pode variar de acordo com a região e a oferta de suporte. Para determinar os SKUs (incluindo o nome, tier/edição, família e capacidade) disponíveis para sua assinatura em uma região Azure, use a API REST Capabilities_ListByLocation ou um dos seguintes comandos:

azurecli<br />az sql db list-editions -l &lt;location&gt; -o table<br />````<br /><br />Casca de energia
Get-AzSqlServerServiceObjective -Location <local>
````
Sku
tags Etiquetas de recursos Dicionário de nomes e valores de tags. Consulte Marcas em modelos
tipo O tipo de recurso 'Microsoft. Sql/servidores/bancos de dados'

DatabaseProperties

Name Description Value
autoPauseDelay Tempo em minutos após o qual o banco de dados é pausado automaticamente. Um valor de -1 significa que a pausa automática está desabilitada int
catalogCollation Ordenação do catálogo de metadados. 'DATABASE_DEFAULT'
'SQL_Latin1_General_CP1_CI_AS'
agrupamento A ordenação do banco de dados. cadeia
createMode Especifica o modo de criação de banco de dados.

Padrão: criação regular de banco de dados.

Cópia: cria um banco de dados como uma cópia de um banco de dados existente. sourceDatabaseId deve ser especificado como a ID do recurso do banco de dados de origem.

Secundário: cria um banco de dados como uma réplica secundária de um banco de dados existente. sourceDatabaseId deve ser especificado como a ID do recurso do banco de dados primário existente.

PointInTimeRestore: cria um banco de dados restaurando um backup pontual de um banco de dados existente. sourceDatabaseId deve ser especificado como a ID do recurso do banco de dados existente e restorePointInTime deve ser especificado.

Recuperação: cria um banco de dados restaurando um backup replicado geograficamente. sourceDatabaseId deve ser especificado como a ID do recurso de banco de dados recuperável para restaurar.

Restauração: cria um banco de dados restaurando um backup de um banco de dados excluído. sourceDatabaseId deve ser especificado. Se sourceDatabaseId for a ID de recurso original do banco de dados, sourceDatabaseDeletionDate deverá ser especificado. Caso contrário, sourceDatabaseId deve ser a ID do recurso de banco de dados descartado restaurável e sourceDatabaseDeletionDate será ignorado. restorePointInTime também pode ser especificado para restaurar de um ponto anterior no tempo.

RestoreLongTermRetentionBackup: cria um banco de dados restaurando de um cofre de retenção de longo prazo. recoveryServicesRecoveryPointResourceId deve ser especificado como a ID do recurso do ponto de recuperação.

Não há suporte para Cópia, Secundária e RestoreLongTermRetentionBackup para a edição DataWarehouse.
'Copy'
'Default'
'OnlineSecondary'
'PointInTimeRestore'
'Recovery'
'Restore'
'RestoreExternalBackup'
'RestoreExternalBackupSecondary'
'RestoreLongTermRetentionBackup'
'Secondary'
elasticPoolId O identificador de recurso do pool elástico que contém esse banco de dados. cadeia
licenseType O tipo de licença a ser aplicado a esse banco de dados. LicenseIncluded se você precisar de licença, ou BasePrice se tiver licença e for elegível para a Benefício Híbrido do Azure. 'BasePrice'
'LicenseIncluded'
longTermRetentionBackupResourceId O identificador de recurso do backup de retenção de longo prazo associado à operação de criação desse banco de dados. cadeia
maxSizeBytes O tamanho máximo do banco de dados expresso em bytes. int
minCapacity Capacidade mínima que o banco de dados sempre alocará, se não estiver em pausa int
readReplicaCount O número de réplicas secundárias somente leitura associadas ao banco de dados para o qual as conexões de intenção de aplicativo somente leitura podem ser roteada. Essa propriedade só é configurável para bancos de dados da edição Hyperscale. int
readScale Se ativadas, conexões que tenham a intenção de aplicação definida para somente leitura em sua cadeia de conexão podem ser roteadas para uma réplica secundária somente leitura. Essa propriedade só é configurável para bancos de dados Premium e Comercialmente Críticos. 'Disabled'
'Enabled'
recoverableDatabaseId O identificador de recurso do banco de dados recuperável associado à operação de criação desse banco de dados. cadeia
recoveryServicesRecoveryPointId O identificador de recurso do ponto de recuperação associado à operação de criação desse banco de dados. cadeia
restorableDroppedDatabaseId O identificador de recurso do banco de dados restaurador descartado associado à operação de criação desse banco de dados. cadeia
restorePointInTime Especifica o ponto no tempo (formato ISO8601) do banco de dados de origem que será restaurado para criar o novo banco de dados. cadeia
sampleName O nome do esquema de exemplo a ser aplicado ao criar esse banco de dados. 'AdventureWorksLT'
'WideWorldImportersFull'
'WideWorldImportersStd'
sourceDatabaseDeletionDate Especifica a hora em que o banco de dados foi excluído. cadeia
sourceDatabaseId O identificador de recurso do banco de dados de origem associado à operação de criação deste banco de dados. cadeia
zoneRedundant Se esse banco de dados é ou não redundante por zona, o que significa que as réplicas desse banco de dados serão distribuídas entre várias zonas de disponibilidade. bool

Sku

Name Description Value
capacidade Capacidade da SKU específica. int
family Se o serviço tiver diferentes gerações de hardware, para a mesma SKU, isso poderá ser capturado aqui. cadeia
name O nome da SKU, normalmente, uma letra + código de número, por exemplo, P3. cadeia de caracteres (obrigatório)
size Tamanho da SKU específica cadeia
nível A camada ou edição da SKU específica, por exemplo, Basic, Premium. cadeia

TrackedResourceTags

Name Description Value

Exemplos de uso

Modelos de Início Rápido do Azure

Os seguintes modelos Azure Quickstart implantam esse tipo de recurso.

Template Description
Azure SQL Server com Auditoria escrita para Log Analytics

Implantar para Azure
Este modelo permite que você implante um servidor SQL do Azure com Auditoria ativada para gravar logs de auditoria no Log Analytics (espaço de trabalho OMS)
Criar um SQL Server e Banco de Dados

Implantar para Azure
Esse modelo permite que você crie o Banco de Dados SQL e o Servidor.
Pool SQL dedicado com criptografia transparente

Implantar para Azure
Cria um SQL Server e um pool SQL dedicado (anteriormente SQL DW) com Transparent Data Encryption.
Implante um novo SQL Elastic Pool

Implantar para Azure
Este modelo permite que você implante um novo SQL Elastic Pool com seu novo SQL Server associado e novos bancos de dados SQL para atribuir a ele.
Implante a Análise Esportiva na Arquitetura Azure

Implantar para Azure
Cria uma conta de armazenamento Azure com ADLS Gen 2 ativado, uma instância do Azure Data Factory com serviços vinculados para a conta de armazenamento (e o Banco de Dados SQL do Azure se implantado) e uma instância do Azure Databricks. A identidade do AAD para o usuário que implanta o modelo e a identidade gerenciada para a instância do ADF receberá a função colaborador de dados de blob de armazenamento na conta de armazenamento. Também há opções para implantar uma instância do Azure Key Vault, um Banco de Dados SQL do Azure e um Azure Event Hub (para casos de uso em streaming). Quando um Azure Key Vault é implantado, a identidade gerenciada pela fábrica de dados e a identidade AAD do usuário que está implantando o template receberão o papel de Usuário Key Vault Secrets.
HDInsight com Ambari personalizado + banco de dados Metastore Hive em VNET

Implantar para Azure
Esse modelo permite que você crie um cluster HDInsight em uma rede virtual existente com um novo BD SQL que serve como um banco de dados Ambari personalizado e Metastore do Hive. Você deve ter um SQL Sever existente, uma conta de armazenamento e uma VNET.
Endpoint privado

Implantar para Azure
Este modelo mostra como criar um endpoint privado apontando para o Azure SQL Server
Provisione um Aplicativo Web com um Banco de Dados SQL

Implantar para Azure
Esse modelo provisiona um aplicativo Web, um Banco de Dados SQL, configurações de Dimensionamento Automático, regras de alerta e Insights do Aplicativo. Ele configura uma cadeia de conexão no aplicativo web para o banco de dados.
Área de Trabalho Remota Serviços com Alta Disponibilidade

Implantar para Azure
Este código de exemplo do Modelo ARM irá implantar um laboratório Área de Trabalho Remota Services 2019 Session Collection com alta disponibilidade. O objetivo é implantar uma solução totalmente redundante e altamente disponível para Área de Trabalho Remota Services, usando o Windows Server 2019.
Sonarqube Docker Web App no Linux com SQL do Azure

Implantar para Azure
Este modelo implanta o Sonarqube em um contêiner Linux de aplicação web do Serviço de Aplicativo do Azure, usando a imagem oficial do Sonarqube e com suporte de um Azure SQL Server.
Web App com Identidade Gerenciada, SQL Server e ΑΙ

Implantar para Azure
Exemplo simples para implantar infraestrutura Azure para app + dados + identidade gerenciada + monitoramento
WebApp consumindo um SQL do Azure Private Endpoint

Implantar para Azure
Este modelo mostra como criar um aplicativo Web que consume um endpoint privado apontando para o Azure SQL Server

Definição de recurso do Terraform (provedor de AzAPI)

O tipo de recurso servidores/bancos de dados pode ser implantado com operações direcionadas:

  • Grupos de recursos

Para obter uma lista de propriedades alteradas em cada versão da API, consulte de log de alterações.

Formato de recurso

Para criar uma Microsoft. Recurso SQL/servidores/bancos de dados, adicione o seguinte Terraform ao seu modelo.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.Sql/servers/databases@2017-10-01-preview"
  name = "string"
  parent_id = "string"
  location = "string"
  tags = {
    {customized property} = "string"
  }
  body = {
    properties = {
      autoPauseDelay = int
      catalogCollation = "string"
      collation = "string"
      createMode = "string"
      elasticPoolId = "string"
      licenseType = "string"
      longTermRetentionBackupResourceId = "string"
      maxSizeBytes = int
      minCapacity = int
      readReplicaCount = int
      readScale = "string"
      recoverableDatabaseId = "string"
      recoveryServicesRecoveryPointId = "string"
      restorableDroppedDatabaseId = "string"
      restorePointInTime = "string"
      sampleName = "string"
      sourceDatabaseDeletionDate = "string"
      sourceDatabaseId = "string"
      zoneRedundant = bool
    }
    sku = {
      capacity = int
      family = "string"
      name = "string"
      size = "string"
      tier = "string"
    }
  }
}

Valores da propriedade

Microsoft. SQL/servidores/bancos de dados

Name Description Value
local Local do recurso. cadeia de caracteres (obrigatório)
name O nome do recurso cadeia de caracteres (obrigatório)
parent_id A ID do recurso que é o pai desse recurso. ID para recurso do tipo: servidores
properties Propriedades do recurso. DatabaseProperties
sku A SKU do banco de dados.

A lista de SKUs pode variar de acordo com a região e a oferta de suporte. Para determinar os SKUs (incluindo o nome, tier/edição, família e capacidade) disponíveis para sua assinatura em uma região Azure, use a API REST Capabilities_ListByLocation ou um dos seguintes comandos:

azurecli<br />az sql db list-editions -l &lt;location&gt; -o table<br />````<br /><br />Casca de energia
Get-AzSqlServerServiceObjective -Location <local>
````
Sku
tags Etiquetas de recursos Dicionário de nomes e valores de tags.
tipo O tipo de recurso "Microsoft. Sql/servidores/databases@2017-10-01-prévia"

DatabaseProperties

Name Description Value
autoPauseDelay Tempo em minutos após o qual o banco de dados é pausado automaticamente. Um valor de -1 significa que a pausa automática está desabilitada int
catalogCollation Ordenação do catálogo de metadados. 'DATABASE_DEFAULT'
'SQL_Latin1_General_CP1_CI_AS'
agrupamento A ordenação do banco de dados. cadeia
createMode Especifica o modo de criação de banco de dados.

Padrão: criação regular de banco de dados.

Cópia: cria um banco de dados como uma cópia de um banco de dados existente. sourceDatabaseId deve ser especificado como a ID do recurso do banco de dados de origem.

Secundário: cria um banco de dados como uma réplica secundária de um banco de dados existente. sourceDatabaseId deve ser especificado como a ID do recurso do banco de dados primário existente.

PointInTimeRestore: cria um banco de dados restaurando um backup pontual de um banco de dados existente. sourceDatabaseId deve ser especificado como a ID do recurso do banco de dados existente e restorePointInTime deve ser especificado.

Recuperação: cria um banco de dados restaurando um backup replicado geograficamente. sourceDatabaseId deve ser especificado como a ID do recurso de banco de dados recuperável para restaurar.

Restauração: cria um banco de dados restaurando um backup de um banco de dados excluído. sourceDatabaseId deve ser especificado. Se sourceDatabaseId for a ID de recurso original do banco de dados, sourceDatabaseDeletionDate deverá ser especificado. Caso contrário, sourceDatabaseId deve ser a ID do recurso de banco de dados descartado restaurável e sourceDatabaseDeletionDate será ignorado. restorePointInTime também pode ser especificado para restaurar de um ponto anterior no tempo.

RestoreLongTermRetentionBackup: cria um banco de dados restaurando de um cofre de retenção de longo prazo. recoveryServicesRecoveryPointResourceId deve ser especificado como a ID do recurso do ponto de recuperação.

Não há suporte para Cópia, Secundária e RestoreLongTermRetentionBackup para a edição DataWarehouse.
'Copy'
'Default'
'OnlineSecondary'
'PointInTimeRestore'
'Recovery'
'Restore'
'RestoreExternalBackup'
'RestoreExternalBackupSecondary'
'RestoreLongTermRetentionBackup'
'Secondary'
elasticPoolId O identificador de recurso do pool elástico que contém esse banco de dados. cadeia
licenseType O tipo de licença a ser aplicado a esse banco de dados. LicenseIncluded se você precisar de licença, ou BasePrice se tiver licença e for elegível para a Benefício Híbrido do Azure. 'BasePrice'
'LicenseIncluded'
longTermRetentionBackupResourceId O identificador de recurso do backup de retenção de longo prazo associado à operação de criação desse banco de dados. cadeia
maxSizeBytes O tamanho máximo do banco de dados expresso em bytes. int
minCapacity Capacidade mínima que o banco de dados sempre alocará, se não estiver em pausa int
readReplicaCount O número de réplicas secundárias somente leitura associadas ao banco de dados para o qual as conexões de intenção de aplicativo somente leitura podem ser roteada. Essa propriedade só é configurável para bancos de dados da edição Hyperscale. int
readScale Se ativadas, conexões que tenham a intenção de aplicação definida para somente leitura em sua cadeia de conexão podem ser roteadas para uma réplica secundária somente leitura. Essa propriedade só é configurável para bancos de dados Premium e Comercialmente Críticos. 'Disabled'
'Enabled'
recoverableDatabaseId O identificador de recurso do banco de dados recuperável associado à operação de criação desse banco de dados. cadeia
recoveryServicesRecoveryPointId O identificador de recurso do ponto de recuperação associado à operação de criação desse banco de dados. cadeia
restorableDroppedDatabaseId O identificador de recurso do banco de dados restaurador descartado associado à operação de criação desse banco de dados. cadeia
restorePointInTime Especifica o ponto no tempo (formato ISO8601) do banco de dados de origem que será restaurado para criar o novo banco de dados. cadeia
sampleName O nome do esquema de exemplo a ser aplicado ao criar esse banco de dados. 'AdventureWorksLT'
'WideWorldImportersFull'
'WideWorldImportersStd'
sourceDatabaseDeletionDate Especifica a hora em que o banco de dados foi excluído. cadeia
sourceDatabaseId O identificador de recurso do banco de dados de origem associado à operação de criação deste banco de dados. cadeia
zoneRedundant Se esse banco de dados é ou não redundante por zona, o que significa que as réplicas desse banco de dados serão distribuídas entre várias zonas de disponibilidade. bool

Sku

Name Description Value
capacidade Capacidade da SKU específica. int
family Se o serviço tiver diferentes gerações de hardware, para a mesma SKU, isso poderá ser capturado aqui. cadeia
name O nome da SKU, normalmente, uma letra + código de número, por exemplo, P3. cadeia de caracteres (obrigatório)
size Tamanho da SKU específica cadeia
nível A camada ou edição da SKU específica, por exemplo, Basic, Premium. cadeia

TrackedResourceTags

Name Description Value

Exemplos de uso

Exemplos do Terraform

Um exemplo básico de implantação do Banco de Dados 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    = ["*"]
}

Um exemplo básico de implantação do Banco de Dados 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    = ["*"]
}