PostgreSQL 中地理数据库 (geodatabase) 的其他移动方法
您可使用 pg_dump 命令来移动单个 PostgreSQL 数据库,也可使用 pg_dumpall 命令移动 PostgreSQL 实例的所有数据库以及用户和权限。
pg_dump 命令可将数据库定义(方案)和数据或仅数据库方案提取至结构化查询语言 (SQL) 脚本或存档文件。如果提取至存档文件,则可使用 pg_restore 命令在另一个 PostgreSQL 实例上重新构建数据库。如果提取至 SQL 脚本,则可在新服务器上运行该 SQL 脚本来重新构建数据库。pg_dumpall 命令只能提取至 SQL 脚本,然后通过运行该 SQL 脚本还原到另一个 PostgreSQL 实例。
以下是通过 pg_dump 或 pg_dumpall 移动 PostgreSQL 数据库的部分指导原则:
- 如果在用户定义的数据中使用对象标识符 (OID),请务必指定 -o 选项,以在转储文件中包括 OID。
- 表空间必须重新创建。
- 如果输出到 TAR 存档,则任何文本形式的单个表都不能大于 8 GB。
- 重新构建数据库之后,可运行 ANALYZE 来更新数据库统计数据。
- 因为 pg_dumpall 会将每个数据库重新连接到 PostgreSQL 服务器,所以,每次都会提示您输入密码(如果使用的是密码身份验证)。
- 以超级用户的身份进行连接,以顺利运行 pg_dump 或 pg_dumpall。
有关如何使用 pg_dump、pg_dumpall 或 pg_restore 的特定信息,请参阅 PostgreSQL 文档。
7/10/2012