Tengo una aplicación que usa postgres endesarrollo y producción. Recientemente empujé a Heroku y todo estaba funcionando bien. Pude extraer la base de datos de heroku y volver a subir sin problemas. Hoy, sin embargo, intenté quitar la base de datos de heroku y recibí este error
heroku db:pull
Loaded Taps v0.3.24
Auto-detected local database: postgres://postgres:a@127.0.0.1/app_development?encoding=utf8
Warning: Data in the database "postgres://postgres:a@127.0.0.1/app_development?encoding=utf8" will be overwritten and will not be recoverable.
! WARNING: Destructive Action
! This command will affect the app: app
! To proceed, type "app" or re-run this command with --confirm app
> app
Receiving schema
Unable to fetch tables information from http://heroku:osui59a24am79x@taps19.heroku.com. Please check the server log.
Entonces corro heroku logs
después:
james@james-Vostro-3550:~/Desktop/app$ heroku logs
2012-09-25T10:08:32+00:00 app[web.1]: Started GET "/users" for X.X.X.X at 2012-09-25 10:08:32 +0000
2012-09-25T10:08:32+00:00 heroku[router]: GET app.herokuapp.com/users? dyno=web.1 queue=0 wait=0ms service=38ms status=200 bytes=10727
2012-09-25T10:08:32+00:00 app[web.1]:
2012-09-25T10:08:32+00:00 app[web.1]:
2012-09-25T10:08:32+00:00 app[web.1]: Started GET "/application.css" for X.X.X.X at 2012-09-25 10:08:32 +0000
2012-09-25T10:08:32+00:00 app[web.1]:
2012-09-25T10:08:32+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/actionpack-3.2.6/lib/action_dispatch/middleware/debug_exceptions.rb:21:in `call"
2012-09-25T10:08:32+00:00 app[web.1]: ActionController::RoutingError (No route matches [GET] "/application.css"):
2012-09-25T10:08:32+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/actionpack-3.2.6/lib/action_dispatch/middleware/show_exceptions.rb:56:in `call"
2012-09-25T10:08:32+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/railties-3.2.6/lib/rails/rack/logger.rb:26:in `call_app"
2012-09-25T10:08:32+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/railties-3.2.6/lib/rails/rack/logger.rb:16:in `call"
2012-09-25T10:08:32+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/actionpack-3.2.6/lib/action_dispatch/middleware/request_id.rb:22:in `call"
2012-09-25T10:08:32+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/methodoverride.rb:21:in `call"
2012-09-25T10:08:32+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/runtime.rb:17:in `call"
2012-09-25T10:08:32+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/activesupport-3.2.6/lib/active_support/cache/strategy/local_cache.rb:72:in `call"
2012-09-25T10:08:32+00:00 heroku[router]: GET app.herokuapp.com/application.css dyno=web.1 queue=0 wait=0ms service=6ms status=404 bytes=728
2012-09-25T10:08:32+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/lock.rb:15:in `call"
2012-09-25T10:08:32+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/actionpack-3.2.6/lib/action_dispatch/middleware/static.rb:62:in `call"
2012-09-25T10:08:32+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/rack-cache-1.2/lib/rack/cache/context.rb:136:in `forward"
2012-09-25T10:08:32+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/rack-cache-1.2/lib/rack/cache/context.rb:245:in `fetch"
2012-09-25T10:08:32+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/rack-cache-1.2/lib/rack/cache/context.rb:185:in `lookup"
2012-09-25T10:08:32+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/rack-cache-1.2/lib/rack/cache/context.rb:66:in `call!"
2012-09-25T10:08:32+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/rack-cache-1.2/lib/rack/cache/context.rb:51:in `call"
2012-09-25T10:08:32+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/railties-3.2.6/lib/rails/engine.rb:479:in `call"
2012-09-25T10:08:32+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/railties-3.2.6/lib/rails/application.rb:220:in `call"
2012-09-25T10:08:32+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/railties-3.2.6/lib/rails/railtie/configurable.rb:30:in `method_missing"
2012-09-25T10:08:32+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/thin-1.4.1/lib/thin/connection.rb:78:in `catch"
2012-09-25T10:08:32+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/thin-1.4.1/lib/thin/connection.rb:80:in `block in pre_process"
2012-09-25T10:08:32+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/thin-1.4.1/lib/thin/connection.rb:53:in `process"
2012-09-25T10:08:32+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/thin-1.4.1/lib/thin/connection.rb:78:in `pre_process"
2012-09-25T10:08:32+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/thin-1.4.1/lib/thin/connection.rb:38:in `receive_data"
2012-09-25T10:08:32+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/eventmachine-0.12.10/lib/eventmachine.rb:256:in `run_machine"
2012-09-25T10:08:32+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/eventmachine-0.12.10/lib/eventmachine.rb:256:in `run"
2012-09-25T10:08:32+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/thin-1.4.1/lib/thin/backends/base.rb:63:in `start"
2012-09-25T10:08:32+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/thin-1.4.1/lib/thin/server.rb:159:in `start"
2012-09-25T10:08:32+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/thin-1.4.1/lib/thin/controllers/controller.rb:86:in `start"
2012-09-25T10:08:32+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/thin-1.4.1/lib/thin/runner.rb:185:in `run_command"
2012-09-25T10:08:32+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/thin-1.4.1/lib/thin/runner.rb:151:in `run!"
2012-09-25T10:08:32+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/thin-1.4.1/bin/thin:6:in `<top (required)>"
2012-09-25T10:08:32+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/bin/thin:19:in `load"
2012-09-25T10:08:32+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/bin/thin:19:in `<main>"
2012-09-25T10:08:32+00:00 app[web.1]:
2012-09-25T10:08:32+00:00 app[web.1]:
2012-09-25T10:08:32+00:00 heroku[router]: GET app.herokuapp.com/assets/admin-e0756c8b3550bb800d5f58837c42ec80.css dyno=web.1 queue=0 wait=0ms service=7ms status=200 bytes=1941
2012-09-25T10:08:32+00:00 app[web.1]:
2012-09-25T10:08:32+00:00 app[web.1]:
2012-09-25T10:08:32+00:00 app[web.1]: Started GET "/assets/admin-e0756c8b3550bb800d5f58837c42ec80.css" for X.X.X.X at 2012-09-25 10:08:32 +0000
2012-09-25T10:08:41+00:00 app[web.1]:
2012-09-25T10:08:41+00:00 app[web.1]:
2012-09-25T10:08:41+00:00 app[web.1]: Started GET "/projects" for X.X.X.X at 2012-09-25 10:08:41 +0000
2012-09-25T10:08:41+00:00 heroku[router]: GET app.herokuapp.com/projects dyno=web.1 queue=0 wait=0ms service=31ms status=304 bytes=0
2012-09-25T10:08:41+00:00 app[web.1]: Started GET "/application.css" for X.X.X.X at 2012-09-25 10:08:41 +0000
2012-09-25T10:08:41+00:00 app[web.1]:
2012-09-25T10:08:41+00:00 app[web.1]:
2012-09-25T10:08:41+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/actionpack-3.2.6/lib/action_dispatch/middleware/debug_exceptions.rb:21:in `call"
2012-09-25T10:08
:41+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/actionpack-3.2.6/lib/action_dispatch/middleware/request_id.rb:22:in `call"
2012-09-25T10:08:41+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/lock.rb:15:in `call"
2012-09-25T10:08:41+00:00 app[web.1]:
2012-09-25T10:08:41+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/activesupport-3.2.6/lib/active_support/cache/strategy/local_cache.rb:72:in `call"
2012-09-25T10:08:41+00:00 app[web.1]: ActionController::RoutingError (No route matches [GET] "/application.css"):
2012-09-25T10:08:41+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/rack-cache-1.2/lib/rack/cache/context.rb:185:in `lookup"
2012-09-25T10:08:41+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/actionpack-3.2.6/lib/action_dispatch/middleware/show_exceptions.rb:56:in `call"
2012-09-25T10:08:41+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/rack-cache-1.2/lib/rack/cache/context.rb:51:in `call"
2012-09-25T10:08:41+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/railties-3.2.6/lib/rails/rack/logger.rb:26:in `call_app"
2012-09-25T10:08:41+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/rack-cache-1.2/lib/rack/cache/context.rb:245:in `fetch"
2012-09-25T10:08:41+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/railties-3.2.6/lib/rails/rack/logger.rb:16:in `call"
2012-09-25T10:08:41+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/runtime.rb:17:in `call"
2012-09-25T10:08:41+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/railties-3.2.6/lib/rails/railtie/configurable.rb:30:in `method_missing"
2012-09-25T10:08:41+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/methodoverride.rb:21:in `call"
2012-09-25T10:08:41+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/actionpack-3.2.6/lib/action_dispatch/middleware/static.rb:62:in `call"
2012-09-25T10:08:41+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/rack-cache-1.2/lib/rack/cache/context.rb:136:in `forward"
2012-09-25T10:08:41+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/railties-3.2.6/lib/rails/application.rb:220:in `call"
2012-09-25T10:08:41+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/thin-1.4.1/lib/thin/server.rb:159:in `start"
2012-09-25T10:08:41+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/thin-1.4.1/lib/thin/connection.rb:78:in `catch"
2012-09-25T10:08:41+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/railties-3.2.6/lib/rails/engine.rb:479:in `call"
2012-09-25T10:08:41+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/eventmachine-0.12.10/lib/eventmachine.rb:256:in `run_machine"
2012-09-25T10:08:41+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/rack-cache-1.2/lib/rack/cache/context.rb:66:in `call!"
2012-09-25T10:08:41+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/thin-1.4.1/lib/thin/connection.rb:80:in `block in pre_process"
2012-09-25T10:08:41+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/thin-1.4.1/lib/thin/connection.rb:53:in `process"
2012-09-25T10:08:41+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/thin-1.4.1/lib/thin/backends/base.rb:63:in `start"
2012-09-25T10:08:41+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/thin-1.4.1/lib/thin/connection.rb:78:in `pre_process"
2012-09-25T10:08:41+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/eventmachine-0.12.10/lib/eventmachine.rb:256:in `run"
2012-09-25T10:08:41+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/thin-1.4.1/lib/thin/connection.rb:38:in `receive_data"
2012-09-25T10:08:41+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/thin-1.4.1/lib/thin/runner.rb:151:in `run!"
2012-09-25T10:08:41+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/thin-1.4.1/lib/thin/runner.rb:185:in `run_command"
2012-09-25T10:08:41+00:00 app[web.1]:
2012-09-25T10:08:41+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/bin/thin:19:in `<main>"
2012-09-25T10:08:41+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/thin-1.4.1/lib/thin/controllers/controller.rb:86:in `start"
2012-09-25T10:08:41+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/gems/thin-1.4.1/bin/thin:6:in `<top (required)>"
2012-09-25T10:08:41+00:00 app[web.1]: vendor/bundle/ruby/1.9.1/bin/thin:19:in `load"
2012-09-25T10:08:41+00:00 app[web.1]:
2012-09-25T10:08:41+00:00 heroku[router]: GET app.herokuapp.com/application.css dyno=web.1 queue=0 wait=0ms service=9ms status=404 bytes=728
2012-09-25T10:11:00+00:00 heroku[run.1]: Awaiting client
2012-09-25T10:11:00+00:00 heroku[run.1]: Starting process with command `bundle exec rake db:migrate`
2012-09-25T10:11:00+00:00 heroku[run.1]: State changed from starting to up
2012-09-25T10:11:06+00:00 heroku[run.1]: Client connection closed. Sending SIGHUP to all processes
2012-09-25T10:11:07+00:00 heroku[run.1]: Process exited with status 1
2012-09-25T10:11:07+00:00 heroku[run.1]: State changed from up to complete
2012-09-25T10:08:23+00:00 heroku[web.1]: State changed from starting to up
2012-09-25T10:08:01+00:00 heroku[web.1]: Unidling
2012-09-25T10:08:01+00:00 heroku[web.1]: State changed from down to starting
No tengo idea de dónde buscar una solución, así que espero que alguien pueda ayudar. Acabo de empezar a aprender los rieles, así que recuerda esto cuando trates de ayudar.
Gracias por adelantado.
EDITAR:
He intentado todo tipo: reinstalar heroku, grifos. rehice mi aplicación y empuje a heroku. reinstalado postgres.
Nada parece funcionar. ¡Volviéndome loco!
Respuestas
3 para la respuesta № 1Encontré algún tipo de solución.
Tengo el mismo problema con mi SHARED_DATABASE en heroku
rubí 1.9.2
gemas:
pg (0.11.0)
heroku (2.32.4)
heroku-api (0.3.5)
grifos (0.3.24)
heroku db: pull terminó con:
No se puede obtener información de tablas de http://...@taps19.heroku.com. Por favor revise el registro del servidor.
Cambié a Ruby 1.8.7 usando rvm y heroku db: pull funciona bien.
Volver de nuevo a ruby 1.9.2 para desarrollar mi aplicación.
Espero que esto ayude a alguien hasta que db: pull se arregle con ruby 1.9.2.
2 para la respuesta № 2
Acabo de recibir una respuesta de heroku. Dijeron que estaban teniendo algunos problemas con los grifos y que ahora está funcionando nuevamente.
Lo comprobé y confirmo que está funcionando para mí.
Rgds,
1 para la respuesta № 3
(Las instrucciones para PostgreSQL están más abajo en la página)
Una solución temporal sería volcar directamente los datos de su servidor de base de datos y cargarlos manualmente usted mismo. Tengo ambas bases de datos (en Heroku y localmente) en MySQL, así que hice:
1. mysqldump -h host -P port_number -u user_name_to_your_db -p your_db_name > data.sql
Una vez que ejecute el comando anterior con los detalles correctos, se le pedirá que ingrese su contraseña.
NOTA: Nunca ponga su contraseña en su comando de shell ya que se está almacenando en el historial de comandos de shell.
Conseguir su username
, password
, your_db_name
, host
y port_number
de la configuración de Heroku:
2. heroku config --app your-app-name | grep DATABASE_URL
Tu DATABASE_URL
se verá así:
mysql2://username:password@host:port_number/your_db_name
Un ejemplo de un poco más real. DATABASE_URL
se verá así (los detalles de inicio de sesión están modificados):
mysql2://afdgsdfghliue:ESIJAFDG-sAFsgiags3464@ec2-34-15-23-232.compute-2.amazonaws.com:5432/9twgsenr8543
En ese caso, los detalles serían respectivamente (recuerde, estos son falsos):
username: afdgsdfghliue:ESIJAFDG
password: ESIJAFDG-sAFsgiags3464
host: ec2-34-15-23-232.compute-2.amazonaws.com
port: 5432
database: 9twgsenr8543
Cuando corres el mysqldump
con detalles correctos como se muestra en 1.
tendrás tus datos almacenados en data.sql localmente. Ahora para cargarlo en su base de datos local (todavía estamos hablando de MySQL) deberá ejecutar:
mysql -u your_local_db_username -h 127.0.0.1 -p your_local_db_name < data.sql
Los detalles de inicio de sesión de la base de datos local que debe tener.
PostgreSQL
No he comprobado las instrucciones a continuación, así que úselas junto con su cerebro ;-)
Lo encontré desde
pg_dump --help
que podría ejecutar comandos similares para volcar su base de datos PostgreSQL de Heroku de esta manera:
pg_dump -h host -p port -U username -W your_db_name > data.sql
Tu DATABASE_URL
comenzará con postgres
:
postgres://username:password@host:port_number/your_db_name
Residencia en
psql --help
Aquí es cómo cargar su base de datos PostgreSQL local desde el data.sql
archivo preparado anteriormente:
psql -h 127.0.0.1 -U your_local_db_username -W -d your_local_db_name -f data.sql
Un poco de proceso manual, pero al menos te pone en marcha.