Início Rápido: Criar um servidor da Base de Dados do Azure para PostgreSQL com a CLI do Azure

APLICA-SE A: Banco de Dados do Azure para PostgreSQL - Servidor Único

Importante

O Banco de Dados do Azure para PostgreSQL - Servidor Único está no caminho da desativação. É altamente recomendável que você atualize para o Banco de Dados do Azure para PostgreSQL - Servidor Flexível. Para obter mais informações sobre como migrar para o Banco de Dados do Azure para PostgreSQL - Servidor Flexível, consulte O que está acontecendo com o Banco de Dados do Azure para Servidor Único PostgreSQL?.

Este guia de início rápido mostra como usar os comandos da CLI do Azure no Azure Cloud Shell para criar um único Banco de Dados do Azure para o servidor PostgreSQL em cinco minutos.

Gorjeta

Considere usar o comando az postgres up Azure CLI mais simples. Experimente o guia de início rápido.

Se não tiver uma subscrição do Azure, crie uma conta gratuita do Azure 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.

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 Experimentar 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 o Cloud Shell abrir, verifique se o Bash está selecionado para o seu 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-o no Cloud Shell e pressione Enter para executá-lo.

Iniciar sessão no Azure

O Cloud Shell é autenticado automaticamente na conta inicial com a qual entrou conectado. Use o script a seguir para entrar usando uma assinatura diferente, substituindo <Subscription ID> pela sua ID de Assinatura 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, consulte definir assinatura ativa ou fazer login interativamente

Definir valores de parâmetros

Os valores a seguir são usados em comandos subsequentes para criar o banco de dados e os recursos necessários. Os nomes de servidor precisam ser globalmente exclusivos em todo o Azure para que a função $RANDOM seja usada para criar o nome do servidor.

Altere o local conforme apropriado para seu ambiente. Substitua 0.0.0.0 pelo intervalo de endereços IP para corresponder ao seu ambiente específico. Utilize o endereço IP público do computador que está a utilizar para restringir o acesso ao servidor apenas ao seu endereço IP.

# Variable block
let "randomIdentifier=$RANDOM*$RANDOM"
location="East US"
resourceGroup="msdocs-postgresql-rg-$randomIdentifier"
tag="create-postgresql-server-and-firewall-rule"
server="msdocs-postgresql-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 PostgreSQL server
startIp=0.0.0.0
endIp=0.0.0.0
echo "Using resource group $resourceGroup with login: $login, password: $password..."

Criar um grupo de recursos

Crie um grupo de recursos com o comando az group create. Um grupo de recursos do Azure é um contentor lógico no qual os recursos do Azure são implementados e geridos. O exemplo seguinte cria um grupo de recursos com o nome myResourceGroup na localização eastus:

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

Criar um servidor

Crie um servidor com o comando az postgres server create .

# Create a PostgreSQL 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 postgres server create --name $server --resource-group $resourceGroup --location "$location" --admin-user $login --admin-password $password --sku-name $sku

Nota

  • O nome do servidor pode conter apenas letras minúsculas, números e o caráter de hífen (-). Deve conter de 3 a 63 caracteres. Para obter mais informações, consulte Banco de Dados do Azure para Regras de Nomenclatura do PostgreSQL.
  • O nome de usuário do usuário administrador não pode ser azure_superuser, admin, administrator, root, guest ou public.
  • A senha deve conter de 8 a 128 caracteres de três das seguintes categorias: letras maiúsculas em inglês, letras minúsculas em inglês, números e caracteres não alfanuméricos.
  • Para obter informações sobre SKUs, consulte Banco de Dados do Azure para preços do PostgreSQL.

Importante

  • A versão padrão do PostgreSQL no seu servidor é 9.6. Para ver todas as versões suportadas, consulte Versões principais do PostgreSQL suportadas.
  • O SSL está ativado por padrão no seu servidor. Para obter mais informações sobre SSL, consulte Configurar conectividade SSL.

Configurar uma regra de firewall ao nível do servidor

Crie uma regra de firewall com o comando az postgres server firewall-rule create para dar ao seu ambiente local acesso para se conectar ao servidor.

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

Gorjeta

Se você não sabe seu endereço IP, vá para WhatIsMyIPAddress.com para obtê-lo.

Nota

Para evitar problemas de conectividade, certifique-se de que a firewall da rede permite a porta 5432. O Banco de Dados do Azure para servidores PostgreSQL usa essa porta.

Listar regras de firewall baseadas em servidor

Para listar as regras de firewall do servidor existentes, execute o comando az postgres server firewall-rule list .

# List firewall rules for the server
echo "List of server-based firewall rules for $server"
az postgres server firewall-rule list --resource-group $resourceGroup --server-name $server
# You may use the switch `--output table` for a more readable table format as the output.

A saída lista as regras de firewall, se houver, por padrão no formato JSON. Você pode usar o switch --output table para um formato de tabela mais legível como saída.

Obter as informações da ligação

Para se conectar ao servidor, forneça informações de host e credenciais de acesso.

az postgres server show --resource-group $resourceGroup --name $server

Anote os valores administratorLogin e fullyQualifiedDomainName .

Conectar-se ao Banco de Dados do Azure para servidor PostgreSQL usando psql

O cliente psql é uma escolha popular para se conectar a servidores PostgreSQL. Você pode se conectar ao seu servidor usando psql o Azure Cloud Shell. Você também pode usar psql em seu ambiente local, se você tiver disponível. Um banco de dados vazio, postgres, é criado automaticamente com um novo servidor PostgreSQL. Você pode usar esse banco de dados para se conectar com psqlo , conforme mostrado no código a seguir.

psql --host=<server_name>.postgres.database.azure.com --port=5432 --username=<admin_user>@<server_name> --dbname=postgres

Gorjeta

Se você preferir usar um caminho de URL para se conectar ao Postgres, codifice o sinal @ no nome de usuário com %40. Por exemplo, a cadeia de conexão para psql seria:

psql postgresql://<admin_user>%40<server_name>@<server_name>.postgres.database.azure.com:5432/postgres

Clean up resources (Limpar 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ê tenha uma necessidade contínua desses recursos. Alguns desses recursos podem demorar um pouco para criar, bem como para excluir.

az group delete --name $resourceGroup

Próximos passos