即使当用户的目的是把转储脚本恢复到一个空的集簇中,--clean
选项也有用武之地。--clean
的使用让该脚本删除并且重建内建的postgres
和template1
数据库,确保这两个数据库保持与源集簇中相同的属性(例如locale和编码)。如果不用这个选项,这两个数据库将保持它们现有的数据库级属性以及任何已有的内容。
文件重新载入数据库连接哪一个数据库并不重要,因为由pg_dumpall创建的脚本将包含合适的命令来创建和连接到被保存的数据库。一个例外是,如果指定了--clean
,则开始时必须连接到postgres
数据库,该脚本将立即尝试删除其他数据库,并且这种动作对于已连接上的这个数据库将会失败。