Guia de início rápido: criar uma instância do Banco de Dados do Azure para MySQL - Servidor Flexível usando a CLI do Azure
Este guia de início rápido mostra como usar os comandos da CLI do Azure no Azure Cloud Shell para criar uma instância do Banco de Dados do Azure para MySQL - Servidor Flexível em cinco minutos.
Se você não tiver 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, consulte Usar uma conta gratuita do Azure para experimentar o Banco de Dados do Azure para MySQL - Servidor Flexível gratuitamente.
Abrir o Azure Cloud Shell
O Azure Cloud Shell é um shell interativo e gratuito que você pode usar para executar as etapas descritas neste artigo. No Cloud Shell, as ferramentas comuns do Azure são pré-instaladas e configuradas para serem usadas com sua conta.
Para abrir o Cloud Shell, no canto superior direito de um exemplo de código, selecione Experimentar.
Você também pode abrir o Cloud Shell em uma guia separada do navegador acessando .https://shell.azure.com/bash Selecione Copiar para copiar o conteúdo de um bloco de código. No Cloud Shell, cole o código e selecione Enter para executá-lo.
Se você preferir instalar e usar a CLI do Azure, este início rápido requer a CLI do Azure versão 2.0 ou posterior. Para localizar a versão da instalação da CLI do Azure. , executar az --version
. Se precisar de instalar ou atualizar, veja Instalar a CLI do Azure.
Pré-requisitos
Inicie sessão na sua conta utilizando o comando az login . Observe a id
propriedade. A id
propriedade refere-se à ID de assinatura da sua conta do Azure.
az login
Selecione a assinatura específica em sua conta do Azure usando o comando az account set . Anote o id
az login
valor da saída para usar como o valor do subscription
argumento no comando.
Se você tiver várias assinaturas, selecione a assinatura na qual deseja que o recurso seja cobrado. Para obter uma lista das suas subscrições, utilize a lista de contas az.
az account set --subscription <subscription ID>
Criar um Banco de Dados do Azure para o Servidor Flexível MySQL
Crie um grupo de recursos do Azure usando o az group create
comando. Em seguida, crie seu Banco de Dados do Azure para o Servidor Flexível MySQL dentro do grupo de recursos. Certifique-se de fornecer um nome exclusivo. O exemplo seguinte cria um grupo de recursos com o nome myresourcegroup
na localização eastus2
.
az group create --name myresourcegroup --location eastus2
Crie um Banco de Dados do Azure para o Servidor Flexível MySQL usando o az mysql flexible-server create
comando. Cada servidor pode conter várias bases de dados. O comando a seguir cria um servidor usando padrões de serviço e valores do contexto local da CLI do Azure:
az mysql flexible-server create
O servidor criado tem os seguintes atributos:
- Um nome de servidor gerado automaticamente, nome de usuário de administrador, senha de administrador e nome de grupo de recursos (se ainda não estiver especificado em um contexto local) e está no mesmo local que seu grupo de recursos.
- Os padrões de serviço para as configurações restantes do servidor: camada de computação (Burstable), tamanho do computador/SKU (B1MS), período de retenção de backup (sete dias) e versão do MySQL (5.7).
- O método de conectividade padrão é o acesso privado (VNet Integration), com uma rede virtual e uma sub-rede geradas automaticamente.
Nota
O método de conectividade não pode ser alterado depois de criar o servidor. Por exemplo, se você selecionou Acesso privado (Integração VNet) quando criou o servidor, não poderá alterar a configuração para Acesso público (endereços IP permitidos) após a implantação. É altamente recomendável que você crie um servidor que tenha acesso privado para acessar seu servidor com segurança usando a integração de rede virtual. Para obter mais informações sobre acesso privado, consulte o artigo sobre conceitos de rede.
Se você quiser alterar quaisquer padrões, consulte a documentação de referência da CLI do Azure para obter a lista completa de parâmetros configuráveis da CLI do Azure.
Aqui está o resultado de exemplo:
Creating Resource Group 'groupXXXXXXXXXX'...
Creating new vnet "serverXXXXXXXXXVNET" in resource group "groupXXXXXXXXXX"...
Creating new subnet "serverXXXXXXXXXSubnet" in resource group "groupXXXXXXXXXX" and delegating it to "Microsoft.DBforMySQL/flexibleServers"...
Creating MySQL Server 'serverXXXXXXXXX' in group 'groupXXXXXXXXXX'...
Your server 'serverXXXXXXXXX' is using SKU 'Standard_B1ms' (Paid Tier). For pricing details, see https://aka.ms/mysql-pricing.
Creating MySQL database 'flexibleserverdb'...
Make a note of your password. If you forget your password, reset the password by running 'az mysql flexible-server update -n serverXXXXXXXXX -g groupXXXXXXXXXX -p <new-password>'.
{
"connectionString": "server=<server-name>.mysql.database.azure.com;database=flexibleserverdb;uid=secureusername;pwd=<password>",
"databaseName": "flexibleserverdb",
"host": "serverXXXXXXXXX.mysql.database.azure.com",
"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/groupXXXXXXXXXX/providers/Microsoft.DBforMySQL/flexibleServers/serverXXXXXXXXX",
"location": "East US 2",
"password": "<password>",
"resourceGroup": "groupXXXXXXXXXX",
"skuname": "Standard_B1ms",
"subnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/groupXXXXXXXXXX/providers/Microsoft.Network/virtualNetworks/serverXXXXXXXXXVNET/subnets/serverXXXXXXXXXSubnet",
"username": "secureusername",
"version": "5.7"
}
Se você quiser alterar quaisquer padrões, consulte a documentação de referência da CLI do Azure para obter a lista completa de parâmetros configuráveis da CLI do Azure.
Criar uma base de dados
Se você ainda não criou um banco de dados, crie um chamado newdatabase executando o seguinte comando:
az mysql flexible-server db create -d newdatabase
Nota
As conexões com o Banco de Dados do Azure para MySQL - Servidor Flexível se comunicam usando a porta 3306. Se você tentar se conectar de dentro de uma rede corporativa, o tráfego de saída pela porta 3306 pode não ser permitido. Você não pode se conectar ao servidor a menos que o departamento de TI abra a porta 3306.
Obter as informações da ligação
Para se conectar ao servidor, você precisa fornecer informações de host e credenciais de acesso:
az mysql flexible-server show --resource-group myresourcegroup --name mydemoserver
O resultado está no formato JSON. Anote os valores de fullyQualifiedDomainName
e administratorLogin
. Aqui está um exemplo da saída JSON:
{
"administratorLogin": "myadminusername",
"administratorLoginPassword": null,
"delegatedSubnetArguments": {
"subnetArmResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myresourcegroup/providers/Microsoft.Network/virtualNetworks/mydemoserverVNET/subnets/mydemoserverSubnet"
},
"fullyQualifiedDomainName": "mydemoserver.mysql.database.azure.com",
"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myresourcegroup/providers/Microsoft.DBforMySQL/flexibleServers/mydemoserver",
"location": "East US 2",
"name": "mydemoserver",
"publicNetworkAccess": "Disabled",
"resourceGroup": "myresourcegroup",
"sku": {
"capacity": 0,
"name": "Standard_B1ms",
"tier": "Burstable"
},
"storageProfile": {
"backupRetentionDays": 7,
"fileStorageSkuName": "Premium_LRS",
"storageAutogrow": "Disabled",
"storageIops": 0,
"storageMb": 10240
},
"tags": null,
"type": "Microsoft.DBforMySQL/flexibleServers",
"version": "5.7"
}
Conectar e testar a conexão usando a CLI do Azure
Você pode usar o Banco de Dados do Azure para MySQL - Servidor Flexível para se conectar ao seu servidor flexível usando o az mysql flexible-server connect
comando na CLI do Azure. Você pode usar esse comando para testar a conectividade com seu servidor de banco de dados, criar um banco de dados básico rápido e executar consultas diretamente em seu servidor sem instalar o mysql.exe ou o MySQL Workbench. Você também pode usar o comando no modo interativo para executar várias consultas ao mesmo tempo.
Execute o seguinte script para testar e validar a conexão com o banco de dados a partir do seu ambiente de desenvolvimento:
az mysql flexible-server connect -n <servername> -u <username> -p <password> -d <databasename>
Eis um exemplo:
az mysql flexible-server connect -n mysqldemoserver1 -u dbuser -p "dbpassword" -d newdatabase
Em uma conexão bem-sucedida, a saída como o exemplo a seguir aparece:
Connecting to newdatabase database.
Successfully connected to mysqldemoserver1.
Se a conexão falhar, tente estas soluções:
- Verifique se a porta 3306 está aberta na máquina cliente.
- Verifique se o nome de usuário e a senha do administrador do servidor estão corretos.
- Verifique se você configurou uma regra de firewall para sua máquina cliente.
- Certifique-se de que a máquina cliente está na mesma rede virtual que o servidor se você configurou o servidor para acesso privado em uma rede virtual.
Para executar uma única consulta, use o--querytext
argumento (-q
):
az mysql flexible-server connect -n <server-name> -u <username> -p "<password>" -d <database-name> --querytext "<query text>"
Eis um exemplo:
az mysql flexible-server connect -n mysqldemoserver1 -u dbuser -p "dbpassword" -d newdatabase -q "select * from table1;" --output table
Para saber mais sobre como usar az mysql flexible-server connect
o , consulte Guia de início rápido: conectar-se ao Banco de Dados do Azure para MySQL - Servidor flexível usando a CLI do Azure.
Conecte-se usando o cliente de linha de comando MySQL
Se você criou seu Banco de Dados do Azure para Servidor Flexível MySQL usando acesso privado com integração de rede virtual, conecte-se ao seu servidor a partir de um recurso que esteja na mesma rede virtual que seu servidor. Você pode criar uma máquina virtual e adicioná-la à rede virtual que foi criada quando você criou seu Banco de Dados do Azure para MySQL - instância do Servidor Flexível. Para saber mais, consulte Criar e gerenciar redes virtuais para o Banco de Dados do Azure para MySQL - Servidor flexível usando o portal do Azure.
Se você criou seu Banco de Dados do Azure para MySQL - instância do Servidor Flexível usando acesso público (endereços IP permitidos), poderá adicionar seu endereço IP local à lista de regras de firewall em seu servidor. Para obter orientações detalhadas, consulte Gerenciar regras de firewall para o Banco de Dados do Azure para MySQL - Servidor flexível usando o portal do Azure.
Para se conectar ao servidor a partir do seu ambiente local, você pode usar o mysql.exe ou Usar o MySQL Workbench com o Banco de Dados do Azure para MySQL - Servidor Flexível. O Banco de Dados do Azure para MySQL - Servidor Flexível dá suporte à conexão de seus aplicativos cliente ao serviço Banco de Dados do Azure para MySQL - Servidor Flexível usando TLS (Transport Layer Security), anteriormente conhecido como SSL (Secure Sockets Layer). O TLS é um protocolo padrão do setor que garante conexões de rede criptografadas entre o servidor de banco de dados e os aplicativos cliente, para que você possa cumprir os requisitos de conformidade. Para se conectar usando seu Banco de Dados do Azure para Servidor Flexível MySQL, baixe o certificado SSL público para verificação da autoridade de certificação. Para saber mais sobre como se conectar usando conexões criptografadas ou desabilitar SSL, consulte Conectar-se ao Banco de Dados do Azure para MySQL - Servidor flexível com conexões criptografadas.
O exemplo a seguir mostra como se conectar ao seu Banco de Dados do Azure para o Servidor Flexível MySQL usando a ferramenta de cliente de linha de comando MySQL. Você pode instalar a ferramenta se ela ainda não estiver instalada. Baixe o certificado DigiCertGlobalRootCA necessário para conexões SSL. Use a configuração da cadeia de conexão para impor a --ssl-mode=REQUIRED
verificação do certificado TLS/SSL. Passe o caminho do arquivo de certificado local para o --ssl-ca
parâmetro. Substitua os valores pelo nome e senha reais do servidor.
sudo apt-get install mysql-client
wget --no-check-certificate https://dl.cacerts.digicert.com/DigiCertGlobalRootCA.crt.pem
mysql -h mydemoserver.mysql.database.azure.com -u mydemouser -p --ssl-mode=REQUIRED --ssl-ca=DigiCertGlobalRootCA.crt.pem
Se você provisionou seu Banco de Dados do Azure para o Servidor Flexível MySQL usando o acesso público, também poderá usar o Azure Cloud Shell para se conectar ao seu Banco de Dados do Azure para Servidor Flexível MySQL usando o cliente MySQL pré-instalado.
Para usar o Azure Cloud Shell para se conectar ao seu Banco de Dados do Azure para o Servidor Flexível MySQL, permita o acesso à rede do Azure Cloud Shell ao seu Banco de Dados do Azure para o Servidor Flexível MySQL. Para permitir o acesso, vá para o painel Rede do portal do Azure para seu Banco de Dados do Azure para Servidor Flexível MySQL. Em Firewall, marque a caixa de seleção Permitir acesso público de qualquer serviço do Azure no Azure a este servidor , conforme mostrado na captura de tela a seguir. Em seguida, selecione Salvar para manter a configuração.
Nota
Selecione Permitir acesso público de qualquer serviço do Azure no Azure a este servidor apenas para desenvolvimento ou teste. Essa configuração configura o firewall para permitir conexões de endereços IP alocados a qualquer serviço ou ativo do Azure, incluindo conexões de outras assinaturas do Azure.
Selecione Experimentar para abrir o Azure Cloud Shell. No Cloud Shell, use os comandos a seguir para se conectar ao seu Banco de Dados do Azure para o Servidor Flexível MySQL. Use o nome do servidor, nome de usuário e senha no comando.
wget --no-check-certificate https://dl.cacerts.digicert.com/DigiCertGlobalRootCA.crt.pem
mysql -h mydemoserver.mysql.database.azure.com -u mydemouser -p --ssl=true --ssl-ca=DigiCertGlobalRootCA.crt.pem
Importante
Quando você se conectar ao seu Banco de Dados do Azure para Servidor Flexível MySQL usando o Cloud Shell, use o --ssl=true
parâmetro. Não utilize --ssl-mode=REQUIRED
.
O principal motivo pelo qual essa orientação é importante é que o Azure Cloud Shell é pré-instalado com o cliente mysql.exe da distribuição MariaDB. O cliente mysql.exe requer o --ssl
parâmetro. O cliente MySQL da distribuição Oracle requer o --ssl-mode
parâmetro.
Se você vir a seguinte mensagem de erro quando se conectar ao seu Banco de Dados do Azure para Servidor Flexível MySQL, não marcou a caixa de seleção Permitir acesso público de qualquer serviço do Azure no Azure para este servidor quando configurou suas regras de firewall ou a opção não foi salva. Defina as regras de firewall e tente novamente.
ERROR 2002 (HY000): Can't connect to MySQL server on <servername> (115)
Clean up resources (Limpar recursos)
Se você não precisar usar os recursos criados para este artigo em outro guia de início rápido ou tutorial, poderá excluí-los executando o seguinte comando:
az group delete --name myresourcegroup
Se pretender eliminar apenas o servidor flexível que criou, execute este comando:
az mysql flexible-server delete --resource-group myresourcegroup --name mydemoserver
Conteúdos relacionados
- Guia de início rápido: conectar-se ao Banco de Dados do Azure para MySQL - Servidor flexível usando a CLI do Azure
- Ligar à Base de Dados do Azure para MySQL – Servidor Flexível com ligações encriptadas
- Tutorial: Criar um PHP (Laravel) e um Banco de Dados do Azure para MySQL - Aplicativo de Servidor Flexível no Serviço de Aplicativo do Azure