O que vem instalado no seu servidor PostgreSQL?
- PostgreSQL 18 do repositório oficial PGDG
- Um papel de superusuário yonetici e um banco de dados vazio chamado uygulama
- Conexões remotas somente por TLS, com autenticação de senha SCRAM-SHA-256
- Um certificado de servidor autoassinado
- O cliente de linha de comando psql
- Configurações em /etc/postgresql/18/main, com nossos acréscimos em conf.d/seturack.conf
- Firewall com a porta 5432 aberta para o banco de dados e a porta 22 para o SSH
Qual tamanho você precisa para PostgreSQL?
O PostgreSQL não dá um valor oficial de RAM, já que o tamanho dos dados e o número de conexões simultâneas definem o que você precisa. Como regra prática, 1 GB é um começo para um projeto pequeno e de 2 a 4 GB para um app em produção. Esta instalação não mexe nas configurações de memória, então shared_buffers fica no valor padrão. A documentação oficial sugere 25 por cento da RAM como valor inicial em um servidor que roda apenas o banco de dados e tem 1 GB ou mais. Aumente você mesmo depois de escalar. O disco não pode diminuir depois.
| Uso | 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 é?
- Desenvolvedores cujo app roda em outro lugar e que querem o banco de dados em um servidor próprio
- Equipes que querem um superusuário para gerenciar papéis, extensões e configurações por conta própria
- Projetos construídos com extensões como pgvector ou PostGIS
- Apps hospedados na Turquia que querem o banco de dados em Istanbul
O que acontece depois do pedido?
- Defina o tamanho e conclua o pagamento.
- Seu servidor inicia e o PostgreSQL se instala sozinho. Nos nossos testes em servidores reais, isso levou cerca de 3 minutos.
- Na aba Visão geral do painel, copie as linhas Endereço de conexão, Login e Senha.
- Teste do seu computador: psql 'postgresql://yonetici:SENHA@IP:5432/uygulama?sslmode=require'
- Crie um papel e um banco de dados para o seu app: CREATE ROLE api LOGIN PASSWORD 'nova-senha'; CREATE DATABASE api OWNER api;
- Limite o acesso: ufw delete allow 5432/tcp e depois ufw allow from SEU_IP to any port 5432
Em todo servidor
- Backup diário incluído no preço
- Tráfego ilimitado
- Acesso root completo
- Aumente ou reduza RAM e CPU depois, e aumente o disco
- Localização: Istanbul · IST-1.
Bom saber
- A porta 5432 está aberta para a internet. Se só os seus próprios servidores se conectam, limite o acesso aos endereços IP deles no firewall.
- Conexões remotas sem TLS ou sem senha são recusadas, então sslmode=disable não funciona.
- O certificado é autoassinado. O sslmode=require criptografa a conexão, mas não comprova a identidade do servidor; instale seu próprio certificado para usar verify-full.
- O papel yonetici exibido no seu painel é um superusuário, então não o coloque na string de conexão do seu app.
- Os patches menores chegam pelo apt, a partir do repositório PGDG. Executar apt upgrade e fazer upgrades de versão maior com pg_upgrade é responsabilidade sua.
- O painel continua mostrando a senha da instalação. Se você a alterar com ALTER ROLE, guarde a nova com cuidado.
Perguntas e respostas sobre PostgreSQL
Como me conecto ao meu servidor PostgreSQL?
Pegue o endereço de conexão e a senha no seu painel e use esta string: postgresql://yonetici:SENHA@IP:5432/uygulama?sslmode=require. O psql, o DBeaver, o pgAdmin e qualquer cliente que aceite uma string de conexão conseguem se conectar com ela.
O PostgreSQL está aberto para a internet e como faço para fechá-lo?
Sim, a porta 5432 está aberta, mas só são aceitas conexões TLS com senha SCRAM. Para permitir apenas endereços específicos, execute ufw delete allow 5432/tcp e depois ufw allow from SEU_IP to any port 5432.
De quanta RAM o PostgreSQL precisa?
O PostgreSQL não tem um valor oficial de RAM. Como regra prática, 1 GB é um bom começo para um projeto pequeno e de 2 a 4 GB para um app em produção. Depois de escalar, aumente também o shared_buffers; a sugestão oficial é 25 por cento da RAM.
Por que recebo um erro de certificado ao conectar pelo Node.js?
O driver node-postgres verifica o certificado quando vê sslmode=require e rejeita um autoassinado. Use sslmode=no-verify na string de conexão. A conexão continua criptografada, mas a identidade do servidor não é verificada.
Posso instalar o pgvector ou o PostGIS?
Sim. O repositório PGDG já está no servidor, então execute apt install postgresql-18-pgvector como root e depois CREATE EXTENSION vector no seu banco de dados. O PostGIS está no mesmo repositório, como postgresql-18-postgis-3.
Os backups incluem meus bancos de dados?
Sim. Seu servidor tem backup toda noite, com os últimos 7 dias guardados, e isso está incluído no preço; os arquivos do banco de dados fazem parte do disco. Para manter uma cópia separada de um banco ou de uma tabela, use também o pg_dump.