返回首页

gbase数据、南大通用产品文档:GBase8c

更新日期:2024年09月11日

数字操作符

+
加法运算
示例:
gbase=# SELECT 2+3 AS RESULT;
result
--------
5
(1 row)

-
减法运算
示例:
gbase=# SELECT 2-3 AS RESULT;
result
--------
-1
(1 row)

*
乘法运算
示例:
gbase=# SELECT 2*3 AS RESULT;
result

GBase 8c SQL 参考手册
南大通用数据技术股份有限公司
156
--------
6
(1 row)

/
除法运算
示例:
gbase=# SELECT 4/2 AS RESULT;
result
--------
2
(1 row)
gbase=# SELECT 4/3 AS RESULT;
result
------------------

通用参数

command

GBase 8c 工具参考手册
南大通用数据技术股份有限公司
270
gs_probackup 除version 和help 以外的子命令:
init、
add-instance、
del-instance、
set-config、
set-backup、show-config、show、backup、restore、merge、delete、validate。

-?, --help
显示gs_probackup 命令行参数的帮助信息,然后退出。
子命令中只能使用--help,不能使用-?。

-V, --version
打印gs_probackup 版本,然后退出。

-B backup-path, --backup-path=backup-path
备份的路径。
系统环境变量:$BACKUP_PATH

-D pgdata-path, --pgdata=pgdata-path
数据目录的路径。
系统环境变量:$PGDATA

--instance=instance_name
实例名。

-i backup-id, --backup-id=backup-id
备份的唯一标识。

--format=format
指定显示备份信息的格式,支持plain 和json 格式。
默认值:plain

--status=backup_status
删除指定状态的所有备份,包含以下状态:

GBase 8c 工具参考手册
南大通用数据技术股份有限公司
271
OK:备份已完成且有效。
DONE:备份已完成但未经过验证。
RUNNING:备份正在进行中。
MERGING:备份正在合并中。
DELETING:备份正在删除中。
CORRUPT:部分备份文件已损坏。
ERROR:由于意外错误,备份失败。
ORPHAN:由于其父备份之一已损坏或丢失,备份无效。

-j threads_num, --threads=threads_num
设置备份、还原、合并进程的并行线程数。

--archive
显示WAL 归档信息。

--progress
显示进度。

--note=text
给备份添加note。
备份相关参数

-b backup-mode, --backup-mode=backup-mode
指定备份模式,支持FULL 和PTRACK。
FULL:创建全量备份,全量备份包含所有数据文件。
PTRACK:创建PTRACK 增量备份。

-C, --smooth-checkpoint

GBase 8c 工具参考手册
南大通用数据技术股份有限公司
272
将检查点在一段时间内展开。默认情况下,gs_probackup 会尝试尽快完成检查点。

-S slot-name, --slot=slot-name
指定WAL 流处理的复制slot。

--temp-slot
在备份的实例中为WAL 流处理创建一个临时物理复制slot,它确保在备份过程中,所
有所需的WAL 段仍然是可用的。
默认的slot 名为pg_probackup_slot,可通过选项--slot/-S 更改。

--backup-pg-log
将日志目录包含到备份中。此目录通常包含日志消息。
默认情况下包含日志目录,
但不
包含日志文件。如果修改了默认的日志路径,需要备份日志文件时可使用-E 参数进行备份,
使用方法见下文。

-E external-directories-paths, --external-dirs=external-directories-paths
将指定的目录包含到备份中。此选项对于备份位于数据目录外部的脚本、sql 转储和配
置文件很有用。如果要备份多个外部目录,请在Unix 上用冒号分隔它们的路径。
例如:-E /tmp/dir1:/tmp/dir2

--skip-block-validation
关闭块级校验,加快备份速度。

--no-validate
在完成备份后跳过自动验证。

--no-sync
不将备份文件同步到磁盘。

--archive-timeout=timeout
以秒为单位设置流式处理的超时时间。

GBase 8c 工具参考手册
南大通用数据技术股份有限公司
273
默认值:300

-t rwtimeout
以秒为单位的连接的超时时间。
默认值: 120
恢复相关参数

-I, --incremental-mode=none|checksum|lsn
若PGDATA 中可用的有效页没有修改,则重新使用它们。
默认值:none

--external-mapping=OLDDIR=NEWDIR
在恢复时,将包含在备份中的外部目录从_OLDDIR_重新定位到_NEWDIR_目录。
_OLDDIR_和_NEWDIR_都必须是绝对路径。如果路径中包含“=”,则使用反斜杠转义。此
选项可为多个目录多次指定。

-T OLDDIR=NEWDIR, --tablespace-mapping=OLDDIR=NEWDIR
在恢复时,
将表空间从_OLDDIR_重新定位到_NEWDIR_目录。
_OLDDIR_和_NEWDIR_
必须都是绝对路径。如果路径中包含“=”,则使用反斜杠转义。多个表空间可以多次指定此
选项。此选项必须和--external-mapping 一起使用。

--skip-external-dirs
跳过备份中包含的使用--external-dirs 选项指定的外部目录。
这些目录的内容将不会被恢
复。

--skip-block-validation
跳过块级校验,
以加快验证速度。
在恢复之前的自动验证期间,
将仅做文件级别的校验。

--no-validate
跳过备份验证。

GBase 8c 工具参考手册
南大通用数据技术股份有限公司
274

--force
允许忽略备份的无效状态。如果出于某种原因需要从损坏的或无效的备份中恢复数据,
可以使用此标志。请谨慎使用。
恢复目标相关参数(recovery_options)

当前不支持配置连续的WAL 归档的PITR,因而使用这些参数会有一定限制,具
体如下描述。如果需要使用持续归档的WAL 日志进行PITR 恢复,请按照下面描
述的步骤:
1. 将物理备份的文件替换目标数据库目录。
2. 删除数据库目录下pg_xlog/中的所有文件。
3. 将归档的WAL 日志文件复制到pg_xlog 文件中(此步骤可以省略,通过配置
recovery.conf 恢复命令文件中的restore_command 项替代)。
4. 在数据库目录下创建恢复命令文件recovery.conf,指定数据库恢复的程度。
5. 启动数据库。
6. 连接数据库,查看是否恢复到希望预期的状态。若已经恢复到预期状态,通过
pg_xlog_replay_resume()指令使主节点对外提供服务。

--recovery-target-lsn=lsn
指定要恢复到的lsn,当前只能指定备份的stop lsn。

--recovery-target-name=target-name
指定要将数据恢复到的已命名的保存点,保存点可以通过查看备份中recovery-name 字
段得到。

--recovery-target-time=time
指定要恢复到的时间,当前只能指定备份中的recovery-time。

GBase 8c 工具参考手册
南大通用数据技术股份有限公司
275

--recovery-target-xid=xid
指定要恢复到的事务ID,当前只能指定备份中的recovery-xid。

--recovery-target-inclusive=boolean
当该参数指定为true 时,恢复目标将包括指定的内容。
当该参数指定为false 时,恢复目标将不包括指定的内容。
该参数必须和--recovery-target-name 、--recovery-target-time 、--recovery-target-lsn 或
--recovery-target-xid 一起使用。
留存相关参数(retention_options)

可以和backup 和delete 命令一起使用这些参数。

--retention-redundancy=retention-redundancy
指定在数据目录中留存的完整备份数。必须为正整数。0 表示禁用此设置。
默认值:0

--retention-window=retention-window
指定留存的天数。必须为正整数。0 表示禁用此设置。
默认值:0

--wal-depth=wal-depth
每个时间轴上必须留存的执行PITR 能力的最新有效备份数。必须为正整数。0 表示禁
用此设置。
默认值:0

--delete-wal
从任何现有的备份中删除不需要的WAL 文件。

--delete-expired

GBase 8c 工具参考手册
南大通用数据技术股份有限公司
276
删除不符合pg_probackup.conf 配置文件中定义的留存策略的备份。

--merge-expired
将满足留存策略要求的最旧的增量备份与其已过期的父备份合并。

--dry-run
显示所有可用备份的当前状态,不删除或合并过期备份。
固定备份相关参数(pinning_options)

如果要将某些备份从已建立的留存策略中排除,可以和backup 和set-backup 命令
一起使用这些参数。

--ttl=interval
指定从恢复时间开始计算,
备份要固定的时间量。
必须为正整数。
0 表示取消备份固定。
支持的单位:ms、s、min、h、d(默认为s)。
例如:--ttl=30d。

--expire-time=time
指定备份固定失效的时间戳。必须是ISO-8601 标准的时间戳。
例如:--expire-time='2020-01-01 00:00:00+03'
日志相关参数(logging_options)
日志级别:verbose、log、info、warning、error 和off。

--log-level-console=log-level-console
设置要发送到控制台的日志级别。每个级别都包含其后的所有级别。
级别越高,发送的
消息越少。指定off 级别表示禁用控制台日志记录。
默认值:info

--log-level-file=log-level-file

GBase 8c 工具参考手册
南大通用数据技术股份有限公司
277
设置要发送到日志文件的日志级别。每个级别都包含其后的所有级别。级别越高,
发送
的消息越少。指定off 级别表示禁用日志文件记录。
默认值:off

--log-filename=log-filename
指定要创建的日志文件的文件名。文件名可以使用strftime 模式,因此可以使
用%-escapes 指定随时间变化的文件名。
例如,
如果指定了“pg_probackup-%u.log”模式,
则pg_probackup 为每周的每一天生成单
独的日志文件,其中%u 替换为相应的十进制数字,即pg_probackup-1.log 表示星期一;
pg_probackup-2.log 表示星期二,以此类推。
如果指定了--log-level-file 参数启用日志文件记录,则该参数有效。
默认值:“pg_probackup.log”

--error-log-filename=error-log-filename
指定仅用于error 日志的日志文件名。指定方式与--log-filename 参数相同。
此参数用于故障排除和监视。

