Estou procurando uma maneira de obter todas as linhas como INSERT
declarações de uma tabela específica dentro de um banco de dados usando pg_dump
PostgreSQL.
Por exemplo, eu tenho a tabela A e todas as linhas da tabela AI precisam como INSERT
instruções, ela também deve despejar essas instruções em um arquivo.
Isso é possível?
postgresql
Elitmiar
fonte
fonte
-d
,-a
e-t
curtas versões ainda estão presentes, no entanto. Verificado com PG11.--inserts
é outra opção; restaura um pouco mais rápido, mas não pode tolerar alterações na ordem das colunasSe você deseja DUMP suas inserções em um arquivo .sql :
cd
para o local que você deseja que o.sql
arquivo seja localizadopg_dump --column-inserts --data-only --table=<table> <database> > my_dump.sql
Observe o
> my_dump.sql
comando. Isso colocará tudo em um arquivo sql chamado my_dumpfonte
Colocado em um script, gosto de algo assim:
fonte
caso você esteja usando um acesso remoto e queira despejar todos os dados do banco de dados, você pode usar:
pg_dump -a -h your_host -U your_user -W -Fc your_database > DATA.dump
ele irá criar um dump com todos os dados do banco de dados e usar
pg_restore -a -h your_host -U your_user -W -Fc your_database < DATA.dump
inserir os mesmos dados em sua base de dados considerando que você tem a mesma estrutura
fonte