PostgreSQL vem com pg_dump, Uma ferramenta interna para fazer backups dos bancos de dados. Ele permite que os administradores criem backups de diferentes maneiras: backups completos, incrementais ou contínuos (localmente/remotamente).
Neste guia, mostraremos usando pg_dump Para fazer backups de nossos bancos de dados PostGresql.
Pré -requisitos
Para executar as etapas demonstradas neste guia, você precisará dos seguintes componentes:
Além. Para facilitar o uso, estarei usando phppgadmin, um front-end da web para postgreSQL.
Usando pg_dump
O pg_dump O comando exporta um banco de dados em um arquivo de script (contendo comandos SQL para reconstruir o banco de dados) ou um arquivo de arquivo. O objetivo principal desta ferramenta é fazer backup de bancos de dados. Enquanto estiver usando pg_dump, O banco de dados ainda estará acessível para leituras e gravações.
Observe que pg_dump Funciona apenas com um único banco de dados.
Se o banco de dados foi extraído como um script SQL, você poderá importar o banco de dados para qualquer outro banco de dados baseado em SQL. No entanto, se foi extraído como um arquivo de arquivo, só poderá ser restaurado usando o pg_restore ferramenta. Uma coisa legal com pg_restore é, você pode definir qual parte do banco de dados restaurar.
estrutura de comando pg_dump
A principal estrutura de comando de pg_dump se parece com isso:
1 | $ pg_dump |
Exportando um banco de dados (como script SQL)
Como mencionado anteriormente, pg_dump pode exportar o banco de dados em diferentes formatos. Para exportar o banco de dados para um arquivo SQL, use o seguinte comando:
1 | $ pg_dump |
Neste exemplo, estamos exportando o banco de dados dvdrental para Dvdrental-backup.SQL:
1 | $ pg_dump -u postgres dvdrental> dvdrental -backup.SQL |
Observe que a operação de exportação falhará se o usuário estiver executando pg_dump não tem permissão para ler o banco de dados. Aqui, porque PostGres é o superusuário do PostgreSQL, o comando foi executado com sucesso.
Exportando um banco de dados (como um arquivo alcatrão)
Em seguida, exportaremos o banco de dados como um arquivo. O comando a seguir exportá -lo em um formato alcatrão:
1 | $ PG_DUMP -U POSTGRES -F C DVDRENTAL> DVDRENTAL.alcatrão |
Exportando um banco de dados (como um arquivo compactado)
Se você estiver exportando um grande banco de dados, a compactação ajudará a reduzir o tamanho do arquivo. No exemplo a seguir, o banco de dados exportado será compactado usando a ferramenta GZIP:
1 | $ PG_DUMP -U POSTGRES DVDRENTAL | gzip> dvdrental.gz |
Como alternativa, podemos usar a compressão interna de pg_dump Para comprimir a saída:
1 | $ PG_DUMP -U POSTGRES - -COMPRESS = 9 DVDRENTAL> DVDRENTAL.alcatrão |
Exportando um banco de dados (formato de diretório)
Em vez de exportar o banco de dados para um único arquivo, pg_dump Oferece a opção de despejá -lo em um diretório.
No exemplo a seguir, estamos exportando o banco de dados dvdrental para o diretório Dvdrental-backup:
1 | $ pg_dump -u postgres -f d dvdrental -f dvdrental -backup/ |
Exportando todos os bancos de dados
Se você precisar fazer um backup completo do PostGresql servidor de banco de dados, então você pode usar pg_dumpall.
1 | $ pg_dumpall -f full_backup.SQL |
O backup incluirá tudo: Funções, esquemas e dados. No entanto, pg_dumpall permite que componentes específicos sejam exportados.
O comando a seguir exportará apenas as funções:
1 | $ PG_DUMPALL -RONS -ALY -U POSTGRES> ALL_DB_ROLS.SQL |
O comando a seguir exportará apenas esquemas:
1 | $ pg_dumpall - -schema -somente -u pósgres> all_db_schema.SQL |
O comando a seguir exportará apenas as definições de espaço de tabela:
1 | $ pg_dumpall - -tableSpaces -somente -u postgres> all_db_tablespaces.SQL |
Pensamentos finais
Neste guia, exploramos várias maneiras de usar o pg_dump comando para exportar bancos de dados do PostgreSQL. Exportamos um banco de dados de amostra como um script e arquivo SQL. Usando PG_DUMPALL, também mostramos a exportação de vários componentes de todos os bancos de dados no PostgreSQL.
PostgreSQL é um poderoso mecanismo de banco de dados com toneladas de funcionalidades. A subcategoria PostgreSQL contém numerosos guias. Saiba mais sobre listar usuários, soltar usuários, pesquisa difusa, etc.