Microsoft. SQL servers/databases 2014-04-01

Bicep-resourcedefinitie

Het resourcetype servers/databases kan worden geïmplementeerd met bewerkingen die zijn gericht op:

Zie logboek wijzigenvoor een lijst met gewijzigde eigenschappen in elke API-versie.

Resource-indeling

Om een Microsoft te creëren. SQL/servers/databases-resource, voeg de volgende Bicep toe aan je sjabloon.

resource symbolicname 'Microsoft.Sql/servers/databases@2014-04-01' = {
  parent: resourceSymbolicName
  location: 'string'
  name: 'string'
  properties: {
    collation: 'string'
    createMode: 'string'
    edition: 'string'
    elasticPoolName: 'string'
    maxSizeBytes: 'string'
    readScale: 'string'
    recoveryServicesRecoveryPointResourceId: 'string'
    requestedServiceObjectiveId: 'string'
    requestedServiceObjectiveName: 'string'
    restorePointInTime: 'string'
    sampleName: 'string'
    sourceDatabaseDeletionDate: 'string'
    sourceDatabaseId: 'string'
    zoneRedundant: bool
  }
  tags: {
    {customized property}: 'string'
  }
}

Eigenschapswaarden

Microsoft. SQL/servers/databases

Name Description Value
location Resourcelocatie. tekenreeks (vereist)
name De resourcenaam tekenreeks (vereist)
parent In Bicep kun je de ouderresource voor een kindresource specificeren. U hoeft deze eigenschap alleen toe te voegen wanneer de onderliggende resource buiten de bovenliggende resource wordt gedeclareerd.

Zie onderliggende resource buiten de bovenliggende resourcevoor meer informatie.
Symbolische naam voor resource van het type: servers
properties De eigenschappen die de resource vertegenwoordigen. DatabaseProperties
tags Resourcetags Woordenlijst met tagnamen en -waarden. Zie Tags in sjablonen

DatabaseProperties

| Naam | Beschrijving | Waarde | | ---- | ----------- | ------------ | | sortering | De sortering van de database. Als createMode niet standaard is, wordt deze waarde genegeerd. | tekenreeks | | createMode | Hiermee geeft u de modus voor het maken van de database op.

Standaard: het maken van een gewone database.

Kopiëren: maakt een database als een kopie van een bestaande database. sourceDatabaseId moet worden opgegeven als de resource-id van de brondatabase.

OnlineSecondary/NonReadableSecondary: hiermee maakt u een database als een secundaire replica van een bestaande database (leesbaar of niet-leesbaar). sourceDatabaseId moet worden opgegeven als de resource-id van de bestaande primaire database.

PointInTimeRestore: Hiermee maakt u een database door een back-up naar een bepaald tijdstip van een bestaande database te herstellen. sourceDatabaseId moet worden opgegeven als de resource-id van de bestaande database en restorePointInTime moet worden opgegeven.

Herstel: Hiermee maakt u een database door een geo-gerepliceerde back-up te herstellen. sourceDatabaseId moet worden opgegeven als de herstelbare databaseresource-id om te herstellen.

Herstellen: Hiermee maakt u een database door een back-up van een verwijderde database te herstellen. sourceDatabaseId moet worden opgegeven. Als sourceDatabaseId de oorspronkelijke resource-id van de database is, moet sourceDatabaseDeletionDate worden opgegeven. Anders moet sourceDatabaseId de restorable verwijderde databaseresource-id zijn en sourceDatabaseDeletionDate wordt genegeerd. restorePointInTime kan ook worden opgegeven om te herstellen vanaf een eerder tijdstip.

RestoreLongTermRetentionBackup: Hiermee maakt u een database door een langetermijnretentiekluis te herstellen. recoveryServicesRecoveryPointResourceId moet worden opgegeven als de resource-id van het herstelpunt.

Kopiëren, NonReadableSecondary, OnlineSecondary en RestoreLongTermRetentionBackup worden niet ondersteund voor datawarehouse-editie. | 'Kopiëren'
'Default'
'NonReadableSecondary'
'OnlineSecondary'
'PointInTimeRestore'
'Recovery'
'Restore'
'RestoreLongTermRetentionBackup' | | editie | De editie van de database. De opsomming DatabaseEditions bevat alle geldige edities. Als createMode NonReadableSecondary of OnlineSecondary is, wordt deze waarde genegeerd.

De lijst met SKU's kan variëren per regio en ondersteuningsaanbieding. Om de SKU's (inclusief de SKU-naam, niveau/editie, familie en capaciteit) te bepalen die beschikbaar zijn voor je abonnement in een Azure regio, gebruik je de Capabilities_ListByLocation REST API of een van de volgende commando's:

