No conozco tus detalles pero yo intentaría tener una BD publica(con un nat desde el router con el puerto 5432 o tu puerto preferido) y ahi acceder desde los clientes en las tiendas, asi no tendrías que hacer scripts de ese estilo. Es mi humilde opinión.
>________________________________ > De: Manuel A. Estevez Fernandez <stvz...@gmail.com> >Para: pgsql-es-ayuda@postgresql.org >Enviado: Martes 13 de marzo de 2012 13:01 >Asunto: [pgsql-es-ayuda] Duda con pg_dump y pg_restore > > >Buen día. >Tenemos una serie de tiendas, cada una con su base de datos, y además un del corporativo donde se encuentra toda la información unificada, y cuando creamos una sucursal nueva hay que hacer una base de datos para esta nueva tienda, o cuando se pierde una máquina de tienda o se la roban debemos generar de nuevo la db a partir de la información que se encuentra en el corporativo. >Es por eso que se está haciendo un script, para generar dichas dbs. > >echo Se obtiene el esquema... >pg_dump -U dba -h $HOST -C -Fc -s -Z $NCOM modelorama --no-tablespaces > /tmp/estructura_modelorama.backup > >echo Creando Esquema en la maquina Objetivo... >pg_restore --no-tablespaces -i -C -s -h $HOSTDESTINO -U dba -d postgres /tmp/estructura_modelorama.backup >echo Creando Esquema de migracion en la maquina objetivo... > >Sin embargo cuando corro el script e intenta crear la nueva estructura marca un error: > >[root@stvz Codigo]# ./genera_base_tienda_v6 23 10.10.50.126 >Se obtiene el esquema... >Se obtiene esquema para migracion... >Creando Esquema en la maquina Objetivo... >pg_restore: [archivador (bd)] Error durante PROCESAMIENTO DE TABLA DE CONTENIDOS: >pg_restore: [archivador (bd)] Error en entrada de la tabla de contenidos 3582; 1262 27687 DATABASE modelorama dba >pg_restore: [archivador (bd)] could not execute query: ERROR: tablespace "db_space" does not exist > Command was: CREATE DATABASE modelorama WITH TEMPLATE = template0 ENCODING = 'UTF8' LC_COLLATE = 'es_ES.UTF-8' LC_CTYPE = 'es_ES.UTF-8' T... >pg_restore: [archivador (bd)] could not execute query: ERROR: database "modelorama" does not exist > Command was: ALTER DATABASE modelorama OWNER TO dba; > >y no entiendo, supuestamente con la opción --no-tablespaces evito que se tome en cuenta el nombre del tablaspace para crear la db. > >Tal vez lo estoy haciendo de forma incorrecta. Espero y me orienten. >Saludos. > > > >