{ "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#", "contentVersion": "1.0.0.0", "parameters": { "serverName": { "type": "string", "defaultValue": "", "metadata": { "description": "Server Name for Azure database for MySQL" } }, "administratorLogin": { "type": "string", "minLength": 1, "defaultValue": "", "metadata": { "description": "Database administrator login name" } }, "administratorLoginPassword": { "type": "securestring", "minLength": 8, "defaultValue": "", "metadata": { "description": "Database administrator password" } }, "skuCapacity": { "type": "int", "defaultValue": 2, "metadata": { "description": "Azure database for MySQL compute capacity in vCores (2,4,8,16,32)" } }, "skuName": { "type": "string", "defaultValue": "GP_Gen5_2", "metadata": { "description": "Azure database for MySQL sku name " } }, "SkuSizeMB": { "type": "int", "defaultValue": 5120, "metadata": { "description": "Azure database for MySQL Sku Size " } }, "SkuTier": { "type": "string", "defaultValue": "GeneralPurpose", "metadata": { "description": "Azure database for MySQL pricing tier" } }, "skuFamily": { "type": "string", "defaultValue": "Gen5", "metadata": { "description": "Azure database for MySQL sku family" } }, "mysqlVersion": { "type": "string", "defaultValue": "5.7", "allowedValues": [ "5.6", "5.7" ], "metadata": { "description": "MySQL version" } }, "location": { "type": "string", "defaultValue": "[resourceGroup().location]", "metadata": { "description": "Location for all resources." } }, "backupRetentionDays": { "type": "int", "defaultValue": 7, "metadata": { "description": "MySQL Server backup retention days" } }, "geoRedundantBackup": { "type": "string", "defaultValue": "Disabled", "metadata": { "description": "Geo-Redundant Backup setting" } }, "virtualNetworkName": { "type": "string", "defaultValue": "azure_mysql_vnet", "metadata": { "description": "Virtual Network Name" } }, "subnetName": { "type": "string", "defaultValue": "azure_mysql_subnet", "metadata": { "description": "Subnet Name" } }, "virtualNetworkRuleName": { "type": "string", "defaultValue": "AllowSubnet", "metadata": { "description": "Virtual Network RuleName" } }, "vnetAddressPrefix": { "type": "string", "defaultValue": "10.0.0.0/16", "metadata": { "description": "Virtual Network Address Prefix" } }, "subnetPrefix": { "type": "string", "defaultValue": "10.0.0.0/16", "metadata": { "description": "Subnet Address Prefix" } } }, "variables": { "firewallrules": { "batch": { "rules": [ { "Name": "rule1", "StartIpAddress": "0.0.0.0", "EndIpAddress": "255.255.255.255" }, { "Name": "rule2", "StartIpAddress": "0.0.0.0", "EndIpAddress": "255.255.255.255" } ] } } }, "resources": [ { "type": "Microsoft.Network/virtualNetworks", "apiVersion": "2020-06-01", "name": "[parameters('virtualNetworkName')]", "location": "[parameters('location')]", "properties": { "addressSpace": { "addressPrefixes": [ "[parameters('vnetAddressPrefix')]" ] } }, "resources": [ { "type": "subnets", "apiVersion": "2020-06-01", "name": "[parameters('subnetName')]", "location": "[parameters('location')]", "dependsOn": [ "[parameters('virtualNetworkName')]" ], "properties": { "addressPrefix": "[parameters('subnetPrefix')]" } } ] }, { "type": "Microsoft.DBforMySQL/servers", "apiVersion": "2017-12-01", "name": "[parameters('serverName')]", "location": "[parameters('location')]", "sku": { "name": "[parameters('skuName')]", "tier": "[parameters('skuTier')]", "capacity": "[parameters('skuCapacity')]", "size": "[parameters('skuSizeMB')]", "family": "[parameters('skuFamily')]" }, "properties": { "createMode": "Default", "version": "[parameters('mysqlVersion')]", "administratorLogin": "[parameters('administratorLogin')]", "administratorLoginPassword": "[parameters('administratorLoginPassword')]", "storageProfile": { "storageMB": "[parameters('skuSizeMB')]", "backupRetentionDays": "[parameters('backupRetentionDays')]", "geoRedundantBackup": "[parameters('geoRedundantBackup')]" } }, "resources": [ { "type": "virtualNetworkRules", "apiVersion": "2017-12-01", "name": "[parameters('virtualNetworkRuleName')]", "dependsOn": [ "[resourceId('Microsoft.DBforMySQL/servers/', parameters('serverName'))]" ], "properties": { "virtualNetworkSubnetId": "[resourceId('Microsoft.Network/virtualNetworks/subnets', parameters('virtualNetworkName'), parameters('subnetName'))]", "ignoreMissingVnetServiceEndpoint": true } } ] }, { "type": "Microsoft.DBforMySQL/servers/firewallRules", "apiVersion": "2017-12-01", "name": "[concat(parameters('serverName'),'/AllowAllWindowsAzureIps')]", "dependsOn": [ "[resourceId('Microsoft.DBforMySQL/servers/', parameters('serverName'))]" ], "properties": { "StartIpAddress": "0.0.0.0", "EndIpAddress": "0.0.0.0" } } ] }