Listar e alterar parâmetros do servidor de um Banco de Dados do Azure para MySQL – Servidor Flexível usando a CLI do Azure

APLICA-SE A: Banco de Dados do Azure para MySQL - Servidor flexível

Este script de exemplo da CLI lista todos os parâmetros de servidor disponíveis, bem como seus valores permitidos para o Banco de Dados do Azure para MySQL – Servidor Flexível e define os parâmetros max_connections e time_zone global com valores diferentes do padrão.

Caso você não tenha uma assinatura do Azure, crie uma conta gratuita do Azure antes de começar. Atualmente, com uma conta gratuita do Azure, você pode experimentar o Banco de Dados do Azure para MySQL – Servidor Flexível gratuitamente por 12 meses. Para obter mais informações, veja Experimente o Banco de Dados do Azure para MySQL – Servidor Flexível gratuitamente.

Pré-requisitos

Exemplo de script

Iniciar o Azure Cloud Shell

O Azure Cloud Shell é um shell gratuito e interativo que poderá ser usado para executar as etapas deste artigo. Ele tem ferramentas do Azure instaladas e configuradas para usar com sua conta.

Para abrir o Cloud Shell, basta selecionar Experimentar no canto superior direito de um bloco de código. Você também pode iniciar o Cloud Shell em uma guia separada do navegador indo até https://shell.azure.com.

Quando o Cloud Shell abrir, verifique se o Bash está selecionado para o ambiente. As sessões subsequentes usarão a CLI do Azure em um ambiente Bash. Selecione Copiar para copiar os blocos de código, cole-os no Cloud Shell e pressione Enter para executá-los.

Entrar no Azure

O Cloud Shell é autenticado automaticamente na conta inicial usada para entrar. Use o seguinte script para entrar usando uma assinatura diferente, substituindo <Subscription ID> pela ID da Assinatura do Azure. Caso você não tenha uma assinatura 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 saber mais, confira definir assinatura ativa ou fazer logon de forma interativa

Executar o script

# Change server parameters for Azure Database for MySQL - Flexible Server

# Variable block
let "randomIdentifier=$RANDOM*$RANDOM"
location="East US"
resourceGroup="msdocs-mysql-rg-$randomIdentifier"
tag="configure-audit-logs-mysql"
server="msdocs-mysql-server-$randomIdentifier"
login="azureuser"
password="Pa$$w0rD-$randomIdentifier"
ipAddress="None"
# Specifying an IP address of 0.0.0.0 allows public access from any resources
# deployed within Azure to access your server. Setting it to "None" sets the server 
# in public access mode but does not create a firewall rule.
# For your public IP address, https://whatismyipaddress.com

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 Flexible server in the resource group
echo "Creating $server"
az mysql flexible-server create --name $server --resource-group $resourceGroup --location "$location" --admin-user $login --admin-password $password --public-access $ipAddress

# Optional: Add firewall rule to connect from all Azure services
# To limit to a specific IP address or address range, change start-ip-address and end-ip-address
echo "Adding firewall for IP address range"
az mysql flexible-server firewall-rule create --name $server --resource-group $resourceGroup --rule-name AllowAzureIPs --start-ip-address 0.0.0.0 --end-ip-address 0.0.0.0

# List all MySQL - Flexible Server parameters with their values and parameter descriptions
echo "List parameters and values"
az mysql flexible-server parameter list --resource-group $resourceGroup --server-name $server

# Set value of max_connections parameter
echo "Set maximum connections"
az mysql flexible-server parameter set --resource-group $resourceGroup --server-name $server --name max_connections --value 250

# Check value of max_connections paramater
echo "Check maximum connections"
az mysql flexible-server parameter show --resource-group $resourceGroup --server-name $server --name max_connections

# Set value of max_connections parameter back to default
echo "Set maximum connnections to default"
az mysql flexible-server parameter set --resource-group $resourceGroup --server-name $server --name max_connections 

# Set global level time zone
echo "Set time zone"
az mysql flexible-server parameter set --resource-group $resourceGroup --server-name $server --name time_zone --value "+02:00"

# Check global level time zone
echo "Check time zone"
az mysql flexible-server parameter show --resource-group $resourceGroup --server-name $server --name time_zone

Limpar os recursos

Use o comando a seguir para remover o grupo de recursos e todos os recursos associados a ele usando o comando az group delete, a menos que você necessite desses recursos com frequência. A criação e a exclusão de alguns desses recursos podem demorar um pouco.

az group delete --name $resourceGroup

Exemplo de referência

Este script usa os comandos a seguir. Cada comando da tabela é vinculado à documentação específica do comando.

Comando Observações
az group create Cria um grupo de recursos no qual todos os recursos são armazenados
az mysql flexible-server create Cria um Servidor Flexível que hospeda os bancos de dados.
az mysql flexible-server parameter list Lista os valores de parâmetro para um servidor flexível.
az mysql flexible-server parameter set Atualiza o parâmetro de um servidor flexível.
az mysql flexible-server parameter show Obtém um valor de parâmetro específico para um servidor flexível.
az mysql flexible-server delete Exclui um Servidor Flexível.
az group delete Exclui um grupo de recursos, incluindo todos os recursos aninhados.

Próximas etapas