克隆PostgreSQL 8.3.7

时间:2014-07-16 14:56:12

标签: postgresql clone

我需要将PostgreSQL 8.3.7从一台服务器克隆到另一台服务器,停机时间最短。

我目前的做法是: 1.源数据库上的pg_start_backup。 2.在源数据库服务器上创建文件系统的快照 3.源数据库上的pg_stop备份。 3.将pg_data目录从源服务器复制到目标服务器 4.将所有剩余的WAL文件从pg_xlog复制到目标服务器。

我不知道怎么告诉PostgreSQL应用所有的WAL文件。 我想手动完成,我不想设置“热待机”。

我是否需要执行任何命令指示PostgreSQL应用WAL文件,是否有办法检查哪些WAL文件已应用?

1 个答案:

答案 0 :(得分:0)

我假设您要求进行一次性操作,而不是让克隆数据库与原始数据库保持同步的方法。

避免任何停机时间的最佳方法是:

  1. rsync包含数据库目录和事务日志(pg_xlog)到克隆位置的文件系统,
  2. 致电pg_start_backup()
  3. rsync包含数据库目录和事务日志(pg_xlog)的文件系统到克隆位置再次 - 这应该花费更短的时间比第一个rsync,最后是
  4. 致电pg_stop_backup()
  5. 现在,如果您在克隆上启动PostgreSQL,它将自动恢复克隆的数据库和事务日志并开始接受查询。我不知道如何手动应用事务日志。