Estoy tratando de importar mi base de datos Heroku de producción a mi máquina de desarrollo.Cómo importar un volcado Heroku PG en la máquina local
Mi db local es PostgreSQL.
En primer lugar, voy a exportar el volcado de Heroku a mi máquina
curl -o latest.dump `heroku pgbackups:url`
Entonces, trato de dejar el PP local con rake db:drop
y luego crear la base de datos vacía de nuevo utilizando rake db:create
.
El problema que estoy recibiendo es cuando realmente intentar importar el volcado de la base de datos
psql -d app_development -U myusername -f mydumpfile.sql
comienzo teniendo errores como éste
psql:latest.dump:24: ERROR: syntax error at or near "PGDMP"
LINE 1: PGDMP
^
psql:latest.dump:28: ERROR: syntax error at or near ""
LINE 1: INCREMENT BY 1
^
psql:latest.dump:36: ERROR: syntax error at or near ""
LINE 1: id integer NOT NULL,
^
psql:latest.dump:40: ERROR: syntax error at or near ""
LINE 1: INCREMENT BY 1
^
psql:latest.dump:45: ERROR: syntax error at or near ""
LINE 1: id integer NOT NULL,
^
psql:latest.dump:49: ERROR: syntax error at or near ""
LINE 1: INCREMENT BY 1
...
psql:latest.dump:1601: invalid command \S4???(?̭?A?|c?e0<00K?A?}FϚ?????A(??~?t?I?????G(? K???l??k"?H?ȁ?ͲS?,N*?[(@??a5J??j}
psql:latest.dump:1602: invalid command \??k???|??w???h?
psql:latest.dump:1603: invalid command \=??????o?h?
psql:latest.dump:1609: invalid command \????^.?????????E???/-???+??>#?ؚE?.2)Ȯ&???? g????"7},_??]?:?f?Tr|o???)?p????h?KO?08[Rqu???|3?cW?ڮ?ahbm??H?H8??$???2?a?-أ
psql:latest.dump:1613: invalid command \D!qVS???L??*??R??I!???
psql:latest.dump:1614: invalid command \??-?}Q
psql:latest.dump:12565: ERROR: invalid byte sequence for encoding "UTF8": 0xb0
Alguna idea de lo que está sucediendo esto y cómo ¿resuélvelo?
¿Hay alguna razón específica por la que no estés usando Taps? , http://rubydoc.info/gems/taps/0.3.24/frames? Le permite ejecutar un simple 'heroku db: pull' para poblar una base de datos local. No estoy seguro si esto eliminaría su problema, pero es un poco más conveniente :) – theIV
En realidad, tiene razón. Grifo de grifos instalado y ahora funciona perfectamente. Por alguna razón, la gema de grifos aún requiere declarar ambos grifos y sqlite3 en el archivo gema incluso si estoy usando un postgresql. ¿Quieres probar el tuyo como respuesta? – Martin
Hecho y hecho. Acerca de los requisitos de gemas, sí, es un poco molesto la necesidad de declarar esos requisitos, incluso si está utilizando PG. :/ – theIV