Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Azure Database para PostgreSQL é um serviço gerido que pode usar para executar, gerir e escalar bases de dados PostgreSQL altamente disponíveis na cloud.
Este início rápido mostra-lhe como criar uma instância de servidor flexível do Azure Database para PostgreSQL usando o portal Azure, Azure CLI ou modelos Azure Resource Manager (ARM).
Pré-requisitos
Antes de começar, certifique-se de que tem:
- Uma assinatura do Azure. Se você não tiver uma, crie uma conta gratuita do Azure.
- Permissões apropriadas para criar recursos na sua subscrição.
Compreenda o que está a criar
Uma instância de servidor flexível Azure Database for PostgreSQL inclui:
- Um conjunto configurado de recursos de computação e armazenamento.
- Implementação dentro de um grupo de recursos Azure.
- Uma
postgresbase de dados criada por padrão. - Uma
azure_maintenancebase de dados para processos de serviços geridos. - Uma base de dados para funcionalidades de
azure_sysarmazenamento de consultas e ajuste de índices.
Observação
As ligações normalmente usam a porta 5432, ou a porta 6432 se estiverem ligadas através do pooler de ligação PgBouncer incorporado.
Criar servidor usando o portal Azure
Navegar até ao assistente de criação
- Inicie sessão no portal Azure.
- Selecione Criar um recurso no canto superior esquerdo.
- Em Categorias, selecione Bancos de dados.
- Encontre e selecione Azure Database para servidor flexível PostgreSQL.
- Selecione Criar.
Configurar as definições básicas
Detalhes do projeto
| Configuração | Valor sugerido | Observações |
|---|---|---|
| Subscription | A sua subscrição | Escolha onde faturar o recurso |
| Grupo de recursos | myresourcegroup | Criar novos ou selecionar os existentes |
Detalhes do servidor
| Configuração | Valor sugerido | Description |
|---|---|---|
| Nome do servidor | mydemoserver-pgsql | Deve ser globalmente único. O domínio .postgres.database.azure.com é adicionado automaticamente |
| Região | Região mais próxima de si | Considere conformidade, residência de dados, preços e proximidade aos utilizadores |
| Versão do PostgreSQL | Últimas novidades disponíveis | Atualmente apoiados: 18, 17, 16, 15, 14, 13, 12, 11 |
| Tipo de carga de trabalho | Desenvolvimento | O desenvolvimento utiliza SKUs Burstable. A produção utiliza Propósito Geral ou Memória Otimizada. |
| Zona de disponibilidade | Sem preferência | Útil para colocar na sua candidatura |
Alta disponibilidade
| Opção | SLA | Description |
|---|---|---|
| Disabled | 99,9% | Servidor único sem standby |
| Mesma zona | 99,95% | Em espera na mesma zona de disponibilidade |
| Zona redundante | 99,99% | Aguarde numa zona de disponibilidade diferente |
Authentication
| Configuração | Description | Recomendado |
|---|---|---|
| Método de autenticação | Como os usuários se autenticam |
-
Autenticação PostgreSQL apenas (para início rápido) - Autenticação Microsoft Entra (para produção) - Ambos (para flexibilidade) |
| Nome de utilizador de administrador | adminuser | - Deve ser de 1 a 63 caracteres - Apenas números e letras - Não é possível começar com pg_- Não podem ser nomes reservados pelo sistema |
| Senha | Palavra-passe complexa | Caracteres 8-128 com maiúsculas, minúsculas, números e caracteres especiais |
Configurar computação e armazenamento
Selecione Configurar servidor para personalizar:
Camada de computação
| Escalão de serviço | Caso de uso | Description |
|---|---|---|
| Burstable | Desenvolvimento | Para cargas de trabalho que não precisam de CPU cheia contínua |
| Uso Geral | Produção | Cargas de trabalho de produção mais comuns |
| Memória otimizada | Cargas de trabalho de alta memória | Cargas de trabalho que requerem uma elevada relação memória-CPU |
Definições de armazenamento
| Configuração | Pode mudar mais tarde | Description |
|---|---|---|
| Tipo de armazenamento | ❌ Não | SSD Premium ou SSD Premium v2 |
| Tamanho de armazenamento | ✅ Sim (apenas aumento) | Não é possível encolher após a criação |
| Nível de desempenho | ✅ Sim | Controla IOPS e rendimento |
| Crescimento automático do armazenamento | ✅ Sim | Expandir automaticamente ao aproximar-se dos limites |
Definições de cópia de segurança
| Configuração | Pode mudar mais tarde | Description |
|---|---|---|
| Retenção de reservas | ✅ Sim | 7-35 dias |
| Redundância de backup | ❌ Não | Localmente redundante, redundante de zona ou geo-redundante |
| Redundância geográfica | ❌ Não | Disponível apenas em regiões emparelhadas Azure |
Configurar rede
Escolhe o teu método de conectividade (não pode ser alterado após a criação):
Acesso público (endereços IP permitidos)
Liga-te através de um endpoint público usando regras de firewall.
Configurações:
| Configuração | Description |
|---|---|
| Permitir o acesso público | Permitir o acesso público para configurar regras de firewall |
| Permitir serviços do Azure | Permitir conexões de todos os serviços Azure |
| Adicionar IP atual do cliente | Adicione o seu endereço IP à lista de autorizações |
Acesso privado (integração com rede virtual)
Liga-te através de um endpoint privado dentro de uma rede virtual. Para mais informações, veja Rede com acesso privado para Azure Database for PostgreSQL.
Configurar a segurança
| Configuração | Pode mudar mais tarde | Opções |
|---|---|---|
| Chave de encriptação de dados | ❌ Não | Gestão de serviços ou gestão do cliente |
Adicionar tags de recursos (opcional)
Organize recursos com pares nome-valor:
| Nome | Valor | Propósito |
|---|---|---|
| Meio Ambiente | Desenvolvimento | Identificar o tipo de ambiente |
| CostCenter | IT-Dept | Acompanhar custos por departamento |
| Proprietário | admin@contoso.com | Identificar a parte responsável |
Revisar e criar
- Selecione Verificar + criar.
- Revê todas as configurações.
- Selecione Criar para implementar.
O desdobramento normalmente demora entre 5 a 10 minutos. Quando estiver concluído, selecione Ir para recurso para aceder ao seu servidor.
Criar servidor usando o Azure CLI
Pré-requisitos para CLI
Para esse script, use a CLI do Azure localmente, pois leva muito tempo para ser executado no Cloud Shell.
Iniciar sessão no Azure
Use o script a seguir para entrar usando uma assinatura específica.
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
Se usares Azure Cloud Shell, já tens sessão iniciada.
Criar servidor com CLI
Crie um servidor com um comando:
az postgres flexible-server create \
--resource-group myresourcegroup \
--name mydemoserver-pgsql \
--location eastus \
--admin-user myadmin \
--admin-password <password> \
--sku-name Standard_D4ds_v5 \
--tier GeneralPurpose \
--public-access 0.0.0.0 \
--storage-size 128 \
--tags "Environment=Development"
Referência de parâmetros CLI
| Parâmetro | Description | Example |
|---|---|---|
--resource-group |
Nome do grupo de recursos | myresourcegroup |
--name |
Nome de servidor globalmente único | mydemoserver-pgsql |
--location |
região do Azure | Eastus |
--admin-user |
Nome de utilizador do administrador | myadmin |
--admin-password |
Palavra-passe de administrador | YourPassword123! |
--sku-name |
SKU de Processamento | Standard_D4ds_v5 |
--tier |
Camada de computação | Intermitente, Uso Geral, Otimizado para Memória |
--storage-size |
Armazenamento em GB | 128 |
--public-access |
Endereços IP permitidos | 0.0.0.0 (todos os serviços Azure), endereço IP ou intervalo IP |
--version |
Versão do PostgreSQL | 16 |
--high-availability |
Modo HA | Desativado, SameZone, ZoneRedundant |
--backup-retention |
Dias de retenção de backup | 7-35 |
Exemplo avançado de CLI
Crie um servidor altamente disponível, redundante entre zonas.
az postgres flexible-server create \
--resource-group myresourcegroup \
--name mydemoserver-pgsql-ha \
--location eastus \
--admin-user myadmin \
--admin-password <password> \
--sku-name Standard_D4ds_v5 \
--tier GeneralPurpose \
--storage-size 256 \
--storage-type PremiumV2_LRS \
--high-availability ZoneRedundant \
--zone 1 \
--standby-zone 2 \
--backup-retention 14 \
--public-access 0.0.0.0
Criar servidor usando o modelo ARM
Visão geral do modelo ARM
Os templates do Azure Resource Manager (ARM) permitem-lhe definir infraestrutura como código. Utilize modelos para implementações repetitivas.
Modelo ARM mínimo
Guarde este ficheiro como postgres-server-template.json:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"serverName": {
"type": "string",
"metadata": {
"description": "Server name must be globally unique"
}
},
"administratorLogin": {
"type": "string",
"minLength": 1,
"maxLength": 63,
"metadata": {
"description": "Administrator username"
}
},
"administratorLoginPassword": {
"type": "securestring",
"minLength": 8,
"metadata": {
"description": "Administrator password"
}
},
"location": {
"type": "string",
"defaultValue": "[resourceGroup().location]",
"metadata": {
"description": "Server location"
}
}
},
"resources": [
{
"type": "Microsoft.DBforPostgreSQL/flexibleServers",
"apiVersion": "2024-08-01",
"name": "[parameters('serverName')]",
"location": "[parameters('location')]",
"sku": {
"name": "Standard_D4ds_v5",
"tier": "GeneralPurpose"
},
"properties": {
"administratorLogin": "[parameters('administratorLogin')]",
"administratorLoginPassword": "[parameters('administratorLoginPassword')]",
"version": "16",
"storage": {
"storageSizeGB": 128,
"type": "Premium_LRS",
"autoGrow": "Enabled"
},
"backup": {
"backupRetentionDays": 7,
"geoRedundantBackup": "Disabled"
},
"network": {
"publicNetworkAccess": "Enabled"
},
"highAvailability": {
"mode": "Disabled"
}
}
}
],
"outputs": {
"serverFQDN": {
"type": "string",
"value": "[reference(parameters('serverName')).fullyQualifiedDomainName]"
}
}
}
Implementar o modelo do Resource Manager
az group create --name myresourcegroup --location eastus
az deployment group create \
--resource-group myresourcegroup \
--template-file postgres-server-template.json \
--parameters \
serverName=mydemoserver-pgsql \
administratorLogin=myadmin \
administratorLoginPassword=<password>
Obter informações de conexão
Depois de criar o seu servidor, recupere os detalhes da ligação:
Usando o portal do Azure
- Vai ao teu servidor no portal Azure.
- Abra a página Descrição Geral.
- Copie estes valores:
-
Nome do servidor (Endpoint):
mydemoserver-pgsql.postgres.database.azure.com -
Login de administrador:
myadmin
-
Nome do servidor (Endpoint):
Utilizar a CLI do Azure
az postgres flexible-server show \
--resource-group myresourcegroup \
--name mydemoserver-pgsql \
--query "{serverName:fullyQualifiedDomainName, adminUser:administratorLogin}" \
--output table
Conecte-se usando psql
Instalar psql
Se não tiver ferramentas de cliente PostgreSQL, descarregue o PostgreSQL para a sua plataforma.
Liga-te ao teu servidor
psql "host=mydemoserver-pgsql.postgres.database.azure.com port=5432 dbname=postgres user=myadmin sslmode=require"
Quando solicitado, introduza a palavra-passe de administrador que definiu durante a criação do servidor.
Formato da cadeia de conexão
host=<server-name>.postgres.database.azure.com port=5432 dbname=<database-name> user=<admin-user> password=<password> sslmode=require
Verificar conexão
Depois de se conectarem, devem ver:
psql (14.13, server 16.4)
WARNING: psql major version 14, server major version 16.
Some psql features might not work.
SSL connection (protocol: TLSv1.3, cipher: TLS_AES_256_GCM_SHA384, bits: 256, compression: off)
Type "help" for help.
postgres=>
Criar uma base de dados
CREATE DATABASE user_database;
\c user_database
\q
Solução de problemas de conexão
Firewall bloqueando a ligação
Se vires:
connection to server at "mydemoserver-pgsql.postgres.database.azure.com" (###.###.###.###), port 5432 failed: Connection timed out
Solução: Adicionar o seu endereço IP às regras do firewall:
az postgres flexible-server firewall-rule create \
--resource-group myresourcegroup \
--name mydemoserver-pgsql \
--rule-name AllowMyIP \
--start-ip-address <your-ip> \
--end-ip-address <your-ip>
SSL necessário mas não configurado
Certifique-se de que a sua cadeia de ligação inclui sslmode=require.
Limpeza de recursos
Quando terminares o início rápido, apaga os recursos para evitar custos.
Eliminar todo o grupo de recursos
az group delete --name myresourcegroup --yes
Apague apenas o servidor
az postgres flexible-server delete \
--resource-group myresourcegroup \
--name mydemoserver-pgsql \
--yes