You may drop or even damage a table in some way. Tables could be damaged for physical reasons, such as disk corruption, or they could also be damaged by running poorly specified UPDATE
or DELETE
commands, which update too many rows or overwrite critical data.
It's a common request to recover from this situation from a backup.
The methods differ, depending on the type of backup you have available. If you have multiple types of backup, you have a choice.
If you've taken a logical backup using pg_dump
in a custom file, then you can simply extract the table you want from the dumpfile, like the following:
pg_restore -t mydroppedtable dumpfile | psql
Alternatively, you can directly connect to the database using –d
.
The preceding command tries to recreate the table and then load data into it. Note that the pg_restore -t
option does not dump any of the indexes on the selected table. This means we need...