Três bancos
PostgreSQL 17, MySQL 8.4 e Redis 8, e o MongoDB 8.0 em breve. Você escolhe o tipo, o nome e a memória.
Conecta pelo nome
Um banco
loja-db responde em loja-db:5432 para os projetos da sua conta.Senha forte
Gerada pela Cube e guardada cifrada. Só aparece quando você pede, e fica registrado na Atividade.
Backup todo dia
Um backup por dia com o banco no ar, guardado por 7 dias, para baixar ou restaurar.
Planos e memória
Bancos vêm a partir do plano Stack. A memória do banco sai da mesma memória do plano que a dos projetos, e cada banco tem 2 GB de espaço.
O MongoDB aparece no Novo banco como Em breve e ainda não pode ser criado; pela API,
mongodb responde engine_unavailable.
A memória fica reservada no plano mesmo com o banco parado, como a de um projeto parado. Veja Planos e memória.
Criar um banco
1
Abra Bancos de dados
No painel, clique em Bancos de dados na barra lateral e depois em Novo banco.
2
Escolha o tipo, o nome e a memória
O nome é também o endereço que os projetos usam, então tem de 3 a 32 caracteres, só letras minúsculas sem acento, números e hífen, e começa com letra (ex.:
loja-db). Ele não repete na sua conta.3
Pronto
Em alguns segundos o banco fica No ar. A página dele mostra a conexão, o uso de memória e disco e os backups.
Conectar um projeto
A página do banco mostra, em Conexão, o endereço interno, a porta, o usuário, a senha e a string de conexão pronta. Ela vai numa variável de ambiente do projeto:
O usuário é
cube (default no Redis) e o banco dentro do servidor tem o nome com _ no lugar de - (loja-db vira loja_db).
Três jeitos de ligar o banco a um projeto, sem copiar a senha à mão:
- Na página do banco, em Ligar a um projeto: escolha o projeto e clique em Ligar ao projeto. As outras variáveis do projeto ficam como estão.
- No Novo projeto, no campo Banco de dados: a conexão entra na variável antes de o projeto iniciar.
- Nas Variáveis de ambiente do projeto, em Ligar banco: a conexão entra na lista e é salva com Salvar alterações.
A conexão sem TLS é normal aqui: o banco e o projeto conversam dentro da rede da sua conta, sem passar pela internet.
Só a sua conta alcança
- Os projetos da sua conta chegam ao banco pelo nome. Projetos de outras contas não chegam, nem pelo nome nem pelo endereço.
- Outra conta pode ter um banco com o mesmo nome: para os projetos dela, o nome leva ao banco dela.
- A senha só aparece para a sua conta: no painel, com Mostrar senha ou copiar; pela API, só com a chave de leitura e escrita (Ver a conexão). Cada vez que ela aparece, fica registrado na Atividade.
Acesso externo
Para conectar de fora da Cube (do seu computador, de um app de banco como DBeaver ou TablePlus, de um script), ligue o Acesso externo na página do banco. O banco continua fora da internet: a conexão chega por um túnel e só passa com o certificado de cliente daquele banco, e o banco ainda pede a senha.1
Ligue e guarde o certificado
Na página do banco, em Acesso externo, clique em Ligar acesso externo e em Gerar certificado. Os arquivos aparecem uma vez só:
<nome>.p12e a senha dele, para apps de banco;<nome>.crt(certificado),<nome>.key(chave) ecube-ca.pem(a CA da Cube), parapsql,mysqleredis-cli.
2
Instale o cloudflared
É o programa gratuito que abre o túnel no seu computador.
3
Abra o túnel
Deixe este comando rodando num terminal. Ele abre a porta só no seu computador (
127.0.0.1):Mais de um banco ao mesmo tempo? Um túnel por banco, cada um numa porta.
4
Conecte
Em outro terminal, na pasta dos arquivos. A senha é a do banco, em Conexão, e o programa pede na hora.No app de banco, use o endereço
127.0.0.1 e a porta do túnel, ligue o SSL e escolha o .p12 (com a senha dele) ou os três arquivos .pem.- Um certificado por banco. Ele só abre o banco dele, por 2 anos. O painel mostra quando ele foi gerado e até quando vale.
- Gerar outro certificado faz o atual parar na hora, e as conexões abertas com ele caem. Use se perdeu os arquivos ou acha que eles vazaram.
- Desligar faz o mesmo e fecha o acesso de fora. Os projetos da sua conta seguem conectando pelo endereço interno.
- A conexão é cifrada de ponta a ponta, e
sslmode=verify-full(no MySQL,VERIFY_IDENTITY) confere que do outro lado está o seu banco na Cube. - O
psqlde qualquer versão funciona. No PostgreSQL 17, dá para somarsslnegotiation=direct. - Parado, o banco não aceita conexão de fora; os projetos da conta também não.
Iniciar e parar
Parar guarda os dados e mantém a memória reservada no plano; os projetos que usam o banco perdem a conexão até você Iniciar de novo. Iniciar só liga se o banco couber no plano de agora, somando a memória dos projetos e bancos ligados. Se o banco cair, ele volta sozinho. Se a conta for suspensa por falta de pagamento, os bancos param junto com os projetos, e pagar religa os que estavam no ar. Veja Pagamento por Pix.Backups
Com o banco no ar, a Cube faz um backup por dia e guarda por 7 dias. Banco parado não ganha o backup do dia. Se o do dia não sair, ele sai de novo em 1 hora.- Baixar: o arquivo sai no formato da ferramenta do próprio banco (PostgreSQL
.dump, MySQL.sql.gz, MongoDB.archive.gz, Redis.rdb), por um link de 5 minutos só para a sua conta. - Restaurar: troca os dados do banco pelos do backup, só no mesmo banco de onde ele saiu e só pelo painel.
- PostgreSQL, MySQL e MongoDB: o banco precisa estar no ar. As tabelas e coleções que estão no backup voltam ao que eram; o que foi criado depois dele fica. Os projetos que usam o banco veem os dados mudando: pare-os antes, se preferir.
- Redis: os dados de agora são trocados pelos do backup inteiro. O banco para por alguns segundos e volta como estava.
Excluir
Em Zona de perigo, na página do banco, Excluir banco pede o nome para confirmar. O banco para e os dados e os backups dele são apagados, sem volta. A variável com a conexão continua nos projetos: apague-a em Variáveis de ambiente se não for usar.Pela API
Excluir um banco, restaurar um backup e gerar o certificado do acesso externo ficam só no painel.

