Tutorial: Projetar um Banco de Dados do Azure para MariaDB usando a CLI do Azure

Importante

O Banco de Dados do Azure para MariaDB está no caminho da aposentadoria. É altamente recomendável migrar para o Banco de Dados do Azure para MySQL. Para obter mais informações sobre como migrar para o Banco de Dados do Azure para MySQL, consulte O que está acontecendo com o Banco de Dados do Azure para MariaDB?.

O Banco de Dados do Azure para MariaDB é um serviço de banco de dados relacional na nuvem da Microsoft baseado no mecanismo de banco de dados MariaDB Community Edition. Neste tutorial, utiliza a CLI do Azure (interface de linha de comandos) e outros utilitários para saber como:

  • Criar um Azure Database for MariaDB
  • Configurar a firewall do servidor
  • Utilize a ferramenta da linha de comandos mysql para criar uma base de dados
  • Carregar dados de exemplo
  • Consultar os dados
  • Atualizar dados
  • Restaurar dados

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

Pré-requisitos

  • Use o ambiente Bash no Azure Cloud Shell. Para obter mais informações, consulte Guia de início rápido para Bash no Azure Cloud Shell.

  • Se preferir executar comandos de referência da CLI localmente, instale a CLI do Azure. Se estiver a utilizar o Windows ou macOS, considere executar a CLI do Azure num contentor Docker. Para obter mais informações, consulte Como executar a CLI do Azure em um contêiner do Docker.

    • Se estiver a utilizar uma instalação local, inicie sessão no CLI do Azure ao utilizar o comando az login. Para concluir o processo de autenticação, siga os passos apresentados no seu terminal. Para outras opções de entrada, consulte Entrar com a CLI do Azure.

    • Quando solicitado, instale a extensão da CLI do Azure na primeira utilização. Para obter mais informações sobre as extensões, veja Utilizar extensões com o CLI do Azure.

    • Execute o comando az version para localizar a versão e as bibliotecas dependentes instaladas. Para atualizar para a versão mais recente, execute o comando az upgrade.

  • Este artigo requer a versão 2.0 ou posterior da CLI do Azure. Se estiver usando o Azure Cloud Shell, a versão mais recente já está instalada.

Se tiver várias subscrições, escolha a subscrição adequada na qual o recurso existe ou é cobrado. Selecione um ID de subscrição específica na sua conta com o comando az account set.

az account set --subscription 00000000-0000-0000-0000-000000000000

Criar um grupo de recursos

Crie um grupo de recursos do Azure com o comando az group create. Um grupo de recursos é um contentor lógico no qual os recursos do Azure são implementados e geridos como um grupo.

O exemplo seguinte cria um grupo de recursos com o nome myresourcegroup na localização westus.

az group create --name myresourcegroup --location westus

Criar um Azure Database for MariaDB Server

Crie um Banco de Dados do Azure para o servidor MariaDB com o az mariadb server create comando. Cada servidor pode gerir múltiplas bases de dados. Geralmente, é utilizada uma base de dados em separado para cada projeto ou para cada utilizador.

O exemplo a seguir cria um Banco de Dados do Azure para o servidor MariaDB localizado no westus grupo myresourcegroup de recursos com o nome mydemoserver. O servidor tem um início de sessão de administrador com o nome myadmin. É um servidor de uso geral, Gen 5 com 2 vCores. Substitua <server_admin_password> pelo seu próprio valor.

az mariadb server create --resource-group myresourcegroup --name mydemoserver --location westus --admin-user myadmin --admin-password <server_admin_password> --sku-name GP_Gen5_2 --version 10.2

O valor do parâmetro sku-name segue a convenção {pricing tier}_{compute generation}_{vCores} como nos exemplos abaixo:

  • --sku-name B_Gen5_4 mapeia para Básico, Ger 5 e 4 vCores.
  • --sku-name GP_Gen5_32 mapeia para Fins Gerais, Ger 5 e 32 vCores.
  • --sku-name MO_Gen5_2 mapeia para Otimizada para Memória, Ger 5 e 2 vCores.

Leia a documentação dos escalões de preços para entender os valores válidos por região e por escalão.

Importante

O início de sessão e a palavra-passe de administrador de servidor que especificar aqui serão necessários para iniciar sessão no servidor e nas respetivas bases de dados mais tarde neste início rápido. Lembre-se ou grave estas informações para utilização posterior.

Configurar a regra de firewall

Crie uma regra de firewall no nível de servidor do Banco de Dados do Azure para MariaDB com o az mariadb server firewall-rule create comando. Uma regra de firewall no nível de servidor permite que um aplicativo externo, como a ferramenta de linha de comando mysql ou o MySQL Workbench, se conecte ao seu servidor por meio do firewall do serviço Azure MariaDB.

O exemplo seguinte cria uma regra de firewall chamada AllowMyIP que permite ligações a partir de um endereço IP específico, 192.168.0.1. Substitua o endereço IP ou intervalo de endereços IP que correspondem ao local onde os irá ligar.

az mariadb server firewall-rule create --resource-group myresourcegroup --server mydemoserver --name AllowMyIP --start-ip-address 192.168.0.1 --end-ip-address 192.168.0.1

Obter as informações da ligação

Para ligar ao seu servidor, terá de fornecer credenciais de acesso e informações de anfitrião.

az mariadb server show --resource-group myresourcegroup --name mydemoserver

O resultado está no formato JSON. Aponte o fullyQualifiedDomainName e o administratorLogin.

