code

특정 테이블 및 항목에 대한 데이터베이스 덤프 만들기 Postgres

starcafe 2023. 5. 28. 20:57
반응형

특정 테이블 및 항목에 대한 데이터베이스 덤프 만들기 Postgres

수백 개의 테이블이 있는 데이터베이스가 있습니다. 지정된 테이블을 내보내고 데이터에 대한 문을 하나의 sql 파일에 삽입해야 합니다.

내가 아는 유일한 진술은 이것을 달성할 수 있다는 것입니다.

pg_dump -D -a -t zones_seq interway > /tmp/zones_seq.sql

모든 테이블에 대해 이 문을 실행해야 합니까? 아니면 유사한 문을 실행하여 선택한 모든 테이블을 하나의 큰 SQL로 내보낼 수 있는 방법이 있습니까?위의 pg_dump는 테이블 스키마 삽입만 내보내지 않습니다. 둘 다 필요합니다.

어떤 도움이든 감사하겠습니다.

설명서의 오른쪽: "여러 t 스위치를 작성하여 여러 테이블을 선택할 수 있습니다."

그래서 당신은 당신의 모든 테이블을 나열해야 합니다.

pg_dump --column-inserts -a -t zones_seq -t interway -t table_3 ... > /tmp/zones_seq.sql  

동일한 접두사(또는 접미사)를 가진 테이블이 여러 개 있는 경우 와일드카드를 사용하여 테이블을 선택할 수도 있습니다.-t매개변수:

"또한, 테이블 파라미터는 psql의 \d 명령에서 사용되는 것과 동일한 규칙에 따른 패턴으로 해석됩니다"

이러한 특정 테이블이 특정 패턴과 일치하는 경우 해당 테이블을-t의 옵션.pg_dump.

pg_dump -D -a -t zones_seq -t interway -t "<pattern>" -f /tmp/zones_seq.sql <DBNAME>

예를 들어 "test"로 시작하는 테이블을 덤프하려면 다음을 사용할 수 있습니다.

pg_dump -D -a -t zones_seq -t interway -t "^test*" -f /tmp/zones_seq.sql <DBNAME>

언급URL : https://stackoverflow.com/questions/7359827/creating-a-database-dump-for-specific-tables-and-entries-postgres

반응형