← Bancos de dados
MY

MySQL

Marque MySQL numa aplicação e o Railyard cria um banco de dados, um usuário, e injeta os dados de conexão antes do próximo build. Veja exatamente o que isso te dá, o que entra no backup, e como acessar de fora.

O que você ganha

  • MySQL 8 (mysql:8), um banco de dados e um usuário por aplicação (app_<id>), criados com CREATE DATABASE e CREATE USER e com privilégios concedidos no próprio banco mais qualquer banco extra declarado pela aplicação, por padrão.
  • Backups agendados a cada 24 horas por padrão, cada um confirmado ao ser restaurado. Os 7 mais recentes são sempre mantidos, e qualquer coisa com mais de 30 dias fora desse grupo é descartada; os dois números são configuráveis por banco de dados.
  • Um standby num segundo servidor de banco de dados (Pro e Team) mantém uma cópia viva e assume automaticamente se o primário parar de responder por 3 minutos, o mesmo mecanismo do Postgres.
  • Sem recuperação para um ponto no tempo no MySQL, isso é só para Postgres.
  • O MariaDB está disponível como alternativa direta no catálogo de templates, se você quiser o mesmo protocolo de rede num fork mantido pela comunidade.

Como adicionar

  1. 1

    Marque MySQL ao criar a aplicação

    Em Nova app, ou depois em Editar → Add-ons, marque MySQL e faça o deploy. O Railyard injeta DATABASE_URL, DATABASE_HOST, DATABASE_PORT, DATABASE_NAME, DATABASE_USER e DATABASE_PASSWORD antes de o build rodar.

  2. 2

    Ou adicione pela CLI

    railyard apps create <name> <git-url> --addons mysql faz a mesma coisa a partir de um terminal.

  3. 3

    Conecte-se a partir da sua própria máquina

    Abra Trusted addresses no card do banco de dados e libere o seu IP. O Railyard abre um proxy TCP só para esse endereço; qualquer cliente MySQL consegue então se conectar com a mesma senha, e o card te dá o comando exato para colar.

Um exemplo de um clique

O Ghost é uma plataforma de publicação completa que espera MySQL de fábrica, um exemplo direto de uma aplicação usando o add-on em vez de um banco vazio sem nada apontado para ele.

Fazer deploy de Ghost Plano Free, sem cartão.

Ou faça o deploy de uma instância independente faz o deploy de uma instância MySQL independente sem mais nada conectado, se for só isso que você precisa.

Perguntas frequentes

Quanto custa o MySQL no Railyard?
Não existe uma cobrança separada. O MySQL roda no servidor que você já está pagando, dentro do seu plano. Um servidor de banco de dados dedicado é um servidor próprio no preço normal, e um standby para failover automático exige Pro ou Team.
Como os backups são mantidos, e eu consigo restaurar um sozinho?
Todo banco de dados num servidor de banco de dados é salvo em backup num cronograma, 24 horas por padrão, e cada backup é restaurado num banco temporário para confirmar que está realmente bom antes de ser marcado como verificado. Restaurar para a aplicação em execução é um clique a partir do card do banco de dados.
Como me conecto de fora, com uma interface gráfica ou o cliente mysql?
Abra Trusted addresses no card do banco de dados e adicione o seu IP. O Railyard abre um proxy TCP só para esse endereço; qualquer outro endereço continua bloqueado e a senha ainda é exigida. O card mostra a string de conexão exata para colar.
Como eu migro um banco MySQL já existente?
Aponte a aplicação para a URL externa em Resources → Use an outside service enquanto copia os dados, ou rode mysqldump contra o seu banco antigo e redirecione direto para o DATABASE_URL gerado.

Tutoriais que usam este banco

Documentação geral