1. 查看备份文件信息
查看、删除备份时特有选项
参数名 | 描述 |
timeline | 查看备份文件的时间线。 |
DATE | 查看指定的备份文件的详细信息。 |
查看、删除备份时公共参数
参数名/缩写 | 描述 |
-d / --dbname dbname | "指定要连接的数据库名称,如postgres。 DBNAME的取值范围和默认值如下: 取值范围:GaussDB中存在的数据库名称。 默认值:与当前操作系统用户同名的数据库名称。" |
-h / --host HOSTNAME | "指定数据库服务所在的IP地址或者主机名。 HOSTNANME的取值范围和默认值如下: 取值范围: 127.0.0.1 localhost 默认值:localhost。" |
-p / --port port | "指定数据库服务的端口号。 PORT的取值范围和默认值如下: 取值范围:GaussDB的端口号。 默认值:5432。" |
-U / --username username | "指定连接到数据库的数据库用户名。 USERNAME的取值范围和默认值如下: 取值范围:GaussDB中存在的数据库用户名称。 默认值:与当前操作系统用户同名的数据库用户的名称。" |
-d / --gaussdata path | "指定数据库数据存放位置。 说明: gs_rman在root用户下使用sudo命令切换到某一用户运行时,需要增加此参数,以指定数据库数据存放位置。 PATH的取值范围和默认值如下: 取值范围:GaussDB的数据目录。 默认值:与GaussDB的环境变量GAUSSDATA的值相同。" |
-A / --arclog-path path | "指定数据库WAL归档日志文件存放位置。 PATH的取值范围和默认值如下: 取值范围:GaussDB的WAL归档日志目录。 默认值:可以通过环境变量ARCLOG_PATH 指定默认值,详细请参见初始化配置。" |
-S / --srvlog-path path | "指定数据库日志存放位置。 PATH的取值范围和默认值如下: 取值范围:GaussDB的运行日志目录。 默认值:$GAUSSDATA/pg_log。也可以通过环境变量SRVLOG_PATH指定默认值,详细请参见初始化配置。" |
-b / --backup-path path | "指定备份数据存放位置。 PATH的取值范围和默认值如下: 取值范围:GaussDB的数据目录。 默认值:可以通过环境变量BACKUP_PATH指定默认值,详细请参见初始化配置。" |
--debug | 显示命令的调试信息。 |
--verbose / -v | 显示命令的执行信息。 |
操作步骤
查看备份文件信息可在单机、双机(主机)上执行。下面以在主机上查看为例进行介绍,在单机上的操作方法与此相同。
假设备份目录为/home/gaussdba/backup,执行如下命令可查看备份文件
gs_rman show -B /home/gaussdba/backup
示例1:查看备份文件。
假设备份目录为/home/gaussdba/backup
gaussdba@linux:~> gs_rman show -B /home/gaussdba/backup
===========================================================================================
Start Time Total Data WAL Log Backup BackupID Status Type
===========================================================================================
2013-01-15 15:12:38 0m 37MB ---- 268MB 0B 3869kB 1007 DONE ZLIB
2013-01-15 15:08:36 0m ---- 37MB 234MB 3200kB 616kB 1006 OK ZLIB
2013-01-15 15:08:18 0m 37MB ---- 201MB 3200kB 3925kB 1005 OK ZLIB
2013-01-15 14:41:23 0m ---- 37MB 167MB ---- 428kB 1004 OK ZLIB
2013-01-15 14:36:18 0m ---- ---- 134MB ---- 395kB 1003 OK ZLIB
2013-01-15 14:35:41 0m ---- 37MB 100MB ---- 359kB 1002 OK ZLIB
2013-01-15 14:34:14 0m ---- 37MB 67MB ---- 78MB 1001 OK FALSE
字段说明
字段 | 说明 |
Start | 备份的启动时间。 |
Time | 备份使用的时间,单位是分钟。小于1分钟则显示为0。 |
Total | 全量备份时读取的数据库的大小。 |
Data | 增量备份时读取的数据库的大小。 |
WAL | 备份时读取的WAL日志文件的大小。 |
Log | 备份时读取的服务器日志文件的大小。 |
Backup | 本次备份所占用的磁盘空间大小。 |
BackupID | 本次备份的ID号。 |
Status | 备份的状态,不同取值的含义如下。 |
Type | 备份时使用的压缩格式。 |
示例2:查看备份文件的时间线。
假设备份目录为/home/gaussdba/backup
gaussdba@linux:~> gs_rman show timeline -B /home/gaussdba/backup/
=====================================================================
Start Mode Current TLI Parent TLI Backup ID Status
=====================================================================
2013-01-23 19:08:24 ARCH 17 12 1006 OK
2013-01-23 19:07:21 INCR 17 12 1005 OK
2013-01-23 19:05:31 FULL 17 12 1004 OK
2013-01-23 19:04:51 ARCH 17 12 1003 ERROR
2013-01-23 16:21:51 FULL 17 12 1002 OK
2013-01-23 15:55:06 FULL 16 14 1001 OK
字段说明
字段 | 说明 |
Start | 备份的启动时间。 |
Mode | 备份模式。 |
Current TLI | 备份的时间线(timeline),与父时间线成对出现。 |
Parent TLI | 当前时间线的父时间线,用来表明时间线之间的关系。 |
BackupID | 本次备份的ID号。 |
Status | 备份的状态。 |
示例3:查看指定时间点产生的备份文件的详细信息。
假设备份目录为/home/gaussdba/backup
gaussdba@linux:~/backup> gs_rman show 2013-01-13 10:37:50 -B /home/gaussdba/backup
# configuration
BACKUP_MODE=FULL
WITH_SERVERLOG=false
COMPRESS_DATA=FALSE
# result
TIMELINEID=1
START_LSN=0/0a000020
STOP_LSN=0/0a0000e0
START_TIME='2013-01-13 10:37:50'
END_TIME='2013-01-13 10:37:53'
RECOVERY_XID=1327
RECOVERY_TIME='2013-01-13 10:37:53'
TOTAL_DATA_BYTES=29979901
READ_DATA_BYTES=29979901
READ_ARCLOG_BYTES=0
WRITE_BYTES=20667777
BLOCK_SIZE=8192
XLOG_BLOCK_SIZE=8192
STATUS=DONE
BACKUPID=1002
字段说明
字段 | 说明 |
START_TIME | 备份开始的时间。 |
END_TIME | 备份结束的时间。 |
RECOVERY_XID | 备份时截止的事务ID值。 |
2. 查看备份文件时间线
参数名 | 描述 |
-q / --quiet | 屏蔽gs_rman运行中在控制台输出的日志、信息和提示消息。 |
操作
查看备份文件时间线可在单机、双机(主机)上执行。下面以在主机上查看为例进行介绍,在单上的操作方法与此相同。
假设备份目录为/home/gaussdba/backup,执行如下命令可查看备份文件时间线。
gs_rman show timeline -B /home/gaussdba/backup
示例
假设备份目录为/home/gaussdba/backup。
gaussdba@linux:~> gs_rman show timeline -B /home/gaussdba/backup/
============================================================
Start Mode Current TLI Parent TLI Status
============================================================
2013-01-23 19:08:24 ARCH 17 12 OK
2013-01-23 19:07:21 INCR 17 12 OK
2013-01-23 19:05:31 FULL 17 12 OK
2013-01-23 19:04:51 ARCH 17 12 ERROR
2013-01-23 16:21:51 FULL 17 12 OK
2013-01-23 15:55:06 FULL 16 14 OK
3. 查看备份日志
选项介绍
参数名 | 描述 |
-q / --quiet | 屏蔽gs_rman运行中在控制台输出的日志、信息和提示消息。 |
--operation MODE | 指定需要查看的操作。 |
--start-time TIME | 指定日志的起始时间。 |
--end-time TIME | 指定日志的结束时间。如果没有指定起始时间和结束时间,显示所有的操作。 |
操作
查看备份日志可在单机、双机(主机)上执行。下面以在主机上查看为例进行介绍,在单上的操作方法与此相同。
假设备份目录为/usr/local/pgsql/rmandatabackup,执行如下命令可查看备份日志。
gs_rman -W test@123 -D /usr/local/pgsql/database -A /usr/local/pgsql/archive -S /usr/local/pgsql/srvlog -B /usr/local/pgsql/rmandatabackup showactivity --start-time='2013-05-23 15:37:52' --end-time='2013-05-23 16:49:43' --operation='backup'
示例
假设备份目录为/usr/local/pgsql/rmandatabackup
gaussdba@linux:~> gs_rman -W test@123 -D /usr/local/pgsql/database -A /usr/local/pgsql/archive -S /usr/local/pgsql/srvlog -B /usr/local/pgsql/rmandatabackup showactivity --start-time='2013-05-23 15:37:52' --end-time='2013-05-23 16:49:43' --operation='backup'
=====================================================================
Time Operation BackupID
=====================================================================
2013-05-23 15:37:52 init NA
2013-05-23 15:38:17 backup 1001
2013-05-23 15:38:37 validate 1001
2013-05-23 16:49:43 backup 1002
2013-05-23 20:30:49 validate 1001
2013-05-23 20:30:49 validate 1002
2013-05-23 20:46:34 validate 1001
2013-05-23 20:46:35 validate 1002
字段说明
字段 | 说明 |
Time | 操作的执行时间。 |
Operation | 操作类型。 |
BackupID | 备份编号。 |
4. 删除备份文件
一般情况下,配置备份文件的自动保存时间,就可以满足删除多余备份文件的要求。关于配置备份文件自动保存时间的方法请参见gs_rman初始化配置。
操作
1.参见查看备份文件信息查看当前已有的备份文件。
例如,使用如下命令查看备份信息。并对如下四个备份信息标识为A1、A2、A3和A4。
gs_rman show timeline -B /home/gaussdba/backup/
=======================================================================
Start Mode Current TLI Parent TLI Backup ID Status
=======================================================================
2013-01-15 18:24:10 FULL 1 0 1004 OK /// A1
2013-01-15 18:24:03 ARCH 1 0 1003 OK /// A2
2013-01-15 18:23:46 FULL 1 0 1002 OK /// A3
2013-01-15 18:22:01 FULL 1 0 1001 OK /// A4
2.执行如下命令删除不需要的备份文件信息。
例如,执行下面的命令会把A2、A3、A4都删除,仅保留A1。
gs_rman -B /home/gaussdba/backup/ delete 2013-01-15 18:24:10
说明: 时间必须指定为全量备份的“Start”时间,或者稍微之后的时间;此时间之前的所有备份(包括全量备份、增量备份和WAL备份)会被删除,但是至少保留最近的一次全量备份。
示例
1.执行如下命令查看备份信息。
gs_rman show timeline -B /home/gaussdba/backup/
=======================================================================
Start Mode Current TLI Parent TLI Backup ID Status
=======================================================================
2013-01-16 10:56:48 FULL 1 0 1005 OK
2013-01-16 10:31:57 FULL 1 0 1004 OK
2013-01-16 10:31:14 FULL 0 0 1003 ERROR
2013-01-16 10:30:50 FULL 1 0 1002 OK
2013-01-15 18:24:10 FULL 1 0 1001 OK
2.执行如下命令删除备份文件。
指定删除2013-01-16 10:56:48时间点之前的备份文件。
gs_rman -B /home/gaussdba/backup/ delete 2013-01-16 10:56:48
gaussdba: delete: 2013-01-16 10:31:57
gaussdba: delete: 2013-01-16 10:31:14
gaussdba: delete: 2013-01-16 10:30:50
gaussdba: delete: 2013-01-15 18:24:10
3.执行如下命令查看删除结果。
gs_rman show timeline -B /home/gaussdba/backup/
从如下结果来看,2013-01-16 10:56:48时间点之前的备份文件都已经被删除了。
=======================================================================
Start Mode Current TLI Parent TLI Backup ID Status
=======================================================================
2013-01-16 10:56:48 FULL 1 0 1005 OK
总结:
从备份层面看删除备份已经成功,但从操作系统层面看备份目录下仍然存在删除后的残余文件(由于文件很小,可忽略不计)