Pergunta

Sou bastante novo no Rails e no Heroku, mas estou pensando seriamente em usá -lo como uma plataforma para implantar meus aplicativos Ruby/Rails.

Quero usar todo o poder do Heroku, então prefiro o PostgreSQL "incorporado" gerenciado pelo Heroku em vez do Addon para a Amazon RDS para MySQL, mas não estou tão confiante sem a possibilidade de acessar meus dados em um cliente SQL. ..

Eu sei que em um aplicativo bem feito, você não precisa acessar o banco de dados, mas existem algumas situações (adicione linhas a uma tabela de configuração, consulte dados não mapeados em uma visualização, atualize algumas colunas para problemas de depuração, monitoramento de desempenho, execução de consultas para Relatórios, etc.) Quando isso pode ser bom ...

Como você resolve este problema? O que você experimenta em um aplicativo da vida real alimentado por Heroku?

Obrigado!

Foi útil?

Solução

Eu o uso há cerca de um ano. Adoro o fluxo de trabalho que ele fornece, mas acho que não ter acesso aos dados é um problema real. Suas opções para trabalhar com o banco de dados são:

Taps: em teoria, você cria seu banco de dados, como deseja localmente e usa torneiras para copiar o esquema e os dados para Heroku. Na prática, na maioria das vezes é incrivelmente grande. No entanto, atualmente estou lidando com a limpeza depois que as torneiras traduziram algumas das minhas colunas mal e corromperam meus dados.

Console Heroku: Totalmente bom para todas as coisas usuais do ActiveRecord, mas mais próximo que você pode obter do banco de dados é ActiveRecord :: base.Connection.Execute "Alguns SQL". Quando você se pergunta sobre os comandos de alteração de alteração como esse, você saberá que está com problemas.

Eles também fornecem um "pacote" como um método para fazer backup do seu aplicativo. Isso permite baixar todo o seu código mais um dump SQL do banco de dados. A dificuldade é que, como não há acesso direto ao banco de dados, não há como carregar o mesmo SQL Dump de volta no banco de dados para que você possa se recuperar do Dataloss, o que, para mim, é o ponto de ter esses arquivos de despejo para começar. Tudo o que você pode usar o pacote é criar um novo aplicativo (pacotes Heroku: animar), não restaurar um aplicativo atual.

Eu adoraria estar errado sobre qualquer um deles. Parece um ponto difícil curioso no melhor serviço de pensamento que eu conheço. O acesso ao banco de dados normalmente não parece muito desistir quando a maior parte do que você faz é tão fácil.

Para mim, o acesso ao banco de dados é como um extintor de incêndio. Geralmente não é grande coisa, mas quando isso importa, isso importa muito.

Outras dicas

eu uso admin_data para me dar algumas dicas sobre o que está acontecendo. Eu o usei com sucesso no Heroku, bem como em outros provedores de hospedagem.

Em primeiro lugar, deixe -me começar dizendo que Heroku é incrível. Tive uma ótima experiência em implantar meu aplicativo e integrar seus outros serviços, como o WebSolr.

Com isso dito, suas perguntas:

Obtendo seus dados

Se você deseja obter seus dados que você pode usar torneiras Para puxar seu banco de dados remoto para baixo localmente. Isso pode ser útil para depuração.

Monitoramento de desempenho

Use novo RPM Relic. Isso ocorre como parte do Heroku, você pode ativá-lo no menu complementos.

Consultas de banco de dados add-hoc

Você pode escrever um controlador que permite executar o SQL arbitrário e visualizar os resultados, mas isso não é algo que eu recomendo. Como sugestão admin_data é uma boa solução para gerenciar seus dados, mas se você quiser fazer algo mais complicado, terá que recorrer a escrever o código sozinho.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top