Hola Jorge:

2016-05-27 13:48 GMT+02:00 Jorge Tornero - Listas <jtorlis...@gmail.com>:
> ¿Existe alguna manera de copiar funciones entre bases de datos? Me refiero a
> funciones creadas por el usuario y mediante un proceso tipo pg_dump o
> similar.

Prueba lo siguiente ( para linux, a mi me ha funcionado ):

1.- pg_dump schema only:

    pg_dump -Fc -U usuario -h host -s -f tst.dmp database

Fundamental aqui, el -Fc ( lo mejor siempre para hacer cualquier
pg_dump ) y -s para schema only.

2.- Busca las funciones.

    pg_restore -l tst.dmp | fgrep FUNCTION > tst.funcs

3.- Restauralas, en este caso yo te recomendaria hacerlo asi para
tener un SQL que verificar:

    pg_restore -L tst.dic tst.dmp > funcs.sql

El combo -l / -L es de gran utilidada. Aparte de eso a mi me ha
ayudado en repetidas ocasiones cuando un restore da problemas y
quieres tocar algo a mitad. Cierto, con un .sql lo puedes editar, pero
con un -Fc puedes hacer un -l, partirlo en dos cachos, correr uno,
pasar un script de fixups, correr el otro, de ahi que recomiende
siempre el Fc ( ademas de un -Fc se saca el .sql, pero no al reves ).

Lo del -s arriba es por velocidad, tambien te funciona con cualquier
backup completo si ya tienes uno hecho.

Francisco Olarte.

-
Enviado a la lista de correo pgsql-es-ayuda (pgsql-es-ayuda@postgresql.org)
Para cambiar tu suscripci�n:
http://www.postgresql.org/mailpref/pgsql-es-ayuda

Reply via email to