1
0
mirror of https://github.com/jbranchaud/til synced 2026-01-03 07:08:01 +00:00

Add Dump And Restore A Database as a postgres til

This commit is contained in:
jbranchaud
2016-05-08 12:07:04 -05:00
parent 41541072a1
commit b4fa9b4af5
2 changed files with 33 additions and 1 deletions

View File

@@ -0,0 +1,31 @@
# Dump And Restore A Database
PostgreSQL comes with two command-line utilities for dumping and then
restoring a database -- `pg_dump` and `pg_restore`, respectively.
Using the `pg_dump` with the `-Fc` flag will create a dump of the given
database in a custom format. The output of this command can be redirected
into a file (the `.dump` extension is a standard convention):
```bash
$ pg_dump -Fc my_database > my_database.dump
```
Using the custom format option provides a couple benefits. The output is
significantly compressed in comparison to a generic SQL dump. The dump and
restoration is more flexible. Lastly, the dump can be performed in parallel
if your machine has multiple cores to work with. Likewise, the restoration
can be done in parallel with multiple jobs.
To restore the dump, create a fresh database and then use `pg_restore`:
```bash
$ createdb my_new_database
$ pg_restore -d my_new_database my_database.dump
```
See the
[`pg_dump` docs](http://www.postgresql.org/docs/current/static/app-pgdump.html)
and [`pg_restore`
docs](http://www.postgresql.org/docs/current/static/app-pgrestore.html)
for more details.