Microsoft.DBforMySQL servers

The servers resource type can be deployed to: Resource groups.

To learn about resource group deployments, see Bicep or ARM template.

Template format

To create a Microsoft.DBforMySQL/servers resource, add the following Bicep or JSON to your template.

resource symbolicname 'Microsoft.DBforMySQL/servers@2017-12-01' = {
  name: 'string'
  location: 'string'
  tags: {
    tagName1: 'tagValue1'
    tagName2: 'tagValue2'
  }
  sku: {
    capacity: int
    family: 'string'
    name: 'string'
    size: 'string'
    tier: 'string'
  }
  identity: {
    type: 'SystemAssigned'
  }
  properties: {
    infrastructureEncryption: 'string'
    minimalTlsVersion: 'string'
    publicNetworkAccess: 'string'
    sslEnforcement: 'string'
    storageProfile: {
      backupRetentionDays: int
      geoRedundantBackup: 'string'
      storageAutogrow: 'string'
      storageMB: int
    }
    version: 'string'
    createMode: 'string'
    // For remaining properties, see ServerPropertiesForCreate objects
  }
}

ServerPropertiesForCreate objects

Set the createMode property to specify the type of object.

For Default, use:

  createMode: 'Default'
  administratorLogin: 'string'
  administratorLoginPassword: 'string'

For GeoRestore, use:

  createMode: 'GeoRestore'
  sourceServerId: 'string'

For PointInTimeRestore, use:

  createMode: 'PointInTimeRestore'
  restorePointInTime: 'string'
  sourceServerId: 'string'

For Replica, use:

Note

Using a template to create a MySQL server with the Replica value is not idempotent. The server is created successfully the first time. However, deploying the template when the replica server already exists returns an error.

  createMode: 'Replica'
  sourceServerId: 'string'

Property values

servers

Name Description Value
type The resource type

For Bicep, set this value in the resource declaration.
'Microsoft.DBforMySQL/servers'
apiVersion The resource api version

For Bicep, set this value in the resource declaration.
'2017-12-01'
name The resource name string (required)
location The location the resource resides in. string (required)
tags Application-specific metadata in the form of key-value pairs. Dictionary of tag names and values. See Tags in templates
sku Billing information related properties of a server. Sku
identity Azure Active Directory identity configuration for a resource. ResourceIdentity
properties The properties used to create a new server. ServerPropertiesForCreate (required)

ResourceIdentity

Name Description Value
type The identity type. Set this to 'SystemAssigned' in order to automatically create and assign an Azure Active Directory principal for the resource. 'SystemAssigned'

ServerPropertiesForCreate

Name Description Value
infrastructureEncryption Add a second layer of encryption for your data using new encryption algorithm which gives additional data protection. Value is optional but if passed in, must be 'Disabled' or 'Enabled'. 'Disabled'
'Enabled'
minimalTlsVersion Enforce a minimal Tls version for the server. 'TLS1_0'
'TLS1_1'
'TLS1_2'
'TLSEnforcementDisabled'
publicNetworkAccess Whether or not public network access is allowed for this server. Value is optional but if passed in, must be 'Enabled' or 'Disabled' 'Disabled'
'Enabled'
sslEnforcement Enable ssl enforcement or not when connect to server. 'Disabled'
'Enabled'
storageProfile Storage Profile properties of a server StorageProfile
version The version of a server. '5.6'
'5.7'
'8.0'
createMode Set the object type Default
GeoRestore
PointInTimeRestore
Replica

StorageProfile

Name Description Value
backupRetentionDays Backup retention days for the server. int
geoRedundantBackup Enable Geo-redundant or not for server backup. 'Disabled'
'Enabled'
storageAutogrow Enable Storage Auto Grow. 'Disabled'
'Enabled'
storageMB Max storage allowed for a server. int

ServerPropertiesForDefaultCreate

Name Description Value
createMode The mode to create a new server. 'Default'
administratorLogin The administrator's login name of a server. Can only be specified when the server is being created (and is required for creation). The login name is required when updating password. string (required)
administratorLoginPassword The password of the administrator login. string (required)

ServerPropertiesForGeoRestore

Name Description Value
createMode The mode to create a new server. 'GeoRestore'
sourceServerId The source server id to restore from. string (required)

ServerPropertiesForRestore

Name Description Value
createMode The mode to create a new server. 'PointInTimeRestore'
restorePointInTime Restore point creation time (ISO8601 format), specifying the time to restore from. string (required)
sourceServerId The source server id to restore from. string (required)

ServerPropertiesForReplica

Name Description Value
createMode The mode to create a new server. 'Replica'
sourceServerId The primary server id to create replica from. string (required)

Sku

Name Description Value
capacity The scale up/out capacity, representing server's compute units. int
family The family of hardware. string
name The name of the sku, typically, tier + family + cores, e.g. B_Gen4_1, GP_Gen5_8. string (required)
size The size code, to be interpreted by resource as appropriate. string
tier The tier of the particular SKU, e.g. Basic. 'Basic'
'GeneralPurpose'
'MemoryOptimized'

Quickstart templates

The following quickstart templates deploy this resource type.

Template Description
Buffalo Web App

Deploy to Azure
Start running your Golang Buffalo Application on Azure quickly and cheaply.
Java CI/CD using Jenkins and Azure Web Apps

Deploy to Azure
This is a sample for Java CI/CD using Jenkins and Azure Web Apps.
Deploy Azure Database for MySQL with VNet

Deploy to Azure
This template provides a way to deploy an Azure database for MySQL with VNet integration.
Application Gateway for a Web App with IP Restriction

Deploy to Azure
This template creates an application gateway in front of an Azure Web App with IP restriction enabled on the Web App.
Web App on Linux with Azure database for MySQL

Deploy to Azure
This template provides a way to deploy Web Apps on Linux with Azure database for MySQL.
Sonarqube Docker Web App on Linux with MySQL

Deploy to Azure
This template provides a easy way to deploy a Sonarqube docker image (alpine tag) on a Linux Web App with Azure database for MySQL
Web App with Azure database for MySQL

Deploy to Azure
This template provides a easy way to deploy web app on Azure App Service Web Apps with Azure database for MySQL.