Re: backup bd con pg_dump

From: Rodriguez Fernando <rodriguez(at)ort(dot)edu(dot)uy>
To: Julio Cesar Ayala Guarin <juliocesar(dot)ayalaguarin(at)gmail(dot)com>
Cc: Alvaro Herrera <alvherre(at)commandprompt(dot)com>, pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: backup bd con pg_dump
Date: 2007-09-03 14:17:21
Message-ID: 46DC1771.3050303@ort.edu.uy
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Lo que deberias hacer luego para obtener un solo archivo serial
cat <prefijo>* >> <nombrearchivosalida>.gz
para restaurarlo
gunzip -cd |pg_restore -d<nombrebase> -U<usuario>
Esto lo puedes hacer para comprobar si el respaldo funciono correctamente:
crear una nueba de datos y restaurar el respaldo.

Saludos Fernando

Julio Cesar Ayala Guarin wrote:
> El 3/09/07, Rodriguez Fernando <rodriguez(at)ort(dot)edu(dot)uy> escribió:
>
>> Hola, en cuanto a lo del espacio supongo que postgres guarda de alguna
>> manera comprimida los datos lo que podrias probar seria pasarlo por un gzip
>>
>> pg_dump -Ft <nombre de la base> -U<usuario> |gzip -9 |split -b
>> <tamaño> -d - <prefijo>
>>
>> Julio Cesar Ayala Guarin wrote:
>>
>>> El 31/08/07, Rodriguez Fernando <rodriguez(at)ort(dot)edu(dot)uy> escribió:
>>>
>>>
>>>> Podes usar el split
>>>> Opcion uno:
>>>> pg_dump|split -b<tamaño> -d - <prefijo> la opcion del tamaño usa
>>>> k o m (kbytes o megabytes) y la de para que use numero para la
>>>> secuencia (es horrible el nombre), ojo el guión no esta de mas,
>>>> es para indicar que el archivo es tomado de la salida del otro comando y
>>>> el prefifijo es como nombras la las partes
>>>> Opción dos :
>>>> pg_dump > <archivo>
>>>> split -b<tamaño> -d <archivo> <prefijo>
>>>>
>>>> Saludos Fernando
>>>>
>>>> Alvaro Herrera wrote:
>>>>
>>>>
>>>>> Julio Cesar Ayala Guarin escribió:
>>>>>
>>>>>
>>>>>
>>>>>> Buen día para todos.
>>>>>>
>>>>>> He realizado backup a las bd postgresql 7.3 desde Linux RHE 3 con
>>>>>> pg_dump, y el archivo de salida se creó en un filesystem montado
>>>>>> usando samba desde una carpeta compartida en un PC win xp sp-2 a una
>>>>>> carpeta de Linux. La primera bd que ocupa en Bytes alrededor de 700
>>>>>> MB produjo como salida del pg_dump un archivo de 1.7 GB, le hice pgsql
>>>>>> desde postgresql 8.2 instalada en el PC y restauró bien. Sin embargo,
>>>>>> la segunda bd que ocupa en Bytes alrededor de 15 GB, mostró un mensaje
>>>>>> al realizar el pg_dump que dice: "Superado el límite de tamaño de
>>>>>> fichero" y como salida del pg_dump produjo un archivo de 2 GB.
>>>>>> Verifiqué el espacio disponible en el PC, y dispongo de mas de 35 GB.
>>>>>> Como podría completar la ejecución del pg_dump a la bd de 15 GB ?
>>>>>>
>>>>>>
>>>>>>
>>>>> Chuta, complicado. El problema es que el sistema de archivos que estás
>>>>> usando (no si es Samba o la carpeta en Windows) no permite almacenar
>>>>> archivos mayores de 2 GB.
>>>>>
>>>>> Soluciones .. hmm, no se me ocurre nada por el momento. Si puedes
>>>>> escribir el dump en otra parte, creo que sería lo más fácil. Por ej. si
>>>>> puedes escribirla directamente en tu servidor Linux.
>>>>>
>>>>>
>>>>> PD: hay otra posible explicación que es que pg_dump no tenga soporte a
>>>>> archivos grandes (> 2 GB), pero creo que el error que daría sería
>>>>> distinto. Para empezar no estaría en español, puesto que en Postgres
>>>>> 7.3 aún no habíamos hecho las traducciones.
>>>>>
>>>>>
>>>>>
>>>>>
>>> He utilizado split con el pg_dump para hacer el backup de la BD, y ha
>>> funcionado tal cual lo sugirió Fernando; coloqué -b 1500m y se han
>>> creado 24 archivos de 1.5 GB; sin embargo tuve que cancelar el proceso
>>> porque el espacio en el disco destino de pg_dump (carpeta compartida
>>> desde win xp) se agotó.
>>>
>>> Me gustaría saber porqué, si la base de datos mide en Bytes 16 Gigas
>>> en Linux, el archivo de salida de pg_dump de esa base, estaba ya
>>> midiendo en Bytes cuando lo cancelé, 37 Gigas ? Esto es normal ?
>>>
>>>
>>>
> He ejecutado pg_dump de la bd que muestra un tamaño de 16 GB en Linux
> al sistema winxp a través de una carpeta compartida y el tamaño final
> del archivo de salida fue de 48 GB. Hice pg_dump -U xxxx bd | split
> -b 1500m - salida.dump. El proceso se demoró 3 horas y media. Lo
> ejecuté anoche. CVon las nuevas sugerencias que Ustedes me han dado,
> voy a probar de nuevo la copia, cuando encuentre un disco con espacio
> para poder ejecutarla.
>
> La carga del archivo de salida a la bd ubicada en el nuevo sistema se
> realiza con plsql ?
>
>

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Jonathan ....nem4 2007-09-03 15:41:07 UPDATE + INSERT
Previous Message Julio Cesar Ayala Guarin 2007-09-03 14:13:28 Re: backup bd con pg_dump