PostgreSQL 中移动地理数据库的方法
有可用于移动地理数据库的多个选项:可创建新的地理数据库并移动数据,或者移动整个数据库。
创建新的地理数据库,然后移动数据
可创建新的 PostgreSQL 数据库,在其中创建地理数据库,然后将现有数据移动到这个新的地理数据库中。这可通过使用 ArcGIS 中的复制和粘贴、导出工具、“提取数据”向导或 XML 工作空间文档来完成。
请注意,在将数据加载到新的地理数据库时登录的用户将成为数据的所有者。如果希望在新的地理数据库中该数据仍归同一用户所有,则应使每个用户都移动自己的数据。
移动 PostgreSQL 数据库
可使用 pg_dump 命令来移动各个 PostgreSQL 数据库。
pg_dump 命令可将数据库定义(方案)和数据或仅数据库方案提取至结构化查询语言 (SQL) 脚本或存档文件。如果提取至存档文件,则可使用 pg_restore 命令在另一个 PostgreSQL 实例上重新构建数据库。如果提取至 SQL 脚本,则可在新服务器上运行该 SQL 脚本来重新构建数据库。
以下是通过 pg_dump 移动 PostgreSQL 数据库的部分指导原则:
- 移动 PostgreSQL 中的地理数据库时,必须首先恢复公共方案,然后恢复数据库的剩余部分。有关详细信息,请参阅 PostgreSQL 的恢复模型。
- 如果在用户定义的数据中使用对象标识符 (OID),请务必指定 -o 选项,以在转储文件中包括 OID。
- 表空间必须重新创建。
- 如果输出到 TAR 存档,则任何文本形式的单个表都不能大于 8 GB。
- 重新构建数据库之后,可运行 ANALYZE 来更新数据库统计数据。
- 以超级用户的身份进行连接,以运行 pg_dump
有关如何使用 pg_dump 或 pg_restore 的特定信息,请参阅 PostgreSQL 文档。
9/15/2013