Respuestas:
Use --table
para decir pg_dump
qué tabla tiene que respaldar:
pg_dump --host localhost --port 5432 --username postgres --format plain --verbose --file "<abstract_file_path>" --table public.tablename dbname
psql -U username -d database -1 -f your_dump.sql
--ignore-version
. La respuesta de Prashant Kumar, que es más simple, funcionó para mí.
Si estás en Ubuntu,
sudo su postgres
pg_dump -d <database_name> -t <table_name> > file.sql
Asegúrese de que está ejecutando el comando en el que el postgres
usuario tiene permiso de escritura (Ejemplo: /tmp
)
Editar
Si desea volcar el .sql en otra computadora, es posible que deba considerar omitir la información del propietario que se guarda en el archivo .sql.
Puedes usar pg_dump --no-owner -d <database_name> -t <table_name> > file.sql
pg_dump -d <database_name> > file.sql
pg_dump -t <table_name> <database_name> > file.sql
pg_dump -h localhost -p 5432 -U postgres -d mydb -t my_table> backup.sql
Puede realizar la copia de seguridad de una sola tabla, pero sugeriría realizar una copia de seguridad de toda la base de datos y luego restaurar la tabla que necesite. Siempre es bueno tener una copia de seguridad de toda la base de datos.
max(id)
en mi mesa. esta es la respuesta que funcionó y estoy seguro, al mirar el sql generado, que podría haberlo restaurado.
Si prefiere una interfaz gráfica de usuario, puede usar pgAdmin III (Linux / Windows / OS X). Simplemente haga clic derecho en la tabla de su elección, luego "copia de seguridad". Creará un pg_dump
comando para ti.
Como una adición a la respuesta de Frank Heiken, si desea usar INSERT
declaraciones en lugar de copy from stdin
, entonces debe especificar la --inserts
bandera
pg_dump --host localhost --port 5432 --username postgres --format plain --verbose --file "<abstract_file_path>" --table public.tablename --inserts dbname
Tenga en cuenta que omití la --ignore-version
bandera, porque está en desuso.
pg_restore --host localhost --port 5432 --username postgres --dbname "anydb" --table public.tablename -Ft --verbose "/path/filename.backup"
pero salió:pg_restore: [tar archiver] corrupt tar header found in --