ruby on rails 3 - rails - Cómo vaciar una base de datos Heroku
heroku postgres tutorial (18)
Estoy trabajando en una aplicación web de Ruby on Rails 3 en Heroku. ¿Cómo vacío la base de datos?
Ahora el comando es
heroku pg:reset DATABASE_URL --confirm your_app_name
De esta manera, puede especificar la base de datos de la aplicación que desea restablecer. Entonces puedes correr
heroku run rake db:migrate
heroku run rake db:seed
o directo para los dos comandos anteriores
heroku run rake db:setup
Y ahora paso final para reiniciar tu aplicación.
heroku restart
Ahora es diferente con heroku. Prueba: heroku pg: reset DATABASE --confirm
Ahora también es posible restablecer la base de datos a través de su interfaz web.
Vaya a dashboard.heroku.com, seleccione su aplicación y luego encontrará la base de datos en la categoría de complementos, haga clic en ella y luego puede restablecer la base de datos.
Comprueba tu versión heroku. Acabo de actualizar el mío a 2.29.0, de la siguiente manera:
heroku --version
#=> heroku-gem/2.29.0 (x86_64-linux) ruby/1.9.3
Ahora puedes correr:
heroku pg:reset DATABASE --confirm YOUR_APP_NAME
Luego crea tu base de datos y sembralo en un solo comando:
heroku run rake db:setup
Ahora reinicia y prueba tu aplicación:
heroku restart
heroku open
En caso de que prefiera utilizar el sitio web de Heroku:
- Vaya a https://postgres.heroku.com/databases
- Seleccione la base de datos que desea restablecer
- Haga clic en un botón de configuración en la esquina superior derecha
- Haga clic en "Restablecer base de datos" como se muestra a continuación:
- escribe "RESET" y presiona ok
Esto es lo que funcionó para mí.
1.clear db.
heroku pg:reset --app YOUR_APP
Después de ejecutar, tendrá que escribir el nombre de su aplicación nuevamente para confirmar.
2.migrate db para recrear.
heroku run rake db:migrate --app YOUR_APP
3.add datos de semilla a db.
heroku run rake db:seed --app YOUR_APP
Heroku ha desaprobado la opción --db
ahora, así que ahora usa:
heroku pg:reset DATABASE_URL --confirm {the name of your app}
Es un poco confuso porque usas el texto literal SHARED_DATABASE
pero donde escribí {the name of your app}
sustituyo el nombre de tu aplicación. Por ejemplo, si tu aplicación se llama my_great_app, entonces usas:
heroku pg:reset DATABASE_URL --confirm my_great_app
Hoy el comando
heroku pg:reset --db SHARED_DATABASE_URL
No trabajo para planes compartidos, estoy resuelto usando
heroku pg:reset SHARED_DATABASE
Inicie sesión en su base de datos utilizando heroku pg:psql
y escriba los siguientes comandos:
drop schema public cascade;
create schema public;
La corriente, es decir. La forma 2017 de hacer esto es:
heroku pg:reset DATABASE
https://devcenter.heroku.com/articles/heroku-postgresql#pg-reset
La mejor solución para tu problema será
heroku pg:reset -r heroku --confirm your_heroku_app_name
--confirmar tu_heroku_app_name
No es obligatorio, pero el terminal siempre me pide que haga ese comando.
Después de ese comando, tendrás una base de datos pura, sin estructura y cosas, después de eso puedes ejecutar
heroku run rake db:schema:load -r heroku
o
heroku run rake db:migrate -r heroku
La respuesta completa es (para usuarios con multi-db):
heroku pg: info - qué salidas
=== HEROKU_POSTGRESQL_RED <- esto es DB
Plan Básico
Estado disponible
heroku pg: restablecer HEROKU_POSTGRESQL_RED --confirm app_name
Más información se encuentra en: https://devcenter.heroku.com/articles/heroku-postgresql
Me puse en contacto con el soporte de Heroku y me confirmaron que es un error con la última gema (estoy usando heroku-2.26.2)
Charlie: somos conscientes de este problema con la gema ''heroku'' y estamos trabajando para solucionarlo.
Este es el problema si le interesa seguirlo: https://github.com/heroku/heroku/issues/356
La reducción a una versión anterior de la gema ''heroku'' debería ayudar. He estado usando v2.25.0 durante la mayor parte de hoy sin problema.
Bajar de categoría con los siguientes comandos:
gem uninstall heroku
gem install heroku --version 2.25.0
Si ya tiene varias gemas instaladas, puede aparecer con:
Select gem to uninstall: 1. heroku-2.25.0 2. heroku-2.26.2 3. All versions
Simplemente desinstale # 2 y vuelva a ejecutar el comando. ¡Alegría!
Si ha iniciado sesión desde la consola, esto hará el trabajo en la última versión de heroku toolbelt,
heroku pg: reset --confirm nombre-base de datos
Siempre hago esto con el comando ''heroku pg: reset DATABASE'' de una sola línea.
Suponiendo que desea restablecer su base de datos PostgreSQL y configurarla, utilice:
heroku apps
para enumerar sus aplicaciones en Heroku. Busque el nombre de su aplicación actual ( application_name
). Entonces corre
heroku config | grep POSTGRESQL
para obtener el nombre de sus bases de datos. Un ejemplo podría ser
HEROKU_POSTGRESQL_WHITE_URL
Finalmente, dado application_name
y database_url
, deberías ejecutar
heroku pg:reset `database_url` --confirm `application_name`
heroku run rake db:migrate
heroku restart
Para quitar la base de datos:
$ heroku pg:reset SHARED_DATABASE --confirm NAME_OF_THE_APP
Para recrear la base de datos:
$ heroku run rake db:migrate
Para sembrar la base de datos:
$ heroku run rake db:seed
**Último paso
$ heroku restart
Para eliminar la base de datos, si está utilizando SHARED_DATABASE_URL
:
$ heroku pg:reset DATABASE_URL
Ahora para recrear la base de datos sin nada en ella:
$ heroku run rake db:migrate
Para rellenar la base de datos con sus datos semilla:
$ heroku run rake db:seed
---O---
Puede combinar los dos últimos ( migrar y inicializar ) en una acción ejecutando esto:
$ heroku run rake db:setup
Edit 2014-04-18: rake db:setup
no funciona con Rails 4, falla con un Couldn''t create database error
.
Edición 2014-10-09: puedes usar rake db:setup
con Rails 4. Te da un error de Couldn''t create database
(porque la base de datos ya se creó con el heroku pg:reset
). Pero también carga el esquema de su base de datos y sus semillas después del mensaje de error.
Puedes hacer esto con casi cualquier comando de rake, pero hay excepciones. Por ejemplo, db:reset
no funciona a través de heroku run rake
. Tienes que usar pg:reset
lugar.
Más información se puede encontrar en la documentación de Heroku: