分类: DB2/Informix
2008-05-31 17:20:42
恢复命令和语法
$onbar -r # Full dbspace restore (salvages logs automatically). # Parallel restore.(unless BAR_MAX_BACKUP is set to 1). # To speed up restores, you can add additional CPU virtual processors. # In a warm restore, the -r option restores all down storage spaces and logical # logs, and skips online storage spaces. A down storage space means it is offline # or a chunk in it is inconsistent. $onbar -r -p # physical-only dbspace restore (no log salvage). Can be used to setup a secondary server for an HDR pair. $onbar -r dbspaces # restore dbspaces from a system backup. # Restore particular storage spaces (for example, a dbspaces named fin_dbspace1 # and fin_dbspace2)$onbar -r fin_dbspace1 fin_dbspace2. # You can also specify the storage spaces to restore by listing them in a text # file and passing the pathname of the file to OnBar with the -f option. $onbar -r -t time # point-in-time restore onbar -r -t time. |
全系统恢复必须是冷恢复,而且它必须恢复所有存储空间。全系统恢复不需要恢复逻辑日志。全系统恢复需要全系统备份。但是,可以用全系统备份执行一般的恢复。如果使用 onbar -b -w 执行全系统备份,那么可以使用以下任何命令执行恢复:
onbar -r -w # whole-system restore (salvages logs automatically) onbar -r -p -w # physical-only whole-system restore (no log salvage) onbar -r # parallel restore of the whole-system backup onbar -r dbspaces # restore dbspaces from a whole-system backup onbar -r -t time # point-in-time restore onbar -r -t time -w # whole-system point-in-time restore |
如果使用 onbar -r -p -w,在恢复完成时,数据库服务器就处于快速复原模式。再执行逻辑恢复(onbar -r -l)或使用 onmode -m 让数据库服务器进入在线模式。 注意:从 11.10 版本开始,OnBar 全系统备份和恢复行为发生了变化。
OnBar 支持恢复到时间点(-t 选项)或恢复到特定的日志号(-n 选项)。指定时间点恢复的方法是在 OnBar 命令中包含 -t 选项。
时间点恢复必须是冷恢复。
示例:执行冷时间点恢复:
要想将数据库服务器的数据恢复到特定日期和时间的状态,应该输入下面这样的命令,其中使用您的 GLS 地区的日期和时间格式:
onbar -r -t "2004-05-10 11:35:57"
在这个示例中,恢复过程会重新应用在指定的时间之前提交的事务,包括在 11:35:57 提交的任何事务。在 11:35:57 还未提交的事务被回滚。
日志点恢复
日志点恢复是一种特殊的时间点恢复。在日志点恢复中,必须恢复所有存储空间,这样数据才能保持一致性。如果在指定的日志后面还有任何日志,OnBar 不会恢复它们,它们的数据会丢失。
示例:
onbar -r -n 1522 (这里的 1522 是日志的惟一 id)
从比较旧的备份执行恢复
在默认情况下,OnBar 会恢复最新的备份。如果不希望恢复这个备份(例如,因为这个备份没有通过检验,或者备份介质丢失了),那么可以从更旧的备份执行恢复。要想从比较旧的备份执行物理时间点恢复,应该使用以下命令。
Find the time of the older backup in the message log or OnBar activity log or from the storage manager. To restore all or specific storage spaces, issue the following commands: onbar -r -p -t time [dbspaces_from_older_backup] onbar -r -p [remaining_dbspaces] onbar -r -l |
使用以下命令执行逻辑恢复。
1. Optionally, salvage the logical logs manually: onbar -b -l -s 2. Perform a physical restore: onbar -r -p 3. Perform a logical restore: onbar -r -l |
在使用 ontape 时,除了前面讨论的重命名选项之外,还要注意以下选项。
ontape -r # Full system restore. ontape -p # Physical restore only and intended for a secondary setup in HDR pair. ontape -p -e # External ontape restore. |
在执行 ontape -r 命令时,会提示您挂载 0 级备份磁带,您需要从这里恢复。挂载这个磁带并按回车键之后,ontape 将读取磁带头,并显示备份磁带的相关信息和它包含的 dbspace。
要恢复的 dbspace 的所有块路径名、大小和偏移量必须在服务器上存在。
在恢复完成之前,会询问是否希望备份磁盘上的当前日志。备份磁盘上当前的日志称为逻辑日志救援。如果回答 y,就会提示您挂载一个磁带来备份日志。
在服务器处理完 0 级备份磁带之后,它会询问是否希望恢复 1 级或 2 级备份。回答 y 或 n,并根据需要挂载要恢复的下一个磁带。
最后,询问是否希望恢复任何逻辑日志。如果要恢复逻辑日志(如果希望将系统恢复到最近的事务之后的状态,就必须这么做),那么回答 y。挂载逻辑日志磁带并在下一个提示中按 return。
向前回滚日志文件之后,恢复过程完成,系统进入在线模式。
如果不恢复逻辑日志,那么恢复过程在完成物理恢复之后就结束了,应该能够发出 onmode -m 命令,让数据库服务器进入在线模式。
关于 ontape 恢复的要点: