用Veritas NetBackup备份数据库
上级主题: 备份和恢复数据库
NetBackup包括下列服务器和客户端软件:
- NetBackup的主服务器管理NetBackup备份、归档和恢复。主服务器负责NetBackup的媒介和设备选择。
- NetBackup的媒介服务器是NetBackup的设备主机,它通过允许NetBackup使用附加到其上的存储设备来提供额外的存储。
有关NetBackup的信息请见Veritas NetBackup入门指南。
限制
- NetBackup与DDBoost不兼容。不能在单次的备份或恢复操作中同时使用NetBackup和DDBoost。
- 对于增量备份集(一个完全备份和相关的增量备份),备份集必须在单个设备上。例如,一个备份集必须都在一个NetBackup系统上。备份集不能有一些备份在NetBackup系统上而其他备份在本地文件系统或者Data Domain系统上。
用户在Greenplum数据库的Master主机和所有Segment主机上安装并且配置NetBackup的客户端软件。NetBackup客户端软件必须能够与NetBackup服务器软件通信。
- 在Greenplum数据库主机上安装NetBackup客户端软件。在UNIX系统上安装NetBackup客户端的信息请见NetBackup安装文档。
在Greenplum数据库的Master和Segment主机上的NetBackup配置文件/usr/openv/netbackup/bp.conf中设置参数。在每台Greenplum数据库主机上设置下列参数。
有关bp.conf文件的信息请见Veritas NetBackup管理员指南。
为Greenplum数据库主机设置LD_LIBRARY_PATH环境变量以使用NetBackup客户端。Greenplum数据库会安装用于NetBackup客户端的NetBackup SDK库文件。要配置Greenplum数据库使用对应于主机上安装的NetBackup客户端版本的库文件,在文件$GPHOME/greenplum_path.sh增加下面的行:
将NN替换为安装在该主机上的NetBackup客户端版本(例如对NetBackup 7.7.x使用77)。
LD_LIBRARY_PATH行应该被加在$GPHOME/greenplum_path.sh中这一行的前面:
执行这个命令来移除当前的LD_LIBRARY_PATH值:
执行这个命令为Greenplum数据库更新环境变量:
有关配置NetBackup服务器的信息请见Veritas NetBackup管理员指南。
确保Greenplum数据库主机被列为NetBackup服务器的NetBackup客户端。
在NetBackup管理控制台中,NetBackup客户端、媒介服务器和主服务器的信息在Host Properties节点的NetBackup Management节点中。
配置一个NetBackup存储单元。这个存储单元必须被配置为指向一个可写的磁盘位置。
配置一种NetBackup备份策略以及策略中的计划。
在NetBackup管理控制台中,Master Server节点下面的Policy节点就是用户创建策略和策略的计划的地方。
在Policy Attributes页面中,这些值是Greenplum数据库必需的:
Policy type域中的值必须是DataStore
Policy storage域中的值是前一步中创建的存储单元。
Limit jobs per policy域中的值必需至少为3。
在Policy Schedules页面中,为该策略创建一个NetBackup计划。
为Greenplum数据库配置NetBackup
有关配置NetBackup服务器的信息请见Veritas NetBackup管理员指南。
配置一个NetBackup存储单元。这个存储单元必须被配置为指向一个可写的磁盘位置。
在NetBackup管理控制台中,NetBackup存储单元的信息在Storage节点的NetBackup Management节点中。
配置一种NetBackup备份策略以及策略中的计划。
在NetBackup管理控制台中,Master Server节点下面的Policy节点就是用户创建策略和策略的计划的地方。
在Policy Attributes页面中,这些值是Greenplum数据库必需的:
Policy storage域中的值是前一步中创建的存储单元。
Limit jobs per policy域中的值必需至少为3。
在Policy Schedules页面中,为该策略创建一个NetBackup计划。
Greenplum数据库的gpcrondump和gpdbrestore工具支持备份或者恢复数据到NetBackup存储单元的选项。在执行备份时,Greenplum数据库直接把数据文件传输到NetBackup存储单元。没有备份数据文件被创建在Greenplum数据库主机上。备份元数据文件同时被存储在主机上以及被被分到NetBackup存储单元。
在执行恢复时,文件从NetBackup服务器检索出来,然后被恢复。
下列是用于NetBackup的gpcrondump工具选项:
gpdbrestore工具为NetBackup提供了下列选项:
注意: 在执行操作从NetBackup恢复时,用户必须用gpdbrestore工具的-t选项指定备份时间戳。
策略名和计划名被定义在NetBackup的主服务器上。有关策略名和计划名的信息请见。有关Greenplum数据库工具的信息请见Greenplum数据库工具指南。
注意: 用户必须在为NetBackup计划定义的时间窗口期间运行gpcrondump或者gpdbrestore命令。
在备份或恢复操作期间,会为下列类型的Greenplum数据库数据创建一个单独的NetBackup任务:
- 每个Segment实例的Segment数据
- C数据库数据
- 元数据
- Master的Post数据
- 状态文件全局对象(gpcrondump -G选项)
- Master和Segment的配置文件(gpcrondump -g选项)
- 报告文件(gpcrondump -h选项)
在NetBackup管理控制台中,活动监视器会列出NetBackup任务。对每个任务,任务详情会显示Greenplum数据库的备份信息。
注意: 在备份或者恢复大量数据时,将NetBackup的CLIENT_READ_TIMEOUT选项设置为一个至少两倍于预期操作时长(以秒为单位)的值。CLIENT_READ_TIMEOUT的默认值是300秒(5分钟)。
例如,如果一次备份要用3小时,那么将CLIENT_READ_TIMEOUT设置为21600(2 x 3 x 60 x 60)。用户可以在NetBackup服务器上使用NetBackup的nbgetconfig和nbsetconfig命令来查看并改变该选项值。
有关CLIENT_READ_TIMEOUT以及nbgetconfig和nbsetconfig命令的信息请见NetBackup文档。
NetBackup备份和恢复命令例子
这个gpdbrestore命令从由NetBackup主服务器nbu_server1管理的数据中恢复Greenplum数据库数据。选项-t 20170530090000指定创建备份时gpcrondump生成的时间戳。-e选项指定在恢复目标数据库之前先删除它。