azurecli<br />az sql db list-editions -l &lt;location&gt; -o table<br />````<br /><br />PowerShell
<Get-AzSqlServerServiceObjective -Location locatie>
| 'Basic'<br />'Business'<br />'BusinessCritical'<br />'DataWarehouse'<br />'Free'<br />'GeneralPurpose'<br />'Hyperscale'<br />'Premium'<br />'PremiumRS'<br />'Standard'<br />'Stretch'<br />'System'<br />'System2'<br />'Web' | | elasticPoolName | The name of the elastic pool the database is in. If elasticPoolName and requestedServiceObjectiveName are both updated, the value of requestedServiceObjectiveName is ignored. Not supported for DataWarehouse edition. | string | | maxSizeBytes | The max size of the database expressed in bytes. If createMode is not Default, this value is ignored. To see possible values, query the capabilities API (/subscriptions/{subscriptionId}/providers/Microsoft.Sql/locations/{locationID}/capabilities) referred to by operationId: "Capabilities_ListByLocation." | string | | readScale | Conditional. If the database is a geo-secondary, readScale indicates whether read-only connections are allowed to this database or not. Not supported for DataWarehouse edition. | 'Disabled'<br />'Enabled' | | recoveryServicesRecoveryPointResourceId | Conditional. If createMode is RestoreLongTermRetentionBackup, then this value is required. Specifies the resource ID of the recovery point to restore from. | string | | requestedServiceObjectiveId | The configured service level objective ID of the database. This is the service level objective that is in the process of being applied to the database. Once successfully updated, it will match the value of currentServiceObjectiveId property. If requestedServiceObjectiveId and requestedServiceObjectiveName are both updated, the value of requestedServiceObjectiveId overrides the value of requestedServiceObjectiveName.<br /><br />The list of SKUs may vary by region and support offer. To determine the service objective ids that are available to your subscription in an Azure region, use the `Capabilities_ListByLocation` REST API. | string <br /><br />Constraints:<br />Min length = 36<br />Max length = 36<br />Pattern = `^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$` | | requestedServiceObjectiveName | The name of the configured service level objective of the database. This is the service level objective that is in the process of being applied to the database. Once successfully updated, it will match the value of serviceLevelObjective property. <br /><br />The list of SKUs may vary by region and support offer. To determine the SKUs (including the SKU name, tier/edition, family, and capacity) that are available to your subscription in an Azure region, use the `Capabilities_ListByLocation` REST API or one of the following commands:<br /><br />```azurecli<br />az sql db list-editions -l &lt;location&gt; -o table<br />

```powershell
<Get-AzSqlServerServiceObjective -Location locatie>
```` | 'Basis'
'DS100'
'DS1000'
'DS1200'
'DS1500'
'DS200'
'DS2000'
'DS300'
'DS400'
'DS500'
'DS600'
'DW100'
'DW1000'
'DW10000c'
'DW1000c'
'DW1200'
'DW1500'
'DW15000c'
'DW1500c'
'DW200'
'DW2000'
'DW2000c'
'DW2500c'
'DW300'
'DW3000'
'DW30000c'
'DW3000c'
'DW400'
'DW500'
'DW5000c'
'DW600'
'DW6000'
'DW6000c'
'DW7500c'
'ElasticPool'
'Free'
'P1'
'P11'
'P15'
'P2'
'P3'
'P4'
'P6'
'PRS1'
'PRS2'
'PRS4'
'PRS6'
'S0'
'S1'
'S12'
'S2'
'S3'
'S4'
'S6'
'S7'
'S9'
'System'
'System0'
'System1'
'System2'
'System2L'
'System3'
'System3L'
'System4'
'System4L' | | restorePointInTime | Voorwaardelijk. Als createMode PointInTimeRestore is, is deze waarde vereist. Als createMode herstellen is, is deze waarde optioneel. Hiermee geeft u het tijdstip (ISO8601-indeling) van de brondatabase op die wordt hersteld om de nieuwe database te maken. Moet groter dan of gelijk zijn aan de vroegste waardeRestoreDate van de brondatabase. | tekenreeks | | sampleName | Geeft de naam aan van het voorbeeldschema dat moet worden toegepast bij het maken van deze database. Als createMode niet standaard is, wordt deze waarde genegeerd. Niet ondersteund voor DataWarehouse-editie. | 'AdventureWorksLT' | | sourceDatabaseDeletionDate | Voorwaardelijk. Als createMode restore is en sourceDatabaseId de oorspronkelijke resource-id van de verwijderde database is wanneer deze bestaat (in plaats van de huidige verwijderde database-id), is deze waarde vereist. Hiermee geeft u het tijdstip op waarop de database is verwijderd. | tekenreeks | | sourceDatabaseId | Voorwaardelijk. Als createMode Copy, NonReadableSecondary, OnlineSecondary, PointInTimeRestore, Recovery of Restore is, is deze waarde vereist. Hiermee geeft u de resource-id van de brondatabase op. Als createMode NonReadableSecondary of OnlineSecondary is, moet de naam van de brondatabase hetzelfde zijn als de nieuwe database die wordt gemaakt. | tekenreeks | | zoneRedundant | Of deze database nu zone-redundant is, wat betekent dat de replica's van deze database worden verdeeld over meerdere beschikbaarheidszones. | Bool |

TrackedResourceTags

Name Description Value

Gebruiksvoorbeelden

Bicep Monsters

Een eenvoudig voorbeeld van het implementeren van MS SQL Database.

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

De volgende Azure Geverifieerde modules kunnen worden gebruikt om dit resourcetype uit te voeren.

Module Description
Azure SQL Database AVM Resource Module for Azure SQL Database

Azure Quickstart Samples

De volgende Azure Quickstart-sjablonen bevatten Bicep voorbeelden voor het uitrollen van dit resourcetype.

Bicep File Description
Azure SQL Server met Auditing geschreven naar Log Analytics Met deze template kun je een Azure SQL-server met Auditing ingeschakeld uitrollen om auditlogs te schrijven naar Log Analytics (OMS workspace)
Maak een SQL Server en database Met deze sjabloon kunt u SQL Database en Server maken.
Dedicated SQL-pool met transparante encryptie Maakt een SQL Server en een Dedicated SQL pool (voorheen SQL DW) aan met Transparent Data Encryption.
Rol de Sports Analytics uit op Azure architectuur Maakt een Azure-opslagaccount aan met ADLS Gen 2 ingeschakeld, een Azure Data Factory-instantie met gekoppelde diensten voor het opslagaccount (en de Azure SQL Database indien geïmplementeerd), en een Azure Databricks-instantie. De AAD-identiteit voor de gebruiker die de sjabloon implementeert en de beheerde identiteit voor het ADF-exemplaar krijgt de rol Inzender voor opslagblobgegevens in het opslagaccount. Er zijn ook opties om een Azure Key Vault-instantie, een Azure SQL Database en een Azure Event Hub (voor streaming gebruikssituaties) te implementeren. Wanneer een Azure Key Vault wordt geïmplementeerd, krijgen de door de data factory beheerde identiteit en de AAD-identiteit van de gebruiker die de template deployt de rol van Key Vault Secrets Gebruiker toegekend.
Private Endpoint voorbeeld Deze template laat zien hoe je een privé-endpoint aanmaakt dat verwijst naar Azure SQL Server
Provisioneer een webapp met een SQL-database Deze sjabloon richt een web-app, een SQL Database, instellingen voor automatisch schalen, waarschuwingsregels en App Insights in. Het configureert een verbindingsreeks in de webapp voor de database.
Sonarqube Docker Web App op Linux met Azure SQL Deze template deployeert Sonarqube in een Azure App Service webapp Linux-container met behulp van het officiële Sonarqube-image en ondersteund door een Azure SQL Server.
Web App met Managed Identity, SQL Server en ΑΙ Eenvoudig voorbeeld om Azure-infrastructuur te implementeren voor app + data + managed identity + monitoring

Resourcedefinitie van ARM-sjabloon

Het resourcetype servers/databases kan worden geïmplementeerd met bewerkingen die zijn gericht op:

Zie logboek wijzigenvoor een lijst met gewijzigde eigenschappen in elke API-versie.

Resource-indeling

Om een Microsoft te creëren. SQL/servers/databases-resource, voeg de volgende JSON toe aan je template.

{
  "type": "Microsoft.Sql/servers/databases",
  "apiVersion": "2014-04-01",
  "name": "string",
  "location": "string",
  "properties": {
    "collation": "string",
    "createMode": "string",
    "edition": "string",
    "elasticPoolName": "string",
    "maxSizeBytes": "string",
    "readScale": "string",
    "recoveryServicesRecoveryPointResourceId": "string",
    "requestedServiceObjectiveId": "string",
    "requestedServiceObjectiveName": "string",
    "restorePointInTime": "string",
    "sampleName": "string",
    "sourceDatabaseDeletionDate": "string",
    "sourceDatabaseId": "string",
    "zoneRedundant": "bool"
  },
  "tags": {
    "{customized property}": "string"
  }
}

Eigenschapswaarden

Microsoft. SQL/servers/databases

Name Description Value
apiVersion De API-versie '2014-04-01'
location Resourcelocatie. tekenreeks (vereist)
name De resourcenaam tekenreeks (vereist)
properties De eigenschappen die de resource vertegenwoordigen. DatabaseProperties
tags Resourcetags Woordenlijst met tagnamen en -waarden. Zie Tags in sjablonen
type Het brontype 'Microsoft. SQL/servers/databases'

DatabaseProperties

| Naam | Beschrijving | Waarde | | ---- | ----------- | ------------ | | sortering | De sortering van de database. Als createMode niet standaard is, wordt deze waarde genegeerd. | tekenreeks | | createMode | Hiermee geeft u de modus voor het maken van de database op.

Standaard: het maken van een gewone database.

Kopiëren: maakt een database als een kopie van een bestaande database. sourceDatabaseId moet worden opgegeven als de resource-id van de brondatabase.

OnlineSecondary/NonReadableSecondary: hiermee maakt u een database als een secundaire replica van een bestaande database (leesbaar of niet-leesbaar). sourceDatabaseId moet worden opgegeven als de resource-id van de bestaande primaire database.

PointInTimeRestore: Hiermee maakt u een database door een back-up naar een bepaald tijdstip van een bestaande database te herstellen. sourceDatabaseId moet worden opgegeven als de resource-id van de bestaande database en restorePointInTime moet worden opgegeven.

Herstel: Hiermee maakt u een database door een geo-gerepliceerde back-up te herstellen. sourceDatabaseId moet worden opgegeven als de herstelbare databaseresource-id om te herstellen.

Herstellen: Hiermee maakt u een database door een back-up van een verwijderde database te herstellen. sourceDatabaseId moet worden opgegeven. Als sourceDatabaseId de oorspronkelijke resource-id van de database is, moet sourceDatabaseDeletionDate worden opgegeven. Anders moet sourceDatabaseId de restorable verwijderde databaseresource-id zijn en sourceDatabaseDeletionDate wordt genegeerd. restorePointInTime kan ook worden opgegeven om te herstellen vanaf een eerder tijdstip.

RestoreLongTermRetentionBackup: Hiermee maakt u een database door een langetermijnretentiekluis te herstellen. recoveryServicesRecoveryPointResourceId moet worden opgegeven als de resource-id van het herstelpunt.

Kopiëren, NonReadableSecondary, OnlineSecondary en RestoreLongTermRetentionBackup worden niet ondersteund voor datawarehouse-editie. | 'Kopiëren'
'Default'
'NonReadableSecondary'
'OnlineSecondary'
'PointInTimeRestore'
'Recovery'
'Restore'
'RestoreLongTermRetentionBackup' | | editie | De editie van de database. De opsomming DatabaseEditions bevat alle geldige edities. Als createMode NonReadableSecondary of OnlineSecondary is, wordt deze waarde genegeerd.

De lijst met SKU's kan variëren per regio en ondersteuningsaanbieding. Om de SKU's (inclusief de SKU-naam, niveau/editie, familie en capaciteit) te bepalen die beschikbaar zijn voor je abonnement in een Azure regio, gebruik je de Capabilities_ListByLocation REST API of een van de volgende commando's:

azurecli<br />az sql db list-editions -l &lt;location&gt; -o table<br />````<br /><br />PowerShell
<Get-AzSqlServerServiceObjective -Location locatie>
| 'Basic'<br />'Business'<br />'BusinessCritical'<br />'DataWarehouse'<br />'Free'<br />'GeneralPurpose'<br />'Hyperscale'<br />'Premium'<br />'PremiumRS'<br />'Standard'<br />'Stretch'<br />'System'<br />'System2'<br />'Web' | | elasticPoolName | The name of the elastic pool the database is in. If elasticPoolName and requestedServiceObjectiveName are both updated, the value of requestedServiceObjectiveName is ignored. Not supported for DataWarehouse edition. | string | | maxSizeBytes | The max size of the database expressed in bytes. If createMode is not Default, this value is ignored. To see possible values, query the capabilities API (/subscriptions/{subscriptionId}/providers/Microsoft.Sql/locations/{locationID}/capabilities) referred to by operationId: "Capabilities_ListByLocation." | string | | readScale | Conditional. If the database is a geo-secondary, readScale indicates whether read-only connections are allowed to this database or not. Not supported for DataWarehouse edition. | 'Disabled'<br />'Enabled' | | recoveryServicesRecoveryPointResourceId | Conditional. If createMode is RestoreLongTermRetentionBackup, then this value is required. Specifies the resource ID of the recovery point to restore from. | string | | requestedServiceObjectiveId | The configured service level objective ID of the database. This is the service level objective that is in the process of being applied to the database. Once successfully updated, it will match the value of currentServiceObjectiveId property. If requestedServiceObjectiveId and requestedServiceObjectiveName are both updated, the value of requestedServiceObjectiveId overrides the value of requestedServiceObjectiveName.<br /><br />The list of SKUs may vary by region and support offer. To determine the service objective ids that are available to your subscription in an Azure region, use the `Capabilities_ListByLocation` REST API. | string <br /><br />Constraints:<br />Min length = 36<br />Max length = 36<br />Pattern = `^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$` | | requestedServiceObjectiveName | The name of the configured service level objective of the database. This is the service level objective that is in the process of being applied to the database. Once successfully updated, it will match the value of serviceLevelObjective property. <br /><br />The list of SKUs may vary by region and support offer. To determine the SKUs (including the SKU name, tier/edition, family, and capacity) that are available to your subscription in an Azure region, use the `Capabilities_ListByLocation` REST API or one of the following commands:<br /><br />```azurecli<br />az sql db list-editions -l &lt;location&gt; -o table<br />

```powershell
<Get-AzSqlServerServiceObjective -Location locatie>
```` | 'Basis'
'DS100'
'DS1000'
'DS1200'
'DS1500'
'DS200'
'DS2000'
'DS300'
'DS400'
'DS500'
'DS600'
'DW100'
'DW1000'
'DW10000c'
'DW1000c'
'DW1200'
'DW1500'
'DW15000c'
'DW1500c'
'DW200'
'DW2000'
'DW2000c'
'DW2500c'
'DW300'
'DW3000'
'DW30000c'
'DW3000c'
'DW400'
'DW500'
'DW5000c'
'DW600'
'DW6000'
'DW6000c'
'DW7500c'
'ElasticPool'
'Free'
'P1'
'P11'
'P15'
'P2'
'P3'
'P4'
'P6'
'PRS1'
'PRS2'
'PRS4'
'PRS6'
'S0'
'S1'
'S12'
'S2'
'S3'
'S4'
'S6'
'S7'
'S9'
'System'
'System0'
'System1'
'System2'
'System2L'
'System3'
'System3L'
'System4'
'System4L' | | restorePointInTime | Voorwaardelijk. Als createMode PointInTimeRestore is, is deze waarde vereist. Als createMode herstellen is, is deze waarde optioneel. Hiermee geeft u het tijdstip (ISO8601-indeling) van de brondatabase op die wordt hersteld om de nieuwe database te maken. Moet groter dan of gelijk zijn aan de vroegste waardeRestoreDate van de brondatabase. | tekenreeks | | sampleName | Geeft de naam aan van het voorbeeldschema dat moet worden toegepast bij het maken van deze database. Als createMode niet standaard is, wordt deze waarde genegeerd. Niet ondersteund voor DataWarehouse-editie. | 'AdventureWorksLT' | | sourceDatabaseDeletionDate | Voorwaardelijk. Als createMode restore is en sourceDatabaseId de oorspronkelijke resource-id van de verwijderde database is wanneer deze bestaat (in plaats van de huidige verwijderde database-id), is deze waarde vereist. Hiermee geeft u het tijdstip op waarop de database is verwijderd. | tekenreeks | | sourceDatabaseId | Voorwaardelijk. Als createMode Copy, NonReadableSecondary, OnlineSecondary, PointInTimeRestore, Recovery of Restore is, is deze waarde vereist. Hiermee geeft u de resource-id van de brondatabase op. Als createMode NonReadableSecondary of OnlineSecondary is, moet de naam van de brondatabase hetzelfde zijn als de nieuwe database die wordt gemaakt. | tekenreeks | | zoneRedundant | Of deze database nu zone-redundant is, wat betekent dat de replica's van deze database worden verdeeld over meerdere beschikbaarheidszones. | Bool |

TrackedResourceTags

Name Description Value

Gebruiksvoorbeelden

Azure Quickstart Templates

De volgende Azure Quickstart-sjablonen deployen dit resourcetype.

Template Description
Azure SQL Server met Auditing geschreven naar Log Analytics

Deploy naar Azure
Met deze template kun je een Azure SQL-server met Auditing ingeschakeld uitrollen om auditlogs te schrijven naar Log Analytics (OMS workspace)
Maak een SQL Server en database

Deploy naar Azure
Met deze sjabloon kunt u SQL Database en Server maken.
Dedicated SQL-pool met transparante encryptie

Deploy naar Azure
Maakt een SQL Server en een Dedicated SQL pool (voorheen SQL DW) aan met Transparent Data Encryption.
Deploy een nieuwe SQL Elastic Pool

Deploy naar Azure
Met dit sjabloon kun je een nieuwe SQL Elastic Pool uitrollen met de bijbehorende SQL Server en nieuwe SQL-databases om eraan toe te wijzen.
Rol de Sports Analytics uit op Azure architectuur

Deploy naar Azure
Maakt een Azure-opslagaccount aan met ADLS Gen 2 ingeschakeld, een Azure Data Factory-instantie met gekoppelde diensten voor het opslagaccount (en de Azure SQL Database indien geïmplementeerd), en een Azure Databricks-instantie. De AAD-identiteit voor de gebruiker die de sjabloon implementeert en de beheerde identiteit voor het ADF-exemplaar krijgt de rol Inzender voor opslagblobgegevens in het opslagaccount. Er zijn ook opties om een Azure Key Vault-instantie, een Azure SQL Database en een Azure Event Hub (voor streaming gebruikssituaties) te implementeren. Wanneer een Azure Key Vault wordt geïmplementeerd, krijgen de door de data factory beheerde identiteit en de AAD-identiteit van de gebruiker die de template deployt de rol van Key Vault Secrets Gebruiker toegekend.
HDInsight met aangepaste Ambari + Hive Metastore DB in VNET

Deploy naar Azure
Met deze sjabloon kunt u een HDInsight-cluster maken in een bestaand virtueel netwerk met een nieuwe SQL-database die fungeert als een aangepaste Ambari-database en Hive Metastore. U moet een bestaand SQL-server, opslagaccount en VNET hebben.
Private Endpoint voorbeeld

Deploy naar Azure
Deze template laat zien hoe je een privé-endpoint aanmaakt dat verwijst naar Azure SQL Server
Provisioneer een webapp met een SQL-database

Deploy naar Azure
Deze sjabloon richt een web-app, een SQL Database, instellingen voor automatisch schalen, waarschuwingsregels en App Insights in. Het configureert een verbindingsreeks in de webapp voor de database.
Extern bureaublad Diensten met hoge beschikbaarheid

Deploy naar Azure
Deze ARM-sjabloon voorbeeldcode zal een Extern bureaublad Services 2019 Session Collection lab met hoge beschikbaarheid implementeren. Het doel is om een volledig redundante, zeer beschikbare oplossing voor Extern bureaublad Services te implementeren, met Windows Server 2019.
Sonarqube Docker Web App op Linux met Azure SQL

Deploy naar Azure
Deze template deployeert Sonarqube in een Azure App Service webapp Linux-container met behulp van het officiële Sonarqube-image en ondersteund door een Azure SQL Server.
Web App met Managed Identity, SQL Server en ΑΙ

Deploy naar Azure
Eenvoudig voorbeeld om Azure-infrastructuur te implementeren voor app + data + managed identity + monitoring
WebApp verbruikt een Azure SQL Private Endpoint

Deploy naar Azure
Deze template laat zien hoe je een webapp maakt die een privé-endpoint verbruikt dat naar Azure SQL Server verwijst

Resourcedefinitie van Terraform (AzAPI-provider)

Het resourcetype servers/databases kan worden geïmplementeerd met bewerkingen die zijn gericht op:

  • Resourcegroepen

Zie logboek wijzigenvoor een lijst met gewijzigde eigenschappen in elke API-versie.

Resource-indeling

Om een Microsoft te creëren. SQL/servers/databases-resource, voeg de volgende Terraform toe aan je template.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.Sql/servers/databases@2014-04-01"
  name = "string"
  parent_id = "string"
  location = "string"
  tags = {
    {customized property} = "string"
  }
  body = {
    properties = {
      collation = "string"
      createMode = "string"
      edition = "string"
      elasticPoolName = "string"
      maxSizeBytes = "string"
      readScale = "string"
      recoveryServicesRecoveryPointResourceId = "string"
      requestedServiceObjectiveId = "string"
      requestedServiceObjectiveName = "string"
      restorePointInTime = "string"
      sampleName = "string"
      sourceDatabaseDeletionDate = "string"
      sourceDatabaseId = "string"
      zoneRedundant = bool
    }
  }
}

Eigenschapswaarden

Microsoft. SQL/servers/databases

Name Description Value
location Resourcelocatie. tekenreeks (vereist)
name De resourcenaam tekenreeks (vereist)
parent_id De id van de resource die het bovenliggende item voor deze resource is. Id voor resource van het type: servers
properties De eigenschappen die de resource vertegenwoordigen. DatabaseProperties
tags Resourcetags Woordenlijst met tagnamen en -waarden.
type Het brontype "Microsoft. SQL/servers/databases@2014-04-01"

DatabaseProperties

| Naam | Beschrijving | Waarde | | ---- | ----------- | ------------ | | sortering | De sortering van de database. Als createMode niet standaard is, wordt deze waarde genegeerd. | tekenreeks | | createMode | Hiermee geeft u de modus voor het maken van de database op.

Standaard: het maken van een gewone database.

Kopiëren: maakt een database als een kopie van een bestaande database. sourceDatabaseId moet worden opgegeven als de resource-id van de brondatabase.

OnlineSecondary/NonReadableSecondary: hiermee maakt u een database als een secundaire replica van een bestaande database (leesbaar of niet-leesbaar). sourceDatabaseId moet worden opgegeven als de resource-id van de bestaande primaire database.

PointInTimeRestore: Hiermee maakt u een database door een back-up naar een bepaald tijdstip van een bestaande database te herstellen. sourceDatabaseId moet worden opgegeven als de resource-id van de bestaande database en restorePointInTime moet worden opgegeven.

Herstel: Hiermee maakt u een database door een geo-gerepliceerde back-up te herstellen. sourceDatabaseId moet worden opgegeven als de herstelbare databaseresource-id om te herstellen.

Herstellen: Hiermee maakt u een database door een back-up van een verwijderde database te herstellen. sourceDatabaseId moet worden opgegeven. Als sourceDatabaseId de oorspronkelijke resource-id van de database is, moet sourceDatabaseDeletionDate worden opgegeven. Anders moet sourceDatabaseId de restorable verwijderde databaseresource-id zijn en sourceDatabaseDeletionDate wordt genegeerd. restorePointInTime kan ook worden opgegeven om te herstellen vanaf een eerder tijdstip.

RestoreLongTermRetentionBackup: Hiermee maakt u een database door een langetermijnretentiekluis te herstellen. recoveryServicesRecoveryPointResourceId moet worden opgegeven als de resource-id van het herstelpunt.

Kopiëren, NonReadableSecondary, OnlineSecondary en RestoreLongTermRetentionBackup worden niet ondersteund voor datawarehouse-editie. | 'Kopiëren'
'Default'
'NonReadableSecondary'
'OnlineSecondary'
'PointInTimeRestore'
'Recovery'
'Restore'
'RestoreLongTermRetentionBackup' | | editie | De editie van de database. De opsomming DatabaseEditions bevat alle geldige edities. Als createMode NonReadableSecondary of OnlineSecondary is, wordt deze waarde genegeerd.

De lijst met SKU's kan variëren per regio en ondersteuningsaanbieding. Om de SKU's (inclusief de SKU-naam, niveau/editie, familie en capaciteit) te bepalen die beschikbaar zijn voor je abonnement in een Azure regio, gebruik je de Capabilities_ListByLocation REST API of een van de volgende commando's:

azurecli<br />az sql db list-editions -l &lt;location&gt; -o table<br />````<br /><br />PowerShell
<Get-AzSqlServerServiceObjective -Location locatie>
| 'Basic'<br />'Business'<br />'BusinessCritical'<br />'DataWarehouse'<br />'Free'<br />'GeneralPurpose'<br />'Hyperscale'<br />'Premium'<br />'PremiumRS'<br />'Standard'<br />'Stretch'<br />'System'<br />'System2'<br />'Web' | | elasticPoolName | The name of the elastic pool the database is in. If elasticPoolName and requestedServiceObjectiveName are both updated, the value of requestedServiceObjectiveName is ignored. Not supported for DataWarehouse edition. | string | | maxSizeBytes | The max size of the database expressed in bytes. If createMode is not Default, this value is ignored. To see possible values, query the capabilities API (/subscriptions/{subscriptionId}/providers/Microsoft.Sql/locations/{locationID}/capabilities) referred to by operationId: "Capabilities_ListByLocation." | string | | readScale | Conditional. If the database is a geo-secondary, readScale indicates whether read-only connections are allowed to this database or not. Not supported for DataWarehouse edition. | 'Disabled'<br />'Enabled' | | recoveryServicesRecoveryPointResourceId | Conditional. If createMode is RestoreLongTermRetentionBackup, then this value is required. Specifies the resource ID of the recovery point to restore from. | string | | requestedServiceObjectiveId | The configured service level objective ID of the database. This is the service level objective that is in the process of being applied to the database. Once successfully updated, it will match the value of currentServiceObjectiveId property. If requestedServiceObjectiveId and requestedServiceObjectiveName are both updated, the value of requestedServiceObjectiveId overrides the value of requestedServiceObjectiveName.<br /><br />The list of SKUs may vary by region and support offer. To determine the service objective ids that are available to your subscription in an Azure region, use the `Capabilities_ListByLocation` REST API. | string <br /><br />Constraints:<br />Min length = 36<br />Max length = 36<br />Pattern = `^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$` | | requestedServiceObjectiveName | The name of the configured service level objective of the database. This is the service level objective that is in the process of being applied to the database. Once successfully updated, it will match the value of serviceLevelObjective property. <br /><br />The list of SKUs may vary by region and support offer. To determine the SKUs (including the SKU name, tier/edition, family, and capacity) that are available to your subscription in an Azure region, use the `Capabilities_ListByLocation` REST API or one of the following commands:<br /><br />```azurecli<br />az sql db list-editions -l &lt;location&gt; -o table<br />

```powershell
<Get-AzSqlServerServiceObjective -Location locatie>
```` | 'Basis'
'DS100'
'DS1000'
'DS1200'
'DS1500'
'DS200'
'DS2000'
'DS300'
'DS400'
'DS500'
'DS600'
'DW100'
'DW1000'
'DW10000c'
'DW1000c'
'DW1200'
'DW1500'
'DW15000c'
'DW1500c'
'DW200'
'DW2000'
'DW2000c'
'DW2500c'
'DW300'
'DW3000'
'DW30000c'
'DW3000c'
'DW400'
'DW500'
'DW5000c'
'DW600'
'DW6000'
'DW6000c'
'DW7500c'
'ElasticPool'
'Free'
'P1'
'P11'
'P15'
'P2'
'P3'
'P4'
'P6'
'PRS1'
'PRS2'
'PRS4'
'PRS6'
'S0'
'S1'
'S12'
'S2'
'S3'
'S4'
'S6'
'S7'
'S9'
'System'
'System0'
'System1'
'System2'
'System2L'
'System3'
'System3L'
'System4'
'System4L' | | restorePointInTime | Voorwaardelijk. Als createMode PointInTimeRestore is, is deze waarde vereist. Als createMode herstellen is, is deze waarde optioneel. Hiermee geeft u het tijdstip (ISO8601-indeling) van de brondatabase op die wordt hersteld om de nieuwe database te maken. Moet groter dan of gelijk zijn aan de vroegste waardeRestoreDate van de brondatabase. | tekenreeks | | sampleName | Geeft de naam aan van het voorbeeldschema dat moet worden toegepast bij het maken van deze database. Als createMode niet standaard is, wordt deze waarde genegeerd. Niet ondersteund voor DataWarehouse-editie. | 'AdventureWorksLT' | | sourceDatabaseDeletionDate | Voorwaardelijk. Als createMode restore is en sourceDatabaseId de oorspronkelijke resource-id van de verwijderde database is wanneer deze bestaat (in plaats van de huidige verwijderde database-id), is deze waarde vereist. Hiermee geeft u het tijdstip op waarop de database is verwijderd. | tekenreeks | | sourceDatabaseId | Voorwaardelijk. Als createMode Copy, NonReadableSecondary, OnlineSecondary, PointInTimeRestore, Recovery of Restore is, is deze waarde vereist. Hiermee geeft u de resource-id van de brondatabase op. Als createMode NonReadableSecondary of OnlineSecondary is, moet de naam van de brondatabase hetzelfde zijn als de nieuwe database die wordt gemaakt. | tekenreeks | | zoneRedundant | Of deze database nu zone-redundant is, wat betekent dat de replica's van deze database worden verdeeld over meerdere beschikbaarheidszones. | Bool |

TrackedResourceTags

Name Description Value

Gebruiksvoorbeelden

Terraform-monsters

Een eenvoudig voorbeeld van het implementeren van MS SQL Database.

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    = ["*"]
}

Een eenvoudig voorbeeld van het implementeren van MS SQL Database.

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    = ["*"]
}