create table foo; create table foo (id text, name varchar(15)); insert into foo values ('a','foo'); insert into foo values ('b','foo'); insert into foo values ('c','foo'); create table backupfoo (id text, name varchar(15)); insert into backupfoo (select * from foo); delete from foo; -- you would obviously use a WHERE clause to restrict what you are deleting >>> 3 records copied #### pg_dump -d YOURDATABASE -t backupfoo > mybackup.sql #### psql -d YOURDATABASEARCHIVE -f mybackup.sql