我使用archive_command
下面的文件来归档 WAL 文件。假设我已经接触过该文件archive_active
。PostgreSQL 什么时候执行提供archive_command
的归档 WAL 文件?
我知道我们可以使用该函数pg_switch_xlog()
按需归档WAL,还有其他触发条件吗?
PostgreSQL 版本:9.3.0。
--postgresql.conf
archive_command = 'test ! -f /archive/pg93/archive_active || cp %p /archive/pg93/%f'
wal_level = hot_standby
archive_mode = on
Run Code Online (Sandbox Code Playgroud)
--归档目录
[pg93@redhatB pg93]$ pwd
/archive/pg93
[pg93@redhatB pg93]$ ll
total 32M
-rw-------. 1 pg93 pg93 16M Oct 16 11:05 00000001000000000000007A
-rw-------. 1 pg93 pg93 16M Oct 16 11:07 00000001000000000000007B
-rw-rw-r--. 1 pg93 pg93 0 Oct 16 11:05 archive_active
Run Code Online (Sandbox Code Playgroud)
Jim*_*nke 11
每次将存档日志切换到新日志时,都会执行存档命令。正如您所说,可以通过调用该pg_switch_xlog()
函数来手动触发。
除此之外,归档日志在满时需要更改为新的,默认情况下是达到 16MB 时,但可以在编译时更改。
您还可以使用参数指定超时值,该参数archive_timeout
将在设置的秒数后执行命令,这对于活动较少的数据库很有用。
更新:
版本 10 引入了一项更改,将引用“xlog”的所有内容重命名为“wal”,因此pg_switch_xlog()
现在称为pg_switch_wal()
归档时间: |
|
查看次数: |
20689 次 |
最近记录: |