Manages a MySQL Virtual Network Rule.
provider "azurerm" {
features {}
}
resource "azurerm_resource_group" "example" {
name = "example-resources"
location = "West Europe"
}
resource "azurerm_virtual_network" "example" {
name = "example-vnet"
address_space = ["10.7.29.0/29"]
location = azurerm_resource_group.example.location
resource_group_name = azurerm_resource_group.example.name
}
resource "azurerm_subnet" "internal" {
name = "internal"
resource_group_name = azurerm_resource_group.example.name
virtual_network_name = azurerm_virtual_network.example.name
address_prefixes = ["10.7.29.0/29"]
service_endpoints = ["Microsoft.Sql"]
}
resource "azurerm_mysql_server" "example" {
name = "example-mysqlserver"
location = azurerm_resource_group.example.location
resource_group_name = azurerm_resource_group.example.name
administrator_login = "mysqladminun"
administrator_login_password = "H@Sh1CoR3!"
sku_name = "GP_Gen5_2"
storage_mb = 5120
version = "5.7"
backup_retention_days = 7
geo_redundant_backup_enabled = false
ssl_enforcement_enabled = true
}
resource "azurerm_mysql_virtual_network_rule" "example" {
name = "mysql-vnet-rule"
resource_group_name = azurerm_resource_group.example.name
server_name = azurerm_mysql_server.example.name
subnet_id = azurerm_subnet.internal.id
}
The following arguments are supported:
name
- (Required) The name of the MySQL Virtual Network Rule. Cannot be empty and must only contain alphanumeric characters and hyphens. Cannot start with a number, and cannot start or end with a hyphen. Changing this forces a new resource to be created.resource_group_name
- (Required) The name of the resource group where the MySQL server resides. Changing this forces a new resource to be created.
server_name
- (Required) The name of the SQL Server to which this MySQL virtual network rule will be applied to. Changing this forces a new resource to be created.
subnet_id
- (Required) The ID of the subnet that the MySQL server will be connected to.
In addition to the Arguments listed above - the following Attributes are exported:
id
- The ID of the MySQL Virtual Network Rule.The timeouts
block allows you to specify timeouts for certain actions:
create
- (Defaults to 30 minutes) Used when creating the MySQL Virtual Network Rule.update
- (Defaults to 30 minutes) Used when updating the MySQL Virtual Network Rule.read
- (Defaults to 5 minutes) Used when retrieving the MySQL Virtual Network Rule.delete
- (Defaults to 30 minutes) Used when deleting the MySQL Virtual Network Rule.MySQL Virtual Network Rules can be imported using the resource id
, e.g.
terraform import azurerm_mysql_virtual_network_rule.rule1 /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myresourcegroup/providers/Microsoft.DBforMySQL/servers/myserver/virtualNetworkRules/vnetrulename