一、归档配置
1
、创建归档目录
# su - polardb
$ mkdir -p /home/{backups,archive_wals} |
2
、开启归档参数
alter system set wal_level = 'replica';
alter system set wal_keep_segments=10;
alter system set archive_mode = on;
alter system set archive_command ='test ! -f /home/archive_wals/%f && pfs cp -S disk /vda/data/pg_wal/%f /home/archive_wals/%f ';
select pg_reload_conf();
参数说明:
wal_level
决定多少信息写入到 WAL 中。默认值是replica,它会写入足够的数据以支持WAL归档和复制,包括在后备服务器上运行只读查询。minimal会去掉除从崩溃或者立即关机中进行恢复所需的信息之外的所有记录。最后,logical会增加支持逻辑解码所需的信息。每个层次包括所有更低层次记录的信息。这个参数只能在服务器启动时设置。
wal_keep_segments
指定在后备服务器需要为流复制获取日志段文件的情况下,pg_wal目录下所能保留的过去日志文件段的最小数目。每个段通常是 16 兆字节。如果一个连接到发送服务器的后备服务器落后了超过wal_keep_segments个段,发送服务器可以移除一个后备机仍然需要的 WAL 段,在这种情况下复制连接将被中断。最终结果是下行连接也将最终失败(不过,如果在使用 WAL 归档,后备服务器可以通过从归档获取段来恢复)。
archive_mode
当启用archive_mode时,可以通过设置 archive_command命令将完成的 WAL 段发送到 归档存储。除用于禁用的off之外,还有两种模式: on和always。在普通操作期间,这两种模式之间 没有区别,但是当设置为always时,WAL 归档器在归档恢复 或者后备模式下也会被启用。在always模式下,所有从归档恢复 的或者用流复制传来的文件将被(再次)归档。
archive_command
本地shell命令被执行来归档一个完成的 WAL 文件段。字符串中的任何%p被替换成要被归档的文件的路径名,而%f只被文件名替换(路径名是相对于服务器的工作目录, 即集簇的数据目录)。如果要在命令里嵌入一个真正的%字符,可以使用%%。有一点很重要,该命令只在成功时返回一个零作为退出状态。 |
3
、启动数据库
# su - polardb
$ pg_ctl restart -m fast |
说明:开启归档操作需要重启数据库。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/28833846/viewspace-2734059/,如需转载,请注明出处,否则将追究法律责任。