是否可以使用单个pg_dump命令备份多个数据库,而不是为每个数据库运行pg_dump命令
答案 0 :(得分:0)
看起来可以使用pg_dumpall
命令:https://www.postgresql.org/docs/9.6/static/app-pg-dumpall.html。
来自文档:
描述
pg_dumpall是一个用于写出(“转储”)所有PostgreSQL的实用程序 集群的数据库到一个脚本文件中。脚本文件包含 SQL命令可以用作psql的输入来恢复 数据库。它通过为a中的每个数据库调用pg_dump来完成此操作 簇。 pg_dumpall还会转储所有通用的全局对象 数据库。 (pg_dump不保存这些对象。)目前 包括有关数据库用户和组,表空间和的信息 属性,例如应用于数据库的访问权限 整体。
由于pg_dumpall最有可能从所有数据库中读取表 必须连接为数据库超级用户才能生成完整的 倾倒。您还需要超级用户权限才能执行已保存的权限 脚本以便允许添加用户和组,以及创建 数据库。
SQL脚本将写入标准输出。使用 [-f | file]选项或shell操作符将其重定向到文件中。