¿Migrar de sqlite3 a postgresql en Rails 3?

Siguiendo la publicación: Cómo migrar de SQLite a PostgreSQL (Rails)

Estoy corriendo sqlite3 development.sqlite3 .dump | psql mypgdb mypguser en mi aplicación Rails y recibo este error (lo mismo para todos los modelos/tablas en mi aplicación):

ERROR:  current transaction is aborted, commands ignored until end of transaction block
ERROR:  current transaction is aborted, commands ignored until end of transaction block
ERROR:  current transaction is aborted, commands ignored until end of transaction block
ERROR:  current transaction is aborted, commands ignored until end of transaction block
ERROR:  current transaction is aborted, commands ignored until end of transaction block
ERROR:  current transaction is aborted, commands ignored until end of transaction block
ERROR:  current transaction is aborted, commands ignored until end of transaction block
ERROR:  current transaction is aborted, commands ignored until end of transaction block
ERROR:  current transaction is aborted, commands ignored until end of transaction block
ERROR:  current transaction is aborted, commands ignored until end of transaction block
ERROR:  current transaction is aborted, commands ignored until end of transaction block
ERROR:  syntax error at or near "AUTOINCREMENT"
LINE 1: ...E TABLE "projects" ("id" INTEGER PRIMARY KEY AUTOINCREM...

Agradecería algunas sugerencias/arreglado. ¡Gracias!

preguntado el 02 de julio de 12 a las 10:07

2 Respuestas

Eso no es SQL válido para PostgreSQL; probablemente desee un DE SERIE en lugar de AUTOINCREMENTO ENTERO. Es posible que desee establecer manualmente el nextval de la secuencia a max(id)+1 también.

Entonces querrá lidiar con todas las demás diferencias entre un sqlite en su mayoría sin tipos y un PostgreSQL estricto.

Entonces querrá dejar de usar diferentes sistemas en su configuración de desarrollo y en la implementación. Solo te está causando dolor a ti mismo.

Respondido 02 Jul 12, 11:07

te recomiendo que uses gem "yaml_db", su propósito es mover tablas de una base de datos a otra. https://github.com/ludicast/yaml_db#readme

Puede hacer todo simplemente con esta gema con una buena documentación. Tiene 2 comandos básicos, así que no tiene nada de difícil.

Respondido el 15 de Septiembre de 12 a las 13:09

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.