Criar um servidor MySQL e configurar uma regra de firewall com a CLI do Azure

[APLICA-SE A: Base de Dados do Azure para MySQL – Base de Dados do Azure para MySQL de Servidor Único – Servidor Flexível

Este script de exemplo da CLI do Azure cria um servidor da Base de Dados do Azure para MySQL e configura uma regra de firewall ao nível do servidor. Assim que o script é executado com êxito, o servidor MySQL é acedido por todos os serviços do Azure e o endereço IP configurado.

Se não tiver uma subscrição do Azure, crie uma conta gratuita do Azure antes de começar.

Pré-requisitos

Script de exemplo

Iniciar o Azure Cloud Shell

O Azure Cloud Shell é um shell interativo gratuito que pode utilizar para executar os passos neste artigo. Tem as ferramentas comuns do Azure pré-instaladas e configuradas para utilização com a sua conta.

Para abrir o Cloud Shell, basta selecionar Experimente no canto superior direito de um bloco de código. Também pode iniciar o Cloud Shell num separador do browser separado ao aceder a https://shell.azure.com.

Quando Cloud Shell abrir, verifique se o Bash está selecionado para o seu ambiente. As sessões subsequentes utilizarão a CLI do Azure num ambiente bash, selecionar Copiar para copiar os blocos de código, colá-lo no Cloud Shell e premir Enter para executá-lo.

Iniciar sessão no Azure

Cloud Shell é automaticamente autenticada na conta inicial com sessão iniciada. Utilize o seguinte script para iniciar sessão com uma subscrição diferente, substituindo <Subscription ID> pelo ID da Subscrição do Azure. Se não tiver uma subscrição do Azure, crie uma conta gratuita do Azure antes de começar.

subscription="<subscriptionId>" # add subscription here

az account set -s $subscription # ...or use 'az login'

Para obter mais informações, veja Definir a subscrição ativa ou iniciar sessão interativamente

Executar o script

# Create a MySQL server and configure a firewall rule

# Variable block
let "randomIdentifier=$RANDOM*$RANDOM"
location="East US"
resourceGroup="msdocs-mysql-rg-$randomIdentifier"
tag="create-mysql-server-and-firewall-rule"
server="msdocs-mysql-server-$randomIdentifier"
sku="GP_Gen5_2"
login="azureuser"
password="Pa$$w0rD-$randomIdentifier"
# Specify appropriate IP address values for your environment
# to limit / allow access to the MySQL server
startIp=0.0.0.0
endIp=0.0.0.0

echo "Using resource group $resourceGroup with login: $login, password: $password..."

# Create a resource group
echo "Creating $resourceGroup in $location..."
az group create --name $resourceGroup --location "$location" --tags $tag

# Create a MySQL server in the resource group
# Name of a server maps to DNS name and is thus required to be globally unique in Azure.
echo "Creating $server in $location..."
az mysql server create --name $server --resource-group $resourceGroup --location "$location" --admin-user $login --admin-password $password --sku-name $sku

# Configure a firewall rule for the server 
echo "Configuring a firewall rule for $server for the IP address range of $startIp to $endIp"
az mysql server firewall-rule create --resource-group $resourceGroup --server $server --name AllowIps --start-ip-address $startIp --end-ip-address $endIp

Limpar os recursos

Utilize o seguinte comando para remover o grupo de recursos e todos os recursos associados ao mesmo com o comando az group delete , a menos que tenha uma necessidade contínua para estes recursos. Alguns destes recursos podem demorar algum tempo a criar, bem como a eliminar.

az group delete --name $resourceGroup

Referência de exemplo

Este script utiliza os comandos descritos na tabela seguinte:

Comando Notas
az group create Cria um grupo de recursos no qual todos os recursos são armazenados.
az mysql server create Cria um servidor MySQL que aloja as bases de dados.
az mysql server firewall create Cria uma regra de firewall para permitir o acesso ao servidor e às bases de dados incluídas, a partir do intervalo de endereços IP introduzido.
az group delete Elimina um grupo de recursos, incluindo todos os recursos aninhados.

Passos seguintes