%20quando%20a%20estrutura%20de%20diret%C3%B3rios%20for%20diferente.png)
Eu tenho uma VM SUSE 12 sp3 local com banco de dados PostgreSQL 10 com cerca de 45 GB.
Também tenho uma imagem/instância do Google Cloud Platform (GCP) de um servidor SUSE 12 sp3 com banco de dados PostgreSQL 10, sem dados de banco de dados ainda.
A estrutura e configuração do diretório do GCP é um pouco diferente do diretório e configuração do arquivo da VM local, mas ambos são PostgreSQL 10. Gosto mais da estrutura de configuração/instalação/diretório do GCP, então não quero alterá-la.
Quero transferir o máximo de dados do banco de dados local para o banco de dados do GCP. Os bancos de dados deverão ser idênticos quando eu terminar, mas a estrutura de diretórios será diferente.
Sou novo no GCP. Este é um test drive. Meu novo banco de dados precisa estar em armazenamento regional (não nearline, coldline ou multirregional).
Minha estratégia atual é:
- usar
pg_dumpall > db.out
no meu antigo banco de dados local - salve esse
db.out
arquivo em nosso servidor de arquivos VM do Windows, ao qual tenho acesso por meio de uma unidade mapeada em minha estação de trabalho. - no console do GCP por meio da minha estação de trabalho, vá para: Armazenamento, selecione meu bucket, faça upload dos arquivos e faça upload do arquivo db.out para o bucket em que minhas instâncias estão.
- uso
psql -f db.out postgres
para carregar os dados, funções etc. em minha nova instância do GCP.
Essa é uma maneira sólida de fazer isso? Isso funcionará apesar das diferentes estruturas de diretórios? Alguma maneira melhor de fazer isso? Truques ou armadilhas?
Link:http://www.postgresql.org/docs/current/static/app-pg-dumpall.html
(Ainda estou procurando o link útil do GCP, daí a pergunta.)
Observe que por "estrutura de diretórios" estou me referindo à estrutura de diretórios do servidor. A estrutura de diretórios mudou porque instalei o PostgreSQL 10 de maneira diferente (do jeito que desejo) em minha instância do GCP.
obrigado!
PS - Isso estava no SO, mas excluí-o e movi a questão aqui na esperança de obter mais tração. Vejo outras questões sendo movidas ou transferidas, mas não percebi uma maneira de fazer isso, pelo menos com meu nível de credibilidade atual. Além disso, eu iria colocá-lo nos administradores de banco de dados do site Stack Exchange até ver que apenas duas pessoas estavam seguindo a tag Google-Cloud lá. Sugestões são bem-vindas a esse respeito.
Responder1
Despejar o banco de dados para sql, transferi-lo para a máquina remota e depois importar o banco de dados via sql, como você fez, é uma maneira perfeitamente normal de conseguir o que deseja. A estrutura do disco realmente não deveria ser um problema.