{
  "administratorLogin": "myadmin",
  "administratorLoginPassword": null,
  "fullyQualifiedDomainName": "mydemoserver.mariadb.database.azure.com",
  "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myresourcegroup/providers/Microsoft.DBforMariaDB/servers/mydemoserver",
  "location": "westus",
  "name": "mydemoserver",
  "resourceGroup": "myresourcegroup",
"sku": {
    "capacity": 2,
    "family": "Gen5",
    "name": "GP_Gen5_2",
    "size": null,
    "tier": "GeneralPurpose"
  },
  "sslEnforcement": "Enabled",
  "storageProfile": {
    "backupRetentionDays": 7,
    "geoRedundantBackup": "Disabled",
    "storageMb": 5120
  },
  "tags": null,
  "type": "Microsoft.DBforMariaDB/servers",
  "userVisibleState": "Ready",
  "version": "10.2"
}

Ligar ao servidor com o mysql

Utilize a ferramenta de linha de comandos mysql para estabelecer uma ligação ao servidor do Azure Database for MariaDB. Neste exemplo, o comando é:

mysql -h mydemoserver.database.windows.net -u myadmin@mydemoserver -p

Criar uma base de dados vazia

Quando estiver conectado ao servidor, crie um banco de dados em branco.

mysql> CREATE DATABASE mysampledb;

Na linha de comandos, execute o comando seguinte para mudar a ligação para a base de dados recentemente criada:

mysql> USE mysampledb;

Criar tabelas na base de dados

Agora que você sabe como se conectar ao Banco de Dados do Azure para banco de dados MariaDB, conclua algumas tarefas básicas.

Em primeiro lugar, crie uma tabela e carregue-a com alguns dados. Vamos criar uma tabela que armazena informações de inventário.

CREATE TABLE inventory (
    id serial PRIMARY KEY, 
    name VARCHAR(50), 
    quantity INTEGER
);

Carregar dados para as tabelas

Agora que tem uma tabela, insira alguns dados na mesma. Na janela da linha de comandos aberta, execute a seguinte consulta para inserir algumas linhas de dados.

INSERT INTO inventory (id, name, quantity) VALUES (1, 'banana', 150); 
INSERT INTO inventory (id, name, quantity) VALUES (2, 'orange', 154);

Tem agora duas linhas de dados de exemplo nas tabelas que criou anteriormente.

Consultar e atualizar os dados nas tabelas

Execute a seguinte consulta para obter informações da tabela de base de dados.

SELECT * FROM inventory;

Também pode atualizar os dados nas tabelas.

UPDATE inventory SET quantity = 200 WHERE name = 'banana';

A linha é atualizada em conformidade ao obter dados.

SELECT * FROM inventory;

Restaurar uma base de dados para um ponto anterior no tempo

Imagine que eliminou acidentalmente esta tabela. É algo de que não é fácil recuperar. O Banco de Dados do Azure para MariaDB permite que você volte a qualquer point-in-time nos últimos até 35 dias e restaure esse point-in-time para um novo servidor. Pode utilizar este servidor novo para recuperar os dados eliminados. Os passos seguintes restauram o servidor de exemplo para um ponto antes da tabela ter sido adicionada.

Para o restauro, precisa das seguintes informações:

  • Ponto de restauro: selecione uma hora antes do servidor ter sido alterado. Tem de ser maior ou igual ao valor da Cópia de segurança mais antiga da base de dados de origem.
  • Servidor de destino: indique um novo nome de servidor para o qual pretende restaurar
  • Servidor de origem: indique o nome do servidor do qual pretende restaurar
  • Localização: não pode selecionar a região, por predefinição é igual ao servidor de origem
az mariadb server restore --resource-group myresourcegroup --name mydemoserver-restored --restore-point-in-time "2017-05-4 03:10" --source-server-name mydemoserver

O comando az mariadb server restore precisa dos seguintes parâmetros:

Definição Valor sugerido Descrição
resource-group  myresourcegroup  O grupo de recursos no qual se encontra o servidor de origem. 
nome mydemoserver-restored O nome do novo servidor que é criado pelo comando restore.
restore-point-in-time 2017-04-13T13:59:00Z Selecione um ponto anterior no tempo para o qual restaurar. Esta data e hora têm de estar dentro do período de retenção de cópias de segurança do servidor de origem. Utilize o formato de data e hora ISO8601. Por exemplo, pode utilizar o seu fuso horário local, como 2017-04-13T05:59:00-08:00, ou utilizar o formato UTC Zulu 2017-04-13T13:59:00Z.
source-server mydemoserver O nome ou ID do servidor de origem do qual pretende restaurar.

Restaurar um servidor para um ponto anterior no tempo cria um novo servidor, copiado como o servidor original do ponto anterior no tempo que especificar. A localização e os valores do escalão de preço do servidor restaurado são os mesmos do servidor de origem.

O comando é síncrono e irá regressar depois de o servidor ser restaurado. Depois de o restauro ser concluído, localize o novo servidor que foi criado. Certifique-se de que os dados foram restaurados conforme esperado.

Próximos passos

Neste tutorial, aprendeu a:

  • Criar um Azure Database for MariaDB Server
  • Configurar a firewall do servidor
  • Utilize a ferramenta da linha de comandos mysql para criar uma base de dados
  • Carregar dados de exemplo
  • Consultar os dados
  • Atualizar dados
  • Restaurar dados