sábado, 4 de abril de 2009

ERROR: cache lookup failed for relation xxxxxxx : Postgres 7.4

Este error se da por motivos de haber ejecutado una funcion / procedimiento fallido.El motivo por el cual genero una relacion xxxxx en las tablas. Estos problemas ocurren cuando trabajas con tablas temporales.
pg_class
pg_depend

ejecutar estos comandos:

SELECT * FROM pg_class WHERE
relowner=xxxxxx or
reltype=xxxxxx or
relnamespace=xxxxxx or
relfilenode=xxxxxx or
reltoastidxid=xxxxxx or
reltoastrelid= xxxxxx

SELECT * FROM pg_depend WHERE
classid=xxxxxx or
objid=xxxxxx or
objsubid=xxxxxx or
refclassid=xxxxxx or
refobjid=xxxxxx or
refobjsubid=xxxxxx or
deptype=xxxxxx

y verificas si sale filas en las consultas.
luego pasa a eliminarlas.

DELETE FROM pg_depend WHERE
classid=xxxxxx or
objid=xxxxxx or
objsubid=xxxxxx or
refclassid=xxxxxx or
refobjid=xxxxxx or
refobjsubid=xxxxxx or
deptype=xxxxxx


tener cuidado con las sentencias por que podrias eliminar otras relaciones..

Generar Backup Postgres 7.4 + Servidor Linux

192.168.1.35 : ip de tu servidor
"/root/Desktop/estruct_bd" : ruta+nombre de archivo
basedatos : base de datos a hacerle backup

Este comando es para generar el script de la estructura de la base datos:

/usr/bin/pg_dump -h 192.168.1.35 -p 5432 -U postgres -F p -s -s -v -f "/root/Desktop/estruct_bd" basedatos


este comando es para generar el script de solo los datos:

/usr/bin/pg_dump -h
192.168.1.35 -p 5432 -U postgres -F p -a --disable-triggers -D -v -f "/root/Desktop/data_bd" basedatos

los archivos estruct_bd y data_bd se generan en la direccion del servidor... /root/Desktop/

Opciones:
-h host
-p port
-U username
-F format p Output a plain-text SQL script file (default)
-s schema-only
-v verbose
-f file
-a data-only
-D column-inserts