informix备份还原
IBM Informix Dynamic Server 11 系统管理 -- IDS 备份和恢复关于本教程在本教程中,您将学习备份和恢复概念,以及管理数据库备份和恢复过程的 IDS 策略、实用程序和命令本教程中的资料主要覆盖考试第 6 部分 “Backup and Restore” 中的目标本教程涉及的主题包括:· 备份和恢复实用程序· 备份和恢复策略、类型和选项· 执行备份和恢复过程所需的配置和命令· 监视和调试备份和恢复过程目标在学习完本教程之后,您应该能够:· 为数据库服务器备份制定存档策略和计划· 了解备份的类型和执行的时机· 配置 OnBar 和 ontape 来执行备份和恢复· 如何监视和检验备份· 了解如何从存档备份还原和恢复数据库服务器· 从存档备份恢复数据库服务器一、IDS 备份和恢复概述概述由于数据已经成为最昂贵的资产,企业无法承担丢失数据的损失当发生灾难时,需要有办法恢复数据需要事先执行一些过程和处理,才能在需要恢复数据时执行恢复过程IDS 提供了计划和执行恢复过程所需的技术和工具备份IDS 备份是数据库服务器维护的一个或多个 dbspace 和逻辑日志的拷贝.备份的内容是纯粹的 IDS 页面。
不备份操作系统文件或 IDS 配置文件对于这些未备份的文件,需要在 IDS 备份过程之外执行单独的备份过程恢复IDS 恢复会从备份的存储空间和逻辑日志文件重新创建数据库服务器数据恢复过程将数据从备份介质复制回磁盘上,并应用逻辑日志备份中的事务,从而将 dbspace 恢复到一致的状态需要进行恢复的情况包括:· 需要替换掉一个包含数据库服务器数据的坏磁盘· 有数据库数据或页面被破坏了· 需要将数据库服务器数据转移到新的计算机上IDS 提供的恢复工具和实用程序IDS 提供了一套备份和恢复实用程序(OnBar、ontape、ISM、archecker).我们来逐一讨论这些工具并了解它们的功能.OnBarOnBar 可以执行 dbspace 和逻辑日志的备份和恢复OnBar 需要一个存储管理器ﻫﻫInformix Storage Manager(ISM)是 IDS 附带的一个功能有限的存储管理器也可以使用第三方厂商的存储管理器,比如 Tivoli Storage Manager(TSM)、Omniback、Legato Networker、Veritas NetBackup 等等.OnBar 使用行业标准 X/Open Backup Services Application Programmer's Interface(XBSA)与数据库服务器和存储管理器进行通信。
每个存储管理器厂商都提供了 XBSA 共享库来支持使用他们的存储管理器所以,OnBar 能够使用各种存储管理器软件OnBar 和 XBSA 共享库必须在相同的平台(32 位或 64 位)上编译OnBar 的主要特性包括:· 并行备份和恢复· 时间点恢复· 集成的备份检验命令· 支持外部备份和恢复· 支持表级恢复Ontapeontape 实用程序是最早、最容易使用的备份和恢复实用程序它不需要存储管理器它可以将数据从数据库服务器备份到磁带或磁盘.ontape 实用程序可以执行物理和逻辑日志备份和恢复ontape 实用程序顺序地执行备份和恢复.ontape 的主要特性包括:· 简单,容易使用· 能够备份到磁带、文件或目录· 支持表级恢复· 支持外部备份和恢复ﻫ表 1. OnBar 与 ontape 的主要差异描述onbarontape是否使用存储管理器跟踪备份和恢复媒体?是否是否使用备份选择的存储空间?是否是否顺序备份和恢复存储空间?是是是否启动高可用性数据复制?是是是否能够将数据恢复到特定的时间点?是否是否执行单独的物理和逻辑恢复?是是是否能够并行备份和恢复不同的存储空间?是否对于备份和恢复是否同时使用多个磁带驱动器?是否在不完全恢复之后,是否重新启动恢复?是否是否修改数据库的日志记录模式?否是如果使用 OnBar,那么使用 ondblog 命令修改数据库的日志记录模式.警告:ontape 和 OnBar 产生的备份磁带是不兼容的。
不能用 ontape 创建备份,再用 OnBar 恢复它,或者相反.archeckerarchecker 实用程序检查介质上备份恢复所需的所有页面是否处于正确的形式在成功地检验备份之后,就可以放心地恢复它.archecker 可以以两种不同的模式进行检查(Integrated 和 Standalone)Integrated:在这种模式中,OnBar 从备份介质读取数据并自动地将数据发送给 archecker.这样就可以对整个恢复过程进行检查.Standalone:这种模式适用于 ontape 实用程序创建的介质.在这种模式中,archecker 直接读取备份介质这种模式不测试恢复过程可以在与创建备份的机器不同的机器上执行这种检查,只要创建备份的机器和执行检查的机器是二进制兼容的,而且使用相同的 IBM Informix 页面大小即可archecker 实用程序检查标准备份和全系统备份.archecker 实用程序无法检查逻辑日志备份.archecker 实用程序并不对系统备份进行恢复从 IDS 10 开始,archecker 实用程序可以使用用户提供的模式命令文件执行表级恢复进行表级恢复的方法是,从存档的表重新创建行,并在现有的 IDS 实例中插入一个新的表.)二、IDS 可用的备份类型本节介绍可以使用 IDS 提供的工具执行的各种备份类型。
完整的 0 级备份(Full level 0 backup)0 级备份包含存档开始时 OnLine 系统中的所有数据的拷贝0 级备份非常耗费时间,因为使用的所有磁盘页面都需要写到备份介质中除了 0 级(完整备份)之外,IDS 备份和恢复实用程序还可以执行增量备份(1 级和 2 级).1 级备份与 0 级备份相比,1 级备份花费的空间和时间都要少,因为只需要将最近一次 0 级备份之后修改过的数据复制到存储管理器2 级备份2 级备份花费的空间和时间比 1 级备份还要少,因为只需要将最近一次 1 级备份之后修改过的数据复制到存储管理器.顺序备份与并行备份顺序备份(serial backup)只能一次备份一个 dbspace,因此很慢顺序备份是 ontape 实用程序能够执行的惟一一种备份类型如果 BAR_MAX_BACKUP ONCONFIG 参数设置为 1,OnBar 就会顺序地备份 dbspace,也就是一次备份一个 dbspace在 IDS 1110 之前,无论 BAR_MAX_BACKUP ONCONFIG 设置是什么,OnBar 全系统备份总是顺序执行的并行备份(parallel backup)会同时备份多个 dbspace.在 11。
10 中,所有 OnBar 备份都是并行执行的,除非 BAR_MAX_BACKUP ONCONFIG 参数设置为 1标准 OnBar 备份(onbar -b)对选择的存储空间或所有存储空间进行并行备份在标准 OnBar 备份中,对它备份的每个存储空间执行一个检查点要从标准 OnBar 备份进行恢复,就需要逻辑日志备份全系统备份(whole-system backup)(使用 -w 选项)自动地包含在存档检查点上打开的事务的逻辑日志记录,因此不需要任何显式的逻辑日志备份和恢复,整个系统就可以恢复到一致的状态从 IDS 11.10 开始,可以在 onbar backup 命令中使用 -w 选项rootdbs 仍然首先单独地备份.然后,根据 BAR_MAX_BACKUP ONCONFIG 设置,并行地备份其他 dbspace但是,在全系统 OnBar 备份中,数据库服务器对备份的所有 dbspace 执行一个检查点逻辑日志备份逻辑日志备份就是将逻辑日志文件的内容复制到辅助存储介质逻辑日志存储 OnLine 实例中数据库的检查点记录、管理活动(比如 Data Definition Language[DDL] 语句)以及事务活动。
每个 OnLine 实例都具有数量有限的逻辑日志文件.OnLine 以循环方式使用逻辑日志记录连续地写入逻辑日志文件当第一个日志文件写满时,OnLine 开始写入第二个日志文件,以此类推当所有日志文件都使用完时,OnLine 再次写入第一个日志文件.在 OnLine 重用一个日志文件之前,必须对这个文件的所有数据进行备份对于执行缓冲、非缓冲或 ANSI 模式日志记录的数据库,对表的所有插入、更新和删除操作都记录在逻辑日志中保留这些事务活动(插入、更新和删除)的记录有两个目的:首先,在系统崩溃时,需要从备份恢复数据,这时可以重新应用这些事务,从而防止最近一次备份以后的工作丢失.第二,在发生电源故障时,或者由于其他原因丢失了内存中的数据时,重新应用逻辑日志并回滚,从而确保数据库返回到一个一致的状态必须连续地记录事务活动,而且记录必须一直保存到下一次执行 dbspace 或全系统备份时除了全系统备份之外,所有 dbspace 备份都需要有逻辑日志备份,才能进行成功的恢复.连续、自动和手工的逻辑日志备份如果所有逻辑日志文件都满了,数据库服务器就会挂起,直到日志被备份要想释放那些已经写满的逻辑日志文件,就要对它们进行备份。
逻辑日志备份可以由管理员或操作员(根据需要)手工执行,或者使用 ALARMPROGRAM 配置参数自动触发,也可以运行连续的日志备份.当管理员或操作员使用 OnBar 或 ontape 执行日志备份请求时,执行手工逻辑日志备份.手工逻辑日志备份对所有写满的逻辑日志文件进行备份,一直备份到当前逻辑日志文件为止.配置自动逻辑日志备份的方法是使用 ALARMPROGRAM 配置参数指定一个程序,每当服务器发出日志写满事件(事件类 23)时,这个程序执行一个逻辑日志备份命令.通常情况下,如果使用 OnBar 作为备份实用程序,就会配置自动逻辑日志备份.IDS 实现自动逻辑日志备份的方法是执行 ONCONFIG 参数 ALARMPROGRAM 指向的脚本如果使用 alarmprogram.sh,那么编辑它,将 BACKUPLOGS 设置为 YIDS 提供的脚本 log_full.sh 和 alarmprogramsh 可以在 $INFORMIXDIR/etc 中找到.要想关闭逻辑日志的自动备份,可以将 ALARMPROGRAM 设置为 no_log.sh;如果使用 alarmprogram.sh,可以将 BACKUPLOGS 设置为 N。
如果禁用了逻辑日志的自动备份,DBA 就要负责及时地备份逻辑日志如果使用 ontape 作为备份和恢复实用程序,通常就要进行连续逻辑日志备份.在进行连续备份(ontape —c 选项)时,如果一个逻辑日志文件已经写满,或者服务器切换到下一个日志文件,就对这个文件进行备份连续逻辑日志备份需要一个专用的终端和备份设备IDS 11.10 有一个ontape 备份到目录特性;如果 LTAPEDEV 设置为一个目录,就可以使用 ontape -a -y 和 ALARMPROGRAM 脚本进行自动的 ontape 备份如果使用这个特性通过 ontape 将逻辑日志自动备份到目录,ALARMPROGRAM 脚本就必须检查 LTAPEDEV 是否正确地设置为一个目录,DBA 负责确保这一点如果 LTAPEDEV 没有设置为目录,而是设置为一个设备,后续的逻辑日志备份就可能覆盖以前的备份逻辑日志救援在日志救援(log salvage)中,数据库服务器在离线的情况下,从磁盘直接访问日志文件日志救援对所有还没有备份而且没有损坏的逻辑日志进行备份,这样就可以将所有数据恢复到最近的没有损坏的逻辑日志文件和最近的已经完成的事务。
在发生系统失败之后,需要进行恢复,但是有些逻辑日志数据可能还没有备份必须挽救这些数据,因为需要利用这些数据将系统恢复到失败时的状态系统失败之后的冷恢复会自动地尝试救援所有日志,但是用户也可以在冷恢复之前救援日志日志救援命令是:· onbar —l -s· OR· ontape -S如果在冷恢复过程之前必须更换包含逻辑日志文件的设备,那么日志救援命令就很有意义了.如果在系统失败之后没有救援磁盘上的日志,逻辑恢复过程就会覆盖日志空间,以前记录的事务就会丢失,系统就无法恢复到失败时的状态onbar —r 命令会自动地救援逻辑日志如果希望跳过日志救援操作,那么使用 onbar —r -p 和 onbar -r -l 两个命令.对于 ontape,对系统提示 “Do you want to backup the logs?” 回答 No,就可以在恢复期间跳过日志救援三、恢复策略和备份计划制订恢复策略要求了解业务关键数据,并了解可用的备份工具及其功能.制订恢复计划的第一步是,根据对业务数据的理解确定恢复目标按照可以接受的数据损失和时间损失,定义何种程度的系统恢复算是成功的.下面这些问题可以帮助您做出决定:· 何种程度的数据损失是可以接受的?· 企业在无法使用这些数据的情况下能够坚持多久?· 在恢复期间,生产系统可以停机多长时间?· 多长时间的事务损失时间是可以接受的?· 恢复计划有多少预算?建立了恢复目标之后,就该选择 IBM Informix 备份和恢复工具了。
恢复计划应该考虑以下解决方案:· IBM Informix 备份实用程序(ontape、OnBar 和外部备份和恢复工具)· Load/Unload 实用程序· High Performance Loader· dbexport/dbimport· onload/onunload最好先确定可能需要进行恢复的各种情况根据严重性对失败进行分类,并为多个失败级别制订恢复计划下面是失败级别的一些示例,它们可以帮助您判断失败的严重性:· 意外地删除一个数据库对象(行、列、表)· 意外地删除一个服务器对象(数据库、块、dbspace)· 数据损坏或者创建了不正确的数据· 硬件失败(比如一个包含块文件的磁盘坏掉了)· 数据库服务器失败· 自然灾害表 2. 恢复计划示例失败的严重性数据损失建议的恢复计划小丢失非关键数据可以等到非工作高峰时间再恢复数据使用热恢复中等丢失了对业务很重要的数据,但是数据丢失并非发生在关键的 dbspace 中尽可能早地对这些数据进行热恢复.大丢失关键的 dbspace马上使用混合恢复计划恢复关键的数据,并在非工作高峰时间对非关键数据进行热恢复灾难丢失所有数据.尽可能早地执行冷恢复或混合恢复。
最困难的步骤是在速度和成本之间进行权衡一些关键业务要求不惜任何代价尽快恢复这可能要求您考虑其他备份和恢复解决方案,比如:· IBM Informix Mirroring· High Availability Data Replication· 使用硬件镜像解决方案的外部备份/恢复· Enterprise Data Replication备份计划根据恢复策略和目标,对备份进行计划备份计划不但包含备份的频率,还包含备份的级别和类型.· 应该每天、每周还是以其他时间间隔进行备份?· 备份要花多长时间?· 备份对用户的事务和系统性能有何影响?· 什么时候是进行备份的最佳时间?· 备份介质上有多少可用空间?上面的问题应该能够帮助您决定符合恢复策略和备份工具功能的备份计划还可以帮助您决定是需要执行增量备份(1 级和 2 级),还是只执行完整的 0 级备份?是只在周二备份一些 dbspace,在周三备份其他 dbspace,还是每天执行完整的 0 级备份?备份策略的考虑因素无论选择什么样的调度计划,实现快速恢复的关键因素都是应用尽可能少的逻辑日志.应用逻辑日志是恢复过程中最慢的阶段,因为服务器必须处理已经发生的所有 SQL 活动。
恢复磁带级备份要快得多,因为只需从磁带读取页面并写到磁盘上四、OnBar 配置、命令和语法在使用 OnBar 之前,需要:· 配置存储管理器· 设置适当的 ONCONFIG 配置参数· 决定逻辑日志的备份策略如果用 OnBar 进行备份,那么 LTAPEDEV 一定不能设置为 /dev/null请记住,OnBar 备份不包含:· 已经分配给区段(extent)但当前没有使用的 dbspace 页面.· 来自镜像块的页面(如果对应的主块可用的话)· 光盘上存储的 blobspace 中的大对象· 临时 dbspace· 另外,OnBar 不备份服务器配置和管理文件,比如· onconfig 文件和 sqlhosts 文件· 紧急引导文件· oncfg 文件OnBar 性能和并行性配置参数对 OnBar 性能影响最大的三个配置参数是:· BAR_MAX_BACKUP· BAR_XFER_BUF_SIZE· BAR_NB_XPORT_COUNTOnBar 使用缓冲区(称为传输缓冲区)对存储管理器收发数据这些配置参数用来配置缓冲区的大小(BAR_XFER_BUF_SIZE)、缓冲区的数量(BAR_NB_XPORT_COUNT)和备份进程的数量(BAR_MAX_BACKUP).BAR_MAX_BACKUP 指定 OnBar 命令产生的并行进程的最大数量。
如果在 ONCONFIG 文件中没有设置这个参数,默认值为 4如果设置为:· 0,那么进程数量等于备份的 dbspace 数量,或者操作系统允许的最大进程数量· 1,顺序备份或恢复· n,产生指定数量的进程.如果 BAR_MAX_BACKUP 是 0,那么并行性只受到操作系统和硬件的限制BAR_NB_XPORT_COUNT 决定 OnBar 分配的传输缓冲区的数量.默认值为 20.BAR_XFER_BUF_SIZE 指定用来与服务器交换数据的每个传输缓冲区的大小(以页面为单位)对于 2K 页面系统,默认值是 31;对于 4K 页面系统,默认值是 15不要修改这个参数BAR_XFER_BUF_SIZE 受 XBSA 标准的限制.XBSA 将通信缓冲区的大小限制在 64 KB,而且 IBM Informix 为头信息保留一个页面.其他 OnBar 配置参数· BAR_ACT_LOG 指定 OnBar 活动日志文件的位置· BAR_BSALIB_PATH 指定存储管理器的 XBSA 共享库的路径名和文件名· BAR_DEBUG 指定 OnBar 活动日志中调试消息的级别.· BAR_DEBUG_LOG 指定 OnBar 调试日志的位置。
· BAR_HISTORY 指定 sysutils 数据库是否维护备份历史.· BAR_PERFORMANCE 指定 OnBar 活动日志的性能统计数据的级别.· BAR_PROGRESS_FREQ 以分钟为单位指定备份或恢复消息在活动日志中出现的频率· BAR_RETRY 指定 OnBar 重试备份或恢复操作的次数· ISM_DATA_POOL 指定备份存储空间所用的卷池只应用于使用 ISM 存储管理器的情况)· ISM_LOG_POOL 指定备份逻辑日志所用的卷池只应用于使用 ISM 存储管理器的情况OnBar 备份命令和语法只能在数据库服务器处于在线、静默(quiescent)或单用户模式时,备份存储空间和逻辑日志但是,可以在数据库服务器离线时救援逻辑日志.ﻫ清单 1 OnBar 备份命令的简化语法图onbar ﻩ-b.....(-L level) ..(-f , O, dbspace_list, —w)ﻩ -F) -v 备份逻辑日志:ﻫ清单 2 逻辑日志备份onbar —b —l (-C -c -s), —O执行备份的命令示例如下.清单 3. OnBar 备份命令$onbar —b — By default, all the dbspaces and blobspaces in the instance will be backed up,since no dbspaces or blobspaces are specified.- if the -L option is omitted, a level-0 backup is created。
$onbar -b dbspace1 dbspace2 - You may also specify specific dbspaces to be backed up. — Each dbspace is specified by name, and each dbspace nameis separated with a blank space$onbar —b -f - specifies an ASCII contains a list of the dbspaces and blobspaces to be backed up This syntax is useful if groups of dbspaces are routinely backed up together Each dbspace name in the be on a separate line.$onbar -b -w— Whole system command for performing a whole system backup is shown above. - A whole system backup always includes all dbspaces and blobspaces。
— Whole system backups are no longer performed serially and therefore, will be much faster with Version 11.xx than a whole system backups in older versions.— If the —L option is omitted, a level-0 backup is createdWhole system backup automatically includes the necessary logical log recordsof the transactions open at the time of archive checkpoint so thata whole-system restore will restore to a consistent point without any explicit logical log backups and restore.rootdbs is backed up first, without parallelism.$onbar -b -L 0 dbspace1 - creates a level-0 backup of only dbspace1。
执行增量备份的语法如下.清单 4 OnBar 增量备份命令$onbar -b —L 1 — Creates a level—1 backup of the entire OnLine instanceonbar -b -L 2 -f - creates a level -2 backup of all the dbspaces listed in .Whole system incremental backups are shown:$onbar —b -w -L 1 — Performs a level-1 backup of all the dbspaces and blobspaces in the OnLine instance.$onbar -b -w -L 2 - Performs a level—2 backup. 伪备份(fake backup)清单 5. OnBar 伪备份命令$onbar —b -F 无论是否有存储管理器应用程序,这个命令都可以运行如果指定了任何 dbspace,就会忽略它们伪备份用于以下情况:· 为了支持数据库日志记录模式中的修改.· 为了让用户使用新添加的日志、块或镜像。
伪备份还适用于管理员认为不需要真实备份的其他特殊情况因为在伪备份期间实际上没有进行备份,所以不可能进行恢复.不鼓励使用伪备份逻辑日志备份如果将 ALARMPROGRAM 设置为 no_log.sh 或另一个可执行文件,从而禁用了逻辑日志的自动备份,您就要负责备份逻辑日志.备份逻辑日志的命令如下.清单 6. OnBar 逻辑日志备份命令$onbar —b —l - This command will back up all logs that are used but not backed up or current$onbar -b —l -c- Will back up the current logIf you are performing a cold restore, and wish to salvage the logical logs, execute a log salvage command:$onbar -b —l -s$onbar —b —l —C- start a continuous logical log backup.检验 OnBar 备份ﻫ清单 7. OnBar 备份检验命令$onbar —v— Verify backups. You cannot verify the logical logs backups.$onbar -v —w- Verify a whole-system backup.onbar —v 命令无法检查数据行与 blobspace 中的简单大对象之间的链接。
可以使用 oncheck -cD 命令检验 blobspace 中的链接ﻫOnBar 组件紧急引导文件(emergency boot file)紧急引导文件包含 OnBar 编目表(在 sysutils 数据库中)中关于备份对象的所有信息如果 IDS 系统(和 OnBar 编目表)不可用,那么在冷恢复期间就需要这个文件.紧急引导文件还从 OnBar 接收关于逻辑日志文件的更新信息.如果逻辑日志文件完全写满了,OnBar 在备份日志时就无法更新编目,因为更新编目需要在日志中添加事务通过将信息写到紧急引导文件,OnBar 就可以在备份逻辑日志之后更新编目紧急引导文件位于 $INFORMIXDIR/etc 目录中,文件名是 ixbar.servernum,其中的 servernum 是 SERVERNUM 配置参数的值.下面是一个 OnBar 紧急引导文件示例:清单 8. OnBar 紧急引导文件示例dbserv_1110_tcp rootdbs R 1 1 0 26958 0 2007-04—25 20:45:07 1 481829648 1 0 — — 48 1177559107 117755577 8 8dbserv_1110_tcp dbspace1 ND 1 1 0 26961 0 2007-04-25 20:53:25 1 481829648 1 0 — - 48 1177559107 117755577 8 9dbserv_1110_tcp sblobspace1 ND 1 1 0 26959 0 2007-04—25 20:53:23 1 481829648 1 0 - - 48 1177559107 117755577 8 10XBSA 库XBSA 是 X/Open Backup Services 应用程序编程接口(API).OnBar 使用 XBSA 与存储管理系统交换信息。
交换的信息有两种:控制数据以及备份或恢复数据控制数据用来检查 OnBar 和 XBSA 是否兼容,确保对象以正确的次序恢复到正确的 OnLine 系统中,并跟踪备份对象历史备份或恢复数据是来自 dbspace、blobspace 或日志文件的要备份或恢复的实际数据使用 XBSA 事务通过 OnBar 在 OnLine 服务器和存储管理器之间传输数据库对象(dbspace、blobspace 或逻辑日志)该事务可以维护备份和恢复数据的一致性它保证,一个备份或恢复对象中的所有数据要么都在 OnLine 服务器和存储管理器之间传输,要么都不传输.每个会话可以使用多个 XBSA 事务,每个服务器可以有多个并发会话存储管理器要想使用 OnBar 执行备份和恢复,必须有一个存储管理器存储管理器管理备份和恢复所用的存储设备和介质,OnBar 处理数据移动和与 IDS 数据库服务器的通信存储管理器还可能提供以下功能:· 使用各种存储介质,从简单的磁带和磁盘设备到复杂的 stacker、robot 和 jukebox.· 连网和分布式备份和恢复过程· 自动调度的备份· 数据压缩和解压.· 数据加密和解密.sysutils 数据库OnBar 使用 sysutils 数据库中的编目表跟踪 OnBar 备份对象和实例.OnBar 使用下面的表:· bar_server 跟踪 IDS 的实例.· bar_object 跟踪备份对象的实例.· bar_action 跟踪针对每个备份对象的所有备份和恢复操作。
· bar_instance 描述在成功的备份或恢复操作期间备份的每个对象sysutils 数据库是在数据库服务器初始化时由 OnLine 创建的关于 OnBar 使用的编目表的更多信息,请参考产品文档中的 Backup and Restore Guide 注意:$INFORMIXDIR/etc/sm_versions -— sm_versions 文件位于 $INFORMIXDIR/etc 目录中,存储管理器必须在这个文件中有一个记录对于 ISM,见 sm_versionsOnBar 活动日志当发生备份或恢复活动或者错误时,OnBar 在活动日志中写入简短的描述在 onconfig 文件中,通过设置参数 BAR_ACT_LOG 指定 OnBar 活动日志文件的位置.Ontape 配置和需求ontape 使用 ONCONFIG 文件中的六个参数来创建存储空间备份和逻辑日志备份TAPEDEV这是存储空间备份使用的磁带设备的绝对路径名在备份期间,ontape 将存储空间数据写到这个位置;在恢复期间,ontape 从这个位置读取数据要想将 ontape 配置为使用 stdio,应该将 TAPEDEV 设置为 STDIO.在 IDS 11.10 和更高版本中,TAPEDEV 可以设置为一个目录(参见本教程后面的讨论)。
TAPEBLK这是存储空间备份使用的磁带块大小(以 KB 为单位)将块大小参数 TAPEBLK 和 LTAPEBLK 设置为磁带设备允许的最大块大小TAPESIZE这是存储空间备份使用的磁带的大小(以 KB 为单位)可以设置为 0,这意味着一直写到磁带的末尾,或者用完所有空间LTAPEDEV这是逻辑日志磁带设备.LTAPEBLK这是逻辑日志备份使用的磁带块大小(以 KB 为单位)LTAPESIZE这是逻辑日志备份使用的磁带的大小(以 KB 为单位)可以设置为 0,这意味着一直写到磁带的末尾,或者用完所有空间Ontape 需求ontape 实用程序期望磁带设备在完成每个命令之后自动反绕.应该为 TAPEDEV 和 LTAPEDEV 参数指定自动反绕的磁带设备.在读写磁带之前,数据库服务器会执行一系列需要反绕的检查将 LTAPEDEV 设置为 /dev/null(在 Windows 上应该是 NUL),就会关闭逻辑日志备份如果将 LTAPEDEV 参数设置为 /dev/null(在 Windows 上应该是 NUL),那么对应的块大小被忽略,不对逻辑日志进行备份当逻辑日志被写满时,将它们自动地标为已备份,这样就可以重用它们.在这种情况下,不可能进行逻辑恢复。
ﻫﻫ检查磁带设备是否可以读取您指定的块大小如果不行,就无法用这个磁带进行恢复.TAPESIZE 和 LTAPESIZE 指定可以写入磁带的最大数据量ﻫ要想确保 ontape 备份和恢复操作能够成功,需要注意以下方面:· 如果可能的话,为服务器备份和逻辑日志备份指定不同的设备· 考虑使用符号链接指定磁带设备.· 不要将 LTAPEDEV 指定为 /dev/null(UNIX)或 NUL(NT)· 始终使用自动反绕的磁带设备· 一定要为磁带设备指定有效的块大小和磁带大小无效的块大小会导致恢复失败一般来说,ontape 实用程序不用于无人值守的备份和恢复操作ontape 应该在管理员或操作员的控制下交互地运行,因为必须对各种提示做出响应但是从 IDS 11.10 开始,ontape 可以备份到目录,因此设置无人值守的备份就比较容易了注意,OnBar 实用程序一直是为无人值守的备份设计的,如果需要无人值守的备份,OnBar 能够更好地满足需求要想使用 ontape,必须作为用户 informix 或 root 进行操作Ontape 备份命令和语法通过执行 ontape 备份,可以完成以下任务:1. 修改数据库的日志记录状态。
2. 创建备份(完整的 0 级备份,1 级或 2 级增量备份)3. 进行逻辑日志备份.4. 启动连续的日志备份.执行 ontape 备份的命令示例如下:ﻫ清单 9 Ontape 命令示例$ontape -sThis command will perform a full-system backup of all dbspaces After executing the ontape command, you will be prompted to enterthe backup level, either 0, 1 or 2 $Please enter the level of archive to be performed (0, 1, or 2)0Next you will be prompted to mount a tape and press return$Please mount tape 1 on /space/TAPE/v11—tape and press Return to continue ..Next the backup will be performed showing percentage for completion and final messageindicating completion and the logical log was current and was backed up also 10 percent done.20 percent done.30 percent done。
100 percent done.Please label this tape as number 1 in the arc tape sequenceThis tape contains the following logical logs: 7Program over.ontape 备份命令的简化语法图如下:清单 10. Ontape 命令和语法ontape -(s,v) —L (0,1,2) -t STDIO —F To create a backup, use the —s option of the ontape command.|—-ontape-—+-———-+—- -s—-+--——-——-—--—+-—+-------————+—-+--——-+-—+--—--+——| ’— -v-’ ’- -L--+-0—+-' '— -t STDIO-’ ’— -F—' '-| -y-' +—1-+ ’-2—'options with ontape: -F ﻩ The -F option directs ontape to perform a fake backup。
ﻩﻩA fake backup is only applicable during a backup to standard output. ﻩA fake backup is useful for cloning the data in a server For example,ﻩ to populate the secondary server in an High-Availability Data Replication pair.|-—-—-—-10—--———-—20---——-—-30----——--40—--—---—50-—---—-—60—-———--—70————--——80--------9||--—--—-- XML error: The previous line is longer than the max of 90 characters —----—--—|-L ﻩ Directs ontape to create a backup of the level specified ﻩﻩThe -L option to specify the backup level as part of the command, ﻩyou can avoid being prompted for it.-s ﻩﻩDirects ontape to create a backup. ontape prompts you to supply the backup |------—10——----—-20——————--30-—----—-40—---——-—50--------60—-----—-70--—-———-80--————-—9||———-—-—- XML error: The previous line is longer than the max of 90 characters -—--——-—-| ﻩlevel (0, 1, or 2) that you want to create if you do not supply a valueﻩ using the -L option。
-t STDIO Directs ontape to back up to standard output The -t STDIO option overrides the value of the TAPEDEV configuration parameter for the current backup.-v Directs ontape to write informational message to stderr during a backup ﻩto standard output. ﻩVerbose mode is useful for monitoring the progress of a backup ﻩto standard output.—y ﻩDirects ontape to proceed without interactive prompts.ﻩﻩYou can turn off the prompts if you are backing up to or restoring from a directory |---———-10-—--—---20----—---30---—----40-—---——-50—---—-——60—----—-—70-—-——---80-——-----9||---—---— XML error: The previous line is longer than the max of 90 characters -----——--| ﻩof a . This option does not apply to tape devices, which much pause the |---—-——10-—-—-——-20—--—-——-30----—---40-—----——50——-—-——-60---——---70--——-—-—80----—---9||-----——— XML error: The previous line is longer than the max of 90 characters —-—-———-—|ﻩﻩbackup while you change tapes.执行以下命令开始向磁带进行备份,但是不指定备份级别:清单 11。
Ontape 备份示例$ontape -sYou can use the -L option to specify the level of the backup as part of the command, as the following example shows:$ontape -s -L 0Use the -y option to avoid interactive prompts whenyou are backing up to or restoring from a directory:$ontape -s —L 0 —y用 ontape 进行逻辑日志备份要想对使用的所有逻辑日志(除了当前日志)进行随需备份(on-demand backup),应该输入以下命令:清单 12. ontape 命令$ontape -aThe ontape process will write the logical logs to the backup devices specified by the LTAPEDEV configuration parameter.Performing automatic backup of logical logs。
Please mount tape 1 on /dev/rst0 and press Return to continue . .Do you want to back up the current logical log? (y/n) yPlease label this tape as number 1 in the log tape sequence.This tape contains the following logical logs:1 - 3连续的逻辑日志备份清单 13 用 ontape 进行连续的日志备份The ontape utility may be run in continuous backup modeontape -c连续的逻辑日志备份需要一个专用的终端和备份设备当服务器切换到下一个日志文件时,将原来使用的逻辑日志文件写到磁带设备上.通常,服务器会在一个逻辑日志文件写满时切换日志,但是管理员也可以强迫进行日志切换(通过执行 onmode —l 命令)· ontape —c 命令不应该作为后台进程运行· 可以使用 -a 选项定期将逻辑日志备份到磁带;也可以运行 -c 选项,让每个逻辑日志在写满时自动备份。
c 选项会让 ontape 连续运行,但是需要一个专用的终端和磁带设备它不能作为守护进程运行.用 ontape 备份到目录可以使用 ontape 实用程序以非交互模式在文件系统中备份和恢复数据要想启用这个特性,就需要将 TAPEDEV 和 LTAPEDEV 配置参数设置为本地或远程挂载的文件系统上的有效目录.这个目录必须存在,否则就会返回错误ontape 实用程序自动生成文件名,并执行物理和日志备份如果选择备份到目录,就不需要提供磁带相反,数据会备份到本地文件系统的目录,或者已经挂载到本地系统的目录运行备份的用户必须对这个目录有写权限这个目录必须有足够的磁盘空间,足以容纳备份数据在数据备份之后,可以使用操作系统实用程序对数据进行压缩.备份到目录有以下优点:· 可以将多个实例同时备份到同一个文件系统目录· 可以使用操作系统实用程序对数据进行压缩或其他处理· 可以配置系统,使系统在日志文件写满时自动备份日志文件.设置文件目录路径: 使用 TAPEDEV 配置参数指定存储空间备份使用的文件系统目录的绝对路径名在备份期间,ontape 将存储空间数据写到这个位置;在恢复期间,ontape 从这个位置读取数据。
用 LTAPEDEV 配置参数指定备份逻辑日志文件的目录提示:在备份到文件系统目录时,可以指定 -y 选项来关闭 ontape 的交互提示覆盖存档文件的默认名称:可以覆盖存档文件的默认名称如果 TAPEDEV 或 LTAPEDEV 是一个目录路径,那么默认文件名是 hostname_servernum_Ln(n 表示备份级别)和 hostname_servernum_Lognnnnnnnnnn(nnnnnnnnnn 是日志的编号)通过设置环境变量 IFX_ONTAPE_,可以覆盖永久文件名的前缀部分 hostname_servernum例如,如果将 IFX_ONTAPE。