--log-directory=log-directory
指定创建日志文件的目录。必须是绝对路径。此目录会在写入第一条日志时创建。
默认值:$BACKUP_PATH/log

--log-rotation-size=log-rotation-size
指定单个日志文件的最大大小。如果达到此值,则启动gs_probackup 命令后,日志文
件将循环,但help 和version 命令除外。0 表示禁用基于文件大小的循环。
支持的单位:KB、MB、GB、TB(默认为KB)。
默认值:0

--log-rotation-age=log-rotation-age

GBase 8c 工具参考手册
南大通用数据技术股份有限公司
278
单个日志文件的最大生命周期。如果达到此值,则启动gs_probackup 命令后,日志文
件将循环,但help 和version 命令除外。$BACKUP_PATH/log/log_rotation 目录下保存最后
一次创建日志文件的时间。0 表示禁用基于时间的循环。
支持的单位:ms、s、min、h、d(默认为min)。
默认值:0
连接相关参数(connection_options)

可以和backup 命令一起使用这些参数。

-d dbname, --pgdatabase=dbname
指定要连接的数据库名称。
该连接仅用于管理备份进程,
因此您可以连接到任何现有的
数据库。
如果命令行、
PGDATABASE 环境变量或pg_probackup.conf 配置文件中没有指定此
参数,
则gs_probackup 会尝试从PGUSER 环境变量中获取该值。
如果未设置PGUSER 变量,
则从当前用户名获取。
系统环境变量:$PGDATABASE

-h hostname, --pghost=hostname
指定运行服务器的系统的主机名。如果该值以斜杠开头,则被用作到Unix 域套接字的
路径。
系统环境变量:$PGHOST
默认值:local socket

-p port, --pgport=_p_ort
指定服务器正在侦听连接的TCP 端口或本地Unix 域套接字文件扩展名。
系统环境变量:$PGPORT
默认值:5432

GBase 8c 工具参考手册
南大通用数据技术股份有限公司
279

-U username, --pguser=username
指定所连接主机的用户名。
系统环境变量:$PGUSER

-w, --no-password
不出现输入密码提示。
如果主机要求密码认证并且密码没有通过其它形式给出,
则连接
尝试将会失败。该选项在批量工作和不存在用户输入密码的脚本中很有帮助。

-W password, --password=password
指定用户连接的密码。
如果主机的认证策略是trust,
则不会对系统管理员进行密码验证,
即无需输入-W 选项;如果没有-W 选项,并且不是系统管理员,则会提示用户输入密码。
压缩相关参数(compression_options)

可以和backup 命令一起使用这些参数。

--compress-algorithm=compress-algorithm
指定用于压缩数据文件的算法。
取值包括zlib、
pglz 和none。
如果设置为zlib 或pglz,
此选项将启用压缩。
默认情况下,
压缩功能处于关闭状态。
默认值:none

--compress-level=compress-level
指定压缩级别。取值范围:0~9
0 表示无压缩。
1 表示压缩比最小,处理速度最快。
9 表示压缩比最大,处理速度最慢。
可与--compress-algorithm 选项一起使用。

GBase 8c 工具参考手册
南大通用数据技术股份有限公司
280
默认值:1

--compress
以--compress-algorithm=zlib 和--compress-level=1 进行压缩。
远程模式相关参数(remote_options)

通过SSH 远程运行gs_probackup 操作的相关参数。
可以和add-instance、
set-config、
backup、restore 命令一起使用这些参数。

--remote-proto=protocol
指定用于远程操作的协议。目前只支持SSH 协议。取值包括:
ssh:通过SSH 启用远程备份模式。这是默认值。
none:显式禁用远程模式。
如果指定了--remote-host 参数,可以省略此参数。

--remote-host=destination
指定要连接的远程主机的IP 地址或主机名。

--remote-port=port
指定要连接的远程主机的端口号。
默认值:22

--remote-user=username
指定SSH 连接的远程主机用户。如果省略此参数,则使用当前发起SSH 连接的用户。
默认值:当前用户

--remote-path=path
指定gs_probackup 在远程系统的安装目录。

GBase 8c 工具参考手册
南大通用数据技术股份有限公司
281
默认值:当前路径

--remote-libpath=libpath
指定gs_probackup 在远程系统安装的lib 库目录。

--ssh-options=ssh_options
指定SSH 命令行参数的字符串。
例如:--ssh-options='-c cipher_spec -F configfile'
说明:
如果因为网络临时故障等原因导致server 端无应答,gs_probackup 将在等待
archive-timeout(默认300 秒)后退出。
如果备机lsn 与主机有差别时,
数据库会不停地刷以下log 信息,
此时应重新build 备机。
LOG: walsender thread shut down
LOG: walsender thread started
LOG: received wal replication command: IDENTIFY_VERSION
LOG: received wal replication command: IDENTIFY_MODE
LOG: received wal replication command: IDENTIFY_SYSTEM
LOG: received wal replication command: IDENTIFY_CONSISTENCE 0/D0002D8
LOG: remote request lsn/crc: [xxxxx] local max lsn/crc: [xxxxx]

高可用能力
........................................
10