pg_dump e pg_restore.
Pré-requisitos
- Acesso ao seu banco de dados PostgreSQL de origem.
pg_dumpepg_restoreinstalados na máquina local. Eles normalmente são incluídos nas instalações do PostgreSQL. Caso contrário, você pode baixá-los no site oficial do PostgreSQL.
A configuração
- Duas tabelas —
eventseusers.eventstem um milhão de linhas, euserstem mil linhas. eventstem um índice.- Uma view sobre a tabela
events. - Duas sequências
Crie um dump do banco de dados de origem
pg_dump para gerar um arquivo de dump com os objetos acima. É um comando simples:
- Substitua
<user>,<password>,<host>,<port>e<database>pelas credenciais do seu banco de dados de origem. A maioria dos provedores de Postgres fornece uma string de conexão que você pode usar diretamente. --format directoryespecifica que queremos o dump no formato de diretório, que é adequado para opg_restore.-f rds-dumpespecifica o diretório de saída dos arquivos de dump. Observe que esse diretório será criado automaticamente e não deve existir previamente.- Você também pode paralelizar o processo de dump adicionando a flag
--jobs, seguida do número de jobs paralelos que deseja executar. Para mais detalhes, consulte a documentação do pg_dump.
Migre o dump para o ClickHouse Managed Postgres
pg_restore.
Crie uma instância do Managed Postgres
Restaurar o dump
pg_restore para restaurar o dump em nossa instância do Managed Postgres:
--verbosefornece uma saída detalhada durante o processo de restore.- Você também pode usar a flag
--jobsaqui para paralelizar o processo de restore. Para mais detalhes, consulte a documentação do pg_restore.
Verifique a migração
Considerações
- Certifique-se de que as versões do PostgreSQL dos bancos de dados de origem e de destino sejam compatíveis. Usar uma versão do pg_dump mais antiga que a do servidor de origem pode causar ausência de recursos ou problemas na restauração. O ideal é usar a mesma versão principal do pg_dump da origem ou uma versão mais recente.
- Bancos de dados grandes podem levar bastante tempo para gerar o dump e restaurar.
Planeje-se adequadamente para minimizar a indisponibilidade e considere usar dumps/restaurações em paralelo (
--jobs) quando houver suporte. - Observe que pg_dump / pg_restore não replicam todos os objetos relacionados ao banco de dados nem todo o estado de runtime. Isso inclui roles e associações de roles, slots de replicação, configuração no nível do servidor (por exemplo, postgresql.conf, pg_hba.conf), tablespaces e estatísticas de runtime.
Próximas etapas
pg_dump e pg_restore. Agora você já pode explorar os recursos do Managed Postgres e a integração com o ClickHouse. Aqui está um guia de início rápido de 10 minutos para ajudar você a começar: