Teste suas habilidades em todos os nossos serviços de hospedagem e ganhe 15% de desconto!

Utilizar o código no ato da compra:

Skills
21.11.2024

Cópia de segurança e recuperação de bases de dados PostgreSQL

Backups seguros do PostgreSQL nos Servidores Dedicados AlexHost

Por que fazer backup do PostgreSQL na AlexHost? A perda de dados pode prejudicar qualquer projeto, mas os servidores dedicadosda AlexHost – comarmazenamento NVMe incrivelmente rápido, acesso total à raiz e proteção DDoS – oferecem uma base sólida para hospedar e proteger bancos de dados PostgreSQL. Quer esteja a executar um site WordPress, uma plataforma de comércio eletrónico ou uma aplicação personalizada, este guia mostra-lhe como fazer cópias de segurança e restaurar bases de dados PostgreSQL usando dumps SQL, formatos personalizados e PITR, tudo optimizado para o ambiente de alto desempenho da AlexHost.

1. Entendendo as opções de backup do PostgreSQL

O PostgreSQL fornece vários métodos para fazer backup de dados, incluindo

  • SQL Dump: Este método cria um script SQL em texto simples do banco de dados, que pode ser usado para recriar o banco de dados.
  • Custom Format Dump: Este método cria um arquivo binário que pode ser compactado e é adequado para grandes bancos de dados.
  • Cópia de segurança ao nível do sistema de ficheiros: Este método envolve tirar um instantâneo dos ficheiros da base de dados no disco, adequado para grandes bases de dados, mas que requer mais conhecimentos.
  • Arquivamento contínuo e recuperação pontual (PITR): Este método permite-lhe restaurar a base de dados para um ponto específico no tempo.

2. Preparação da cópia de segurança

Antes de efetuar uma cópia de segurança, certifique-se de que tem os privilégios necessários. Tem de ser um superutilizador ou o proprietário da base de dados da qual pretende efetuar a cópia de segurança

3. Fazendo o backup de um banco de dados PostgreSQL

Método 1: Usando o pg_dump

O utilitário pg_dump permite-lhe criar uma cópia de segurança da sua base de dados

Passo 1: Abra um Terminal

Aceda ao seu servidor via SSH ou diretamente na máquina

Passo 2: Executar o comando pg_dump

Para criar um dump SQL de uma base de dados, utilize o seguinte comando

pg_dump -U username -W -F p database_name > backup_file.sql
#
  • -U username: Especifica o nome de usuário do PostgreSQL.
  • -W: Solicita a senha.
  • -F p: Especifica o formato (script SQL simples).
  • nome_da_base_de_dados: O nome da base de dados da qual pretende efetuar a cópia de segurança.
  • arquivo_de_backup.sql: O nome do ficheiro de saída para a cópia de segurança.
Exemplo:
pg_dump -U postgres -W -F p my_database > my_database_backup.sql
#

Método 2: Usando pg_dumpall

Se você quiser fazer backup de todos os bancos de dados na instância do PostgreSQL, você pode usar o pg_dumpall

pg_dumpall -U username -W > all_databases_backup.sql

4. Fazendo backup usando formato personalizado

Para criar um backup de formato personalizado, use a opção -F c com pg_dump

pg_dump -U username -W -F c database_name > backup_file.dump
#

Este formato permite uma restauração e compressão mais fáceis

5. Restaurando um Banco de Dados PostgreSQL

Método 1: Restaurando de um Dump SQL

Para restaurar um banco de dados a partir de um dump SQL, use o comando psql

psql -U username -d database_name -f backup_file.sql
#
  • -d nome_da_base_de_dados: O nome da base de dados onde pretende restaurar os dados.
  • backup_file.sql: O caminho para o ficheiro de despejo SQL.

Método 2: Restaurar a partir de um formato personalizado

Para um dump de formato personalizado, use o comando pg_restore

pg_restore -U username -d database_name backup_file.dump
#
  • Pode utilizar a opção -C para criar a base de dados antes de a restaurar, caso não exista.

6. Utilizando Arquivamento Contínuo e Recuperação Point-in-Time (PITR)

Para usuários avançados, o PostgreSQL permite o arquivamento contínuo, o que requer a configuração do WAL (Write-Ahead Logging). Este método envolve

  1. Configurar o arquivamento WAL: Modificar o arquivo postgresql.conf para habilitar o arquivamento WAL
    archive_mode = on archive_command = 'cp %p /path/to/archive/%f'
    #
  2. Executando Backups Base: Use pg_basebackup para fazer um backup completo do banco de dados.
  3. Restaurando a partir de arquivos WAL: É possível restaurar o banco de dados para um ponto específico no tempo usando o backup de base e os arquivos WAL arquivados.

Conclusão: Proteja seus dados PostgreSQL com a AlexHost

Proteger seus bancos de dados PostgreSQL não é negociável, e os servidores dedicados da AlexHost facilitam isso com backups rápidos e armazenamento seguro. Use pg_dump para dumps SQL rápidos, formatos personalizados para grandes bancos de dados ou PITR para recuperação precisa. Automatize com o cron, proteja com o UFW e faça cópias de segurança fora do local para ter paz de espírito. Com a velocidade e o suporte NVMe da AlexHost, os seus dados permanecem seguros e as suas aplicações continuam a funcionar – comece hoje mesmo a fazer cópias de segurança!

Teste suas habilidades em todos os nossos serviços de hospedagem e ganhe 15% de desconto!

Utilizar o código no ato da compra:

Skills