首页> 中国专利> UNIX环境下的系统恢复方法

UNIX环境下的系统恢复方法

摘要

本发明公开了一种UNIX环境下的系统恢复方法,在发生磁盘阵列故障或存储在磁盘阵列中的数据库崩溃、文件丢失或损坏的情况下,仍能确保系统的正常运行,从而可实现减少上述故障对系统所造成的影响的目的,保证系统的有效运行率。该方法主要包括同步、切换和恢复三个步骤;其中,所述同步为在日常自动定时完成磁盘阵列到本地盘的复制的步骤;所述切换是指当磁盘阵列发生故障时,将UNIX系统由磁盘阵列切换到本地盘继续运行的步骤;所述恢复是指当磁盘阵列恢复正常后,将UNIX系统由本地盘重新改换到磁盘阵列运行,恢复到正常状态的步骤。

著录项

  • 公开/公告号CN101261595A

    专利类型发明专利

  • 公开/公告日2008-09-10

    原文格式PDF

  • 申请/专利权人 上海宝信软件股份有限公司;

    申请/专利号CN200710037953.5

  • 发明设计人 辛旻;王磊;陈晓武;许能飞;

    申请日2007-03-09

  • 分类号G06F11/14(20060101);

  • 代理机构31211 上海浦一知识产权代理有限公司;

  • 代理人丁纪铁

  • 地址 201203 上海市浦东新区张江高科技园区郭守敬路515号

  • 入库时间 2023-12-17 20:45:19

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2010-02-10

    授权

    授权

  • 2008-10-29

    实质审查的生效

    实质审查的生效

  • 2008-09-10

    公开

    公开

说明书

技术领域

本发明涉及一种UNIX环境下当系统发生故障时的恢复方法。

背景技术

随着磁盘阵列的容量越来越大,虚拟存储、存储共享一方面成为可能,使得一个磁盘阵列会被多个甚至更多的系统共享,一方面也造成了磁盘阵列一旦出现故障所造成的后果将越来越严重,以及磁盘阵列停机检修协调时间几乎不可能,所以需要找到一种即使磁盘阵列出现问题,仍能确保UNIX系统正常运行的方法。

目前磁盘阵列和数据库的可靠性虽然在增强,但一旦出了问题就不是小问题。目前磁盘阵列一般都是通过双磁盘阵列来保证其可靠性的,但这样所造成的结果是成本大幅提高,而且性能有所下降;而数据库则一般采用cluster结构来提高其可靠性,但这需要依赖于cluster软件和磁盘阵列。而且即使同时具备了上面两个条件,仍然难以杜绝程序文件的损坏或丢失,或者数据库崩溃等故障发生。

目前情况下,当发生磁盘阵列故障时只能停机检修,而对于数据库崩溃只能停机修复,对于文件的损坏或丢失只能停机逐步定位或强行全体恢复,这对重要系统的正常运行造成不可估量的损失。尤其是由于套装软件的出现,使得一个文件系统可能存放几十万甚至上百万个的文件,而出现问题时也就往往难以定位,从磁带恢复时间又非常长,需要找到一个快速恢复系统运行的方法,给定位问题、完全恢复争取时间。

发明内容

本发明所要解决的技术问题是提供一种UNIX环境下的系统恢复方法,在发生磁盘阵列故障或存储在磁盘阵列中的数据库崩溃、文件丢失或损坏的情况下,仍能确保系统的正常运行,从而可实现减少上述故障对系统所造成的影响的目的,保证系统的有效运行率。

为解决上述技术问题,本发明提供一种UNIX环境下的系统恢复方法,该方法主要包括同步、切换和恢复三个步骤;其中,所述同步为在日常自动定时完成磁盘阵列到本地盘的复制的步骤;所述切换是指当磁盘阵列发生故障时,将UNIX系统由磁盘阵列切换到本地盘继续运行的步骤;所述恢复是指当磁盘阵列恢复正常后,将UNIX系统由本地盘重新改换到磁盘阵列运行,恢复到正常状态的步骤。

