ruby-on-rails - pricing - heroku postgres tutorial
Cómo cambiar DATABASE_URL para una aplicación heroku (6)
Tengo una base de datos externa lista y quiero usarla ahora con mi aplicación heroku. Pero no puedo editar las variables de configuración. Intenté usar la GUI, que dice: No se pueden sobrescribir los valores de adjuntos DATABASE_URL. Mientras intenté usar CLI también. Utilicé el comando: heroku config: addDATABASE_URL = "postgresql: // nombre de usuario: contraseña @ IP: PORT". Sin embargo, esto produce un error ........ no es un comando de heroku.
Como se explica en este artículo , la sintaxis correcta para establecer / agregar una variable de configuración es
$ heroku config:set DATABASE_URL="postgresql://username:password@IP:PORT"
Sin embargo, parece que (ver los comentarios) DATABASE_URL
ha quedado en desuso y al intentar actualizarlo se generará un error.
Después de probar la mayoría de estas respuestas, encontré una actualización en 2016, here : la base de datos debe separarse primero y luego actualizar la variable de DATABASE_URL.
heroku addons:attach heroku-postgresql -a <app_name> --as HEROKU_DATABASE
heroku addons:detach DATABASE -a <app_name>
heroku config:add DATABASE_URL=
Resuelto. Solo para la referencia de los usuarios que tienen el mismo problema o desean tener una implementación similar. Aquí está la solución que funcionó para mí.
Heroku ya no sobrescribe databse.yml, así que modifiqué DATBASE_URL en database.yml y lo inserté :)
¡También funcionó!
Fuente: https://discussion.heroku.com/t/rails-4-1-database-yml-no-longer-overwritten-on-heroku/550
Según los documentos de Heroku, así es como compartiría una base de datos con varias aplicaciones.
heroku addons:attach my-originating-app::DATABASE --app sushi
Tengo la misma situación hoy cuando necesito cambiar postgres
a postgis
. Detach no funciona para mí, así que hice esto en database.yml
:
production:
url: <%= ENV[''DATABASE_URL''].sub(/^postgres/, "postgis") %>
https://github.com/rgeo/activerecord-postgis-adapter/issues/214 .
Un método alternativo que no requiere separación (que puede no ser un resultado deseado del cambio) es simplemente adjuntar la nueva base de datos y luego promoverla, que los Documentos de Heroku declaran explícitamente como una forma de establecer el DATABASE_URL
.
heroku addons:attach heroku-postgresql -a <app_name>
heroku pg:promote heroku-postgresql -a <app_name>