¿pg dump vs pg dumpall? ¿cuál usar para las copias de seguridad de la base de datos?


Traté pg_dump y luego en una máquina separada traté de importar el sql y rellenar la base de datos, veo

CREATE TABLE
ERROR:  role "prod" does not exist
CREATE TABLE
ERROR:  role "prod" does not exist
CREATE TABLE
ERROR:  role "prod" does not exist
CREATE TABLE
ERROR:  role "prod" does not exist
ALTER TABLE
ALTER TABLE
ALTER TABLE
ALTER TABLE
ALTER TABLE
ALTER TABLE
ALTER TABLE
WARNING:  no privileges could be revoked for "public"
REVOKE
ERROR:  role "postgres" does not exist
ERROR:  role "postgres" does not exist
WARNING:  no privileges were granted for "public"
GRANT

Que significa Que mi user y roles y grant información no está en pg_dump

Por otro lado tenemos pg_dumpall, leo conversación, y esto no me lleva a ninguna parte?

Pregunta
- ¿Cuál debería usar para las copias de seguridad de la base de datos? pg_dump o pg_dumpall?
- el requisito es que puedo tomar la copia de seguridad y debería ser capaz de importar a cualquier máquina y debería funcionar bien.

Author: Nakilon, 2013-05-18

1 answers

El proceso habitual es:

  • pg_dumpall --globals-only para obtener users / roles / etc
  • pg_dump -Fc para cada base de datos para obtener un buen volcado comprimido adecuado para su uso con pg_restore.

Sí, esto apesta. Realmente me gustaría enseñar a pg_dump a incrustar pg_dumpall salida en -Fc volcados, pero en este momento desafortunadamente no sabe cómo, por lo que tiene que hacerlo usted mismo.

En el momento de escribir (9.4) también hay una advertencia desagradable con este enfoque: Ni pg_dump, ni pg_dumpall en el modo --globals-only , volcará el acceso de usuario GRANT s en DATABASE s.


También debe conocer las copias de seguridad físicas: pg_basebackup, archivado PgBarman y WAL, PITR, etc. Estos ofrecen mucho" grano fino " recuperación, hasta el minuto o transacción individual. La desventaja es que ocupan más espacio, solo son restaurables a la misma versión de PostgreSQL en la misma plataforma, y hacen copias de seguridad de todas las tablas en todas las bases de datos sin la capacidad de excluir nada.

 44
Author: Craig Ringer,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-03-29 12:53:55