备份与恢复命令
-
pg_dump
备份一个数据库 -
pg_dumpall
备份全部数据库 -
pg_restore
恢复pg_dump
备份的一个数据库 -
psql
恢复pg_dump
或pg_dumpall
备份生成的sql文件到数据库
备份示例
- pg_dump备份一个数据库
pg_dump -U postgres -W -F t dvdrental > dvdrental.tar
参数含义:
-U
指定用户-W
密码提示-F
输出文件格式
- pg_dumpall备份全部数据库
pg_dumpall -U postgres > all.sql
- pg_dumpall备份数据库结构等信息
pg_dumpall --schema-only > definitiononly.sql
pg_dumpall --roles-only > allroles.sql
pg_dumpall --tablespaces-only > allroles.sql
恢复示例
- psql恢复数据库
psql -U username -f backupfile.sql
psql -U username --set ON_ERROR_STOP=on -f backupfile
psql -U username -d database_name -f objects.sql
- pg_restore恢复数据库
pg_restore --dbname=newdvdrental --verbose dvdrental.tar
pg_restore --dbname=dvdrental --create --verbose dvdrental.tar