Criei um banco de dados (espacial) em minha casa com vários gigabytes e desejo mover todo o banco de dados, pois ele é de um computador do meu computador de trabalho.
Nada de bom, vou criar uma nova instância do postgresql / postgis db no meu computador de trabalho. Os usuários do banco de dados podem ou não ter o mesmo nome nos dois computadores.
É possível? Sobre o que devo me preocupar? Como posso fazer isso sem dor?
Estou usando o postgresql v9.1.5 com extensão postgis. Ubuntu12.04 (kernel 3.2.0-31)
postgresql
user528025
fonte
fonte
Respostas:
Você pode executar um despejo do banco de dados:
e depois importe de volta para o PostgreSQL no seu computador de trabalho. Levará algum tempo e o arquivo resultante, mesmo se compactado, pode estar na faixa de gigabytes, mas deve ser pequeno o suficiente para estar em uma chave USB.
No seu computador de trabalho, crie o novo banco de dados e carregue o dump:
Se você possui uma conexão rápida (ou pode demorar algum tempo), pode até transferir o banco de dados pela Internet através de uma conexão SSH criptografada ou ferramentas como o rsync.
fonte
O pg_dumpall é a maneira mais segura de fazer isso. Eu recomendaria fazer um dumpall antes da migração de qualquer maneira. o grande problema é que pode demorar um pouco para restaurar se for grande.
Você também pode copiar o diretório de dados, de preferência após parar o servidor (você pode usar pg_start_backup () no lugar de parar, mas consulte todos os documentos sobre recuperação de ponto no tempo antes de seguir essa rota. Essa rota permitiria um tempo de inatividade quase zero Observe também que você só pode fazer isso se a arquitetura de SO e CPU for a mesma nos dois sistemas.Você não pode passar do Windows para o Linux ou do i686 para o x86-64 dessa maneira. Verifique também as versões do kernel do sistema operacional para para garantir que os sistemas sejam compatíveis.
fonte