本发明由于采用了上述技术方案,具有这样的有益效果,即通过在电脑中内置具有足够容量的本地盘,在日常使用快照技术定时地将本地盘和磁盘阵列上的内容进行自动同步;在发生磁盘阵列故障、数据库崩溃、文件丢失或损坏等情况时,将系统由磁盘阵列切换到本地盘继续运行;而当故障排除后,将系统再恢复到在磁盘阵列上运行的正常状态下;从而确保了当产生重大故障时系统仍能正常运行,为排除故障争取了时间,使得所述故障对系统的影响能够控制在最小的范围以内,有效保证了系统的有效运行率,有效地控制了成本。

附图说明

下面结合附图与具体实施方式对本发明作进一步详细的说明:

图1是本发明所述方法的流程示意图;

图2是根据本发明进行同步时的示意图;

图3是根据本发明进行切换时的示意图;

图4是根据本发明进行恢复时的示意图。

具体实施方式

如图1所示为本发明所述UNIX环境下的系统恢复方法的流程示意图,主要包括同步、切换和恢复三个步骤;其中,同步具体是指:在日常自动完成磁盘阵列与本地盘间定时同步的步骤,即自动完成磁盘阵列到本地盘的复制,以备切换时使用;切换具体是指:当磁盘阵列发生故障时,将UNIX系统由磁盘阵列切换到本地盘继续运行的步骤;恢复具体是指:当磁盘阵列恢复正常后,将UNIX系统由本地盘重新改换到磁盘阵列运行,恢复到正常状态的步骤。在本发明中,这三个步骤是相辅相成,缺一不可的。

在本发明中,所述UNIX系统应支持文件系统快照;所述本地盘为内置于所述UNIX系统所运行的电脑中的磁盘,为了确保具有足够的容量,建议使用两块内置磁盘镜像作为本地盘。为了能够在所述本地盘中存放同步内容,该本地盘上应预先建立好与磁盘阵列相对应的文件系统,在本发明中将其称为本地文件系统。在另一个实施例中,所述本地盘上还应预先建立好备份文件系统,以在同步时临时存放打包的文件,从而能够缩短同步时间,确保同步的成功;所述备份文件系统还用于为系统保存一个压缩备份,以确保可以回退到前面任意一天,并且可抽取任一文件。为了存放所述压缩备份,该备份文件系统应确保有足够的空间;磁盘阵列应确保具有足够空间来存放同步期间的数据快照变化,所述数据快照变化是指系统发生在磁盘阵列中的变化。在本发明中,还应使用UNIX系统里管理定时作业的系统管理程序(crontab)在系统中预先建立好同步作业及同步包清理作业,其中同步作业用于定时自动发起实施日常同步工作,同步包清理作业用于定时按保留策略自动发起实施清理以前留下来的包。对于数据库,还应使用crontab预先建立好数据库输出日志作业,从而确保每隔一定的间隔时间吐出日志,使得发生灾难性故障时损失不超过间隔时间的数据,所述间隔时间最小可设为1分钟,但一般情况下设为5分钟,以保证恢复的时间不会因为日志文件数量过多而延长。为了保证磁盘阵列损坏时,本地盘可根据日志恢复数据,数据库应设为双日志,1份存放在磁盘阵列上,1份存放在本地盘上,其中本地日志文件系统中应设置链接,以确保切换后日志为同一位置。

如图2所示的本发明所述同步一般在系统夜间空闲时进行,最好每天做一次,这样可确保切换时耗时较短,平时同步次数不过多。所述同步是由预先建立好的同步作业自动定时发起的,其进一步包括以下步骤:

(1)在磁盘阵列上快照当前文件系统。由于UNIX系统为在线系统,数据文件不断变化,同步时又不能停机,所以本发明采用快照方式将磁盘阵列中的系统文件复制到本地盘的文件系统中。快照的时间很短,且AIX系统保证了备份当前文件的一致性,在目前几十次的实验中,oracle数据库、tuxedo等均能正常开启。

(2)将快照文件系统打包放在本地盘,即将步骤(1)所得的快照装载(mount)为快照文件系统,然后将所述快照文件系统打包后放在本地盘的备份文件系统中。其中打包的目的是为了便于快照文件系统的存放和压缩。如果负荷和时间允许,和/或备份文件系统空间紧张,则还可在打包的同时将所述快照文件系统进行压缩。

(3)将磁盘阵列上的文件系统解除快照,进行这一步是因为系统同步时正在运行,会不断产生新的数据,所以打包结束后需要立刻解除快照。

(4)将存放本地盘的备份文件系统中的文件进行解包,即将文件包解开并覆盖本地盘上对应的文件系统,如果同步间隔变化较大,则需先清理文件系统后再解包,所述清理工作可由预先建立好的同步包清理作业来定时完成;否则可直接解包。

当发生以下情况,如磁盘阵列损坏,短期内难以修复;CLUSTER软件切换成功但系统仍不正常;怀疑文件破坏但难以定位;确认需从磁带全面恢复,但用户已不能等待;并且确认同步正常进行,上线前切换已多加演练等情况时,在本发明中可通过以下步骤来实现如图3所示的切换:

(1)注释掉系统中使用crontab预先建立的各个相关作业。因为为了恢复时更快速,在切换运行期间,需要停止同步作业、同步包清理作业和数据库输出日志作业。

(2)以强制(Force)的方式手工停掉两边CLUSTER软件。这样可确保切换状态下不受其他干扰,从而避免CLUSTER软件发生自动动作。另外以Force方式停掉CLUSTER软件,还可实现不用手工更改网卡地址、mount文件系统等等。

(3)停掉磁盘阵列上包括数据库在内的所有应用。若这时系统已经发生异常,无法保证各个应用能卸载(umount)下来,因此必要时可杀掉(kill)进程。

(4)为保证不重名,也便于异机修复系统,需要卸掉磁盘阵列上的文件系统,停止磁盘阵列使用。

(5)由于一个系统不能有两个重名的文件系统装载,因此这时需要修改本地盘上的对应文件系统的装载(mount)点,然后重新mount这些文件系统。

(6)在本地盘上恢复数据库。在本发明中利用由预先建立的数据库输出日志作业定时实施吐出的日志来恢复数据库,由于平时一般5分钟输出一个日志,所以此步通过启动脚本后再实现恢复。这个在整个切换时应该耗时最长。

(7)开启本地盘上的其他应用。

(8)确认运行于本地盘的系统正常。

当所发生的故障已在异机或开发环境确认修复;数据库已提前1-2小时通过热备等方式恢复和当前运行数据库一致;有足够的计划停机时间大于2小时;且相关技术人员到场的情况下,在本发明中可通过以下步骤来实现如图4所示的恢复步骤:

(1)停止本地盘上包括数据库在内的所有应用,在这一步中最好保证所有应用都能正常停止,尤其是数据库。

(2)由于一个系统不能有两个重名的文件系统装载,因此这时需将本地文件系统回原,即改回原装载(mount)点,然后重新mount。

(3)激活磁盘阵列,mount文件系统。

(4)反同步相应文件。这里主要是将满足恢复前提后又产生的本地盘的少量日志文件反拷贝到磁盘阵列上。

(5)恢复磁盘阵列上的数据库。由于数据库已恢复到停机前某个点,所以恢复日志有限,速度较快。

(6)开启磁盘阵列中的应用。

(7)确认运行于磁盘阵列中的系统正常。

(8)重新启动CLUSTER软件。由于切换时是以Force方式停的CLUSTER软件,所以启动CLUSTER软件时会自动只启动CLUSTER软件本身。

(9)启用crontab相关作业,包括同步作业、同步包清理作业和数据库输出日志作业。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号