Quiero traerme una base de datos de producción que posiblemente tenga errores para tratarla localmente.
Hay un add-on en Heroku para ello, que usa pq_dump, es gratis para los respaldos manuales >>>
$ heroku addons:add pgbackups Adding pgbackups on mejorate... done, v133 (free) You can now use "pgbackups" to backup your databases or import an external backup. Use `heroku addons:docs pgbackups` to view documentation.
Se trata de un servicio que te almacena los backups, te permite bajarlos con una URL en S3, etc.
Pero lo que yo quiero es usarlo para importar y exportar a lo fenicio.
Entonces, de hecho, simplemente generamos el backup
$ heroku pgbackups:capture HEROKU_POSTGRESQL_ORANGE_URL (DATABASE_URL) ----backup---> b001 Capturing... done Storing... done
y nos lo bajamos
$ curl -o latest.dump `heroku pgbackups:url`
nótese que esas son comullas de ejecucjión, para obtener la url:
$ heroku pgbackups:url "https://s3.amazonaws.com/hkpgbackups/app14901595@heroku.com/b001.dump?AWSAccessKeyId=AKIAJFDIRYCGYNFXR4FQ&Expires=1375200039&Signature=pLY96bnHWLwNZgGpYkRt%2F455eLQ%3D"
entonces, el resultado de curl es
% Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 4075k 100 4075k 0 0 216k 0 0:00:18 0:00:18 --:--:-- 190k
y éso lo metemos en la BD local
$ pg_restore --verbose --clean --no-acl --no-owner -h localhost -U numerica -d neighbor_prod latest.dump
Ojo que en -U debe ir un usuario de base de datos válido. Aunque creé la basde de datos con el usuario postgres pg_restore no me pidió darle más permisos.
Próximamente, cómo subir el resultado…