云数据库 GAUSSDB-备份恢复控制函数:恢复控制函数

时间:2023-11-15 14:50:15

恢复控制函数

恢复信息函数提供了当前备机状态的信息。这些函数可能在恢复期间或正常运行中执行。

  • pg_is_in_recovery()

    描述:如果恢复仍然在进行中则返回true。

    返回值类型:bool

  • pg_last_xlog_receive_location()

    描述:获取最后接收事务日志的位置并通过流复制将其同步到磁盘。当流复制正在进行时,事务日志将持续递增。如果恢复已完成,则最后一次获取的WAL记录会被静态保持并在恢复过程中同步到磁盘。如果流复制不可用,或还没有开始,这个函数返回NULL。

    返回值类型:text

  • pg_last_xlog_replay_location()

    描述:获取最后一个事务日志在恢复时重放的位置。如果恢复仍在进行,事务日志将持续递增。如果已经完成恢复,则将保持在恢复期间最后接收WAL记录的值。如果未进行恢复但服务器正常启动时,则这个函数返回NULL。

    返回值类型:text

  • pg_last_xact_replay_timestamp()

    描述:获取最后一个事务在恢复时重放的时间戳。这是为在主节点上生成事务提交或终止WAL记录的时间。如果在恢复时没有事务重放,则这个函数返回NULL。如果恢复仍在进行,则事务日志将持续递增。如果恢复已经完成,则将保持在恢复期间最后接收WAL记录的值。如果服务器无需恢复就已正常启动,则这个函数返回NULL。

    返回值类型:timestamp with time zone

恢复控制函数控制恢复的进程。这些函数可能只在恢复时被执行。

  • pg_is_xlog_replay_paused()

    描述:如果恢复暂停则返回true。

    返回值类型:bool

  • pg_xlog_replay_pause()

    描述:立即暂停恢复。

    返回值类型:void

  • pg_xlog_replay_resume()

    描述:如果恢复处于暂停状态,则重新启动。

    返回值类型:void

  • gs_get_active_archiving_standby()

    描述:查询同一分片内归档备机的信息。返回备机名,备机归档位置和已归档日志个数。

    返回值类型:text,text,int

  • gs_pitr_get_warning_for_xlog_force_recycle()

    描述:查询开启归档后是否因归档槽不推进日志大量堆积导致日志被回收。

    返回值类型:bool

  • gs_pitr_clean_history_global_barriers(stop_barrier_timestamp cstring)

    描述:清理指定时间之前所有barrier记录。返回最老的barrier记录。入参为cstring类型,linux时间戳。需要管理员角色或运维管理员角色执行。

    返回值类型:text

  • gs_pitr_archive_slot_force_advance(stop_barrier_timestamp cstring)

    描述:强制推进归档槽,并清理不需要的barrier记录。返回新的归档槽位置。入参为cstring类型,linux时间戳。需要管理员角色或运维管理员角色执行。

    返回值类型:text

当恢复暂停时,没有发生数据库更改。如果是在热备里,所有新的查询将看到一致的数据库快照,并且不会有进一步的查询冲突产生,直到恢复继续。

如果不能使用流复制,则暂停状态将无限的延续。当流复制正在进行时,将连续接收WAL记录,最终将填满可用磁盘空间,这个进度取决于暂停的持续时间,WAL生成的速度和可用的磁盘空间。

support.huaweicloud.com/distributed-devg-v2-gaussdb/gaussdb_v5r2c10_0367.html