O que vem instalado no servidor PostgreSQL?
- PostgreSQL 18 do repositório oficial PGDG
- Uma função de superutilizador yonetici e uma base de dados vazia chamada uygulama
- Ligações remotas apenas por TLS, com autenticação por palavra-passe SCRAM-SHA-256
- Um certificado de servidor autoassinado
- O cliente de linha de comandos psql
- Definições em /etc/postgresql/18/main, com os nossos acrescentos em conf.d/seturack.conf
- Firewall com a porta 5432 aberta para a base de dados e a porta 22 para SSH
Que tamanho é necessário para o PostgreSQL?
O PostgreSQL não indica um valor oficial de RAM, porque o volume de dados e as ligações em simultâneo determinam o que precisa. Como regra geral, 1 GB é um começo para um projeto pequeno e 2 a 4 GB para uma aplicação em produção. Esta instalação não altera as definições de memória, por isso o shared_buffers fica no valor predefinido. A documentação oficial sugere 25 por cento da RAM como valor inicial num servidor que só executa a base de dados e tem 1 GB ou mais. Aumente-o você depois de aumentar o tamanho. O disco não pode diminuir mais tarde.
| Utilização | Tamanho | Preço | Escolher |
|---|---|---|---|
| Inicial | 1 GB RAM · 1 vCore · 25 GB NVMe | $2.58/mês | |
| Médio | 2 GB RAM · 1 vCore · 40 GB NVMe | $4.01/mês | |
| Potente | 4 GB RAM · 2 vCore · 60 GB NVMe | $6.89/mês |
Para quem é?
- Programadores cuja aplicação corre noutro local e que querem a base de dados no seu próprio servidor
- Equipas que querem um superutilizador para gerir funções, extensões e definições por si
- Projetos construídos sobre extensões como pgvector ou PostGIS
- Aplicações alojadas na Turquia que querem a base de dados em Istambul
O que acontece depois de encomendar?
- Defina o tamanho e conclua o pagamento.
- O seu servidor arranca e o PostgreSQL instala-se sozinho. Nos nossos testes em servidores reais, demorou cerca de 3 minutos.
- No separador Resumo do painel, copie as linhas Endereço de ligação, Utilizador e Palavra-passe.
- Teste a partir do seu computador: psql 'postgresql://yonetici:PASSWORD@IP:5432/uygulama?sslmode=require'
- Crie uma função e uma base de dados para a sua aplicação: CREATE ROLE api LOGIN PASSWORD 'new-password'; CREATE DATABASE api OWNER api;
- Limite o acesso: ufw delete allow 5432/tcp, e depois ufw allow from YOUR_IP to any port 5432
Em todos os servidores
- Cópias de segurança diárias incluídas no preço
- Tráfego ilimitado
- Acesso root completo
- Aumentar ou reduzir a RAM e o CPU mais tarde, e fazer crescer o disco
- Localização: Istanbul · IST-1.
Bom saber
- A porta 5432 está aberta à Internet. Se só os seus próprios servidores se ligarem, limite-a aos respetivos endereços IP na firewall.
- As ligações remotas sem TLS ou sem palavra-passe são recusadas, por isso sslmode=disable não funciona.
- O certificado é autoassinado. O sslmode=require cifra a ligação mas não prova a identidade do servidor; instale o seu próprio certificado para usar verify-full.
- A função yonetici apresentada no seu painel é um superutilizador, por isso não a use na cadeia de ligação da sua aplicação.
- As correções menores chegam por apt a partir do repositório PGDG. Executar apt upgrade e as atualizações de versão principal com pg_upgrade é da sua responsabilidade.
- O painel continua a mostrar a palavra-passe da instalação. Se a alterar com ALTER ROLE, guarde a nova em segurança.
PostgreSQL: perguntas e respostas
Como me ligo ao meu servidor PostgreSQL?
Obtenha o endereço de ligação e a palavra-passe no painel e use esta cadeia: postgresql://yonetici:PASSWORD@IP:5432/uygulama?sslmode=require. O psql, o DBeaver, o pgAdmin e qualquer cliente que aceite uma cadeia de ligação conseguem ligar-se com ela.
O PostgreSQL está aberto à Internet e como o fecho?
Sim, a porta 5432 está aberta, mas só são aceites ligações TLS com palavra-passe SCRAM. Para permitir apenas determinados endereços, execute ufw delete allow 5432/tcp e depois ufw allow from YOUR_IP to any port 5432.
De quanta RAM precisa o PostgreSQL?
O PostgreSQL não tem um valor oficial de RAM. Como regra geral, 1 GB é um bom ponto de partida para um projeto pequeno e 2 a 4 GB para uma aplicação em produção. Depois de aumentar o tamanho, aumente também o shared_buffers; a sugestão oficial é 25 por cento da RAM.
Porque recebo um erro de certificado ao ligar a partir do Node.js?
O driver node-postgres verifica o certificado quando vê sslmode=require e rejeita um autoassinado. Use sslmode=no-verify na cadeia de ligação. A ligação continua cifrada, mas a identidade do servidor não é verificada.
Posso instalar o pgvector ou o PostGIS?
Sim. O repositório PGDG já está no servidor, por isso execute apt install postgresql-18-pgvector como root e depois CREATE EXTENSION vector na sua base de dados. O PostGIS está no mesmo repositório como postgresql-18-postgis-3.
As cópias de segurança abrangem as minhas bases de dados?
Sim. É feita uma cópia de segurança do servidor todas as noites, são guardados os últimos 7 dias e isto está incluído no preço, com os ficheiros da base de dados como parte do disco. Para guardar uma cópia separada de uma base de dados ou tabela, use também o pg_dump.