您的位置:首页 > 数据库 > Oracle

操作系统重装后oracle数据库的恢复

2008-11-12 10:25 120 查看
     可能有很多技术人员都会遇到的情况,操作系统因各种原因需要重作,而数据库一直运行正常。操作系统重装后如何进行数据库恢复,可能很多人都是把数据库系统也重装、重建,然后利用备份文件重新导入。当然,这样操作也可以,不过工作量不小,尤其在数据量很大的情况下。

    其实有一种很快捷的恢复方法,我们单位在系统维护过程中基本上都是采用这种方法,就是通过恢复注册表、环境变量等系统配置信息,然后通过oracle实例管理工具oradim直接进行oracle系统的恢复。

 

    文件夹中文件说明:
    ora.reg oracle主要注册项的恢复参考文件
    oraodbc.reg odbc驱动项的恢复参考文件
    oraole1~4.reg ole 驱动项的恢复参考文件

 

    恢复中重要操作说明:
    1、恢复前提,数据库系统文件(初始化配置文件、数据文件、重作日志文件、控制文件)没有遭到破坏。
    2、注册表的恢复
    3、监听程序重新恢复,注意监听配置、tns配置中机器名的核对
    4、oracle实例服务的恢复
    5、注册表中本地默认实例的恢复
    6、计算机管理-用户组中ORA_DBA角色的恢复

 

    操作步骤:
    1、系统环境变量的恢复
     在系统环境变量path项之前增加oracle系统可执行程序及动态链接库资源如"D:/oracle/ora90/bin;"
    2、注册表的恢复
     a、oracle数据库系统变量的恢复,ora.reg中饱含了oracle的主要系统参数,其中home项包含了不同的版本信息,导入注册表后可以根据情况修改、增加或者删除对应的home信息。
     b、oracle odbc驱动参数的恢复,需要导入oraodbc.reg,此处以oracle90为例,针对不同的oracle版本需要修改相应的参数。导入后,除了检查版本及修改上述参数外还需要手工在注册表(regedit.exe)hkey_local_machine->software->odbc->odbcinst.ini->odbc drivers一项中参考其它字符串,增加一个oracle驱动程序名称(如Oracle in OraHome90)。恢复后可以通过系统odbc管理工具进行配置、测试。最后,如果不需要使用ODBC连接数据库,就不需要进行此处的恢复。
     c、oracle oledb驱动参数的恢复,需要导入oraole1~4.reg,实际只需要导入1~2两个文件即可,其它两个属于注册表的副件。同样需要针对不同版本修改相应的参数。恢复后,可以通过配置一个 oledb测试,最快捷的方法为,新建一个文本文件,然后将后缀改为".udl"然后就可以继续操作了。最后,同ODBC一样,如果确定不需要使用ole驱动访问数据库,也可以不进行这部分的恢复操作。
     ******此处的操作需要对windows操作系统注册表非常熟悉,对于linux平台,恢复操作类似,只不过需要对环境变量的操作熟悉。
    3、监听程序的恢复
     a、配置参数的恢复,oracle_home/network/admin/listener.ora,检查本地机器名是否有变化,以确定监听参数中监听地址项是否需要修伽。
     b、本地访问服务名tnsnames.ora的配置,同样需要检查机器名或ip地址是否有变化。此步骤可以省略
     c、监听服务的恢复,运行 lsnrctl,执行startup,会自动向系统服务中增加并启动监听服务。可以通过启动时的提示确定服务是否启动成功。确认服务启动成功后,在系统服务管理台里将服务启动属性从“手动”改为“自动”。
     ******此处操作需要对lsnrctl工具熟悉。
    4、本地默认实例的恢复
     在注册表hkey_local_machine->software->oracle->home0->oracle_sid项,确认内容和你要恢复的实例名一致。进行这个操作,主要方便在本地sqlplus或其它客户端登录时不用指定数据库本地网络服务名。
    5、系统ORA_DBA组的恢复
     在"计算机管理"控制台中->系统工具->本地用户和组->组中,增加名称为"ORA_DBA",描述为"Members can connect to the Oracle database as a DBA without a password"的组,并将系统管理员用户如"Administrator"添加到组中。执行这样的操作,是为了能够在本机上不输入数据库用户名/密码,直接以dba角色登录数据库进行管理。
    6、实例的恢复
     a、确认数据库的初始化配置文件、数据文件、重作日志文件、控制文件等没有被损坏或缺失。
     b、使用oradim工具重建实例服务。如oradim -new -sid test -startmode m -pfile d:/oracle/admin/test/pfile/init.ora
 oradim是oracle实例管理工具,具体参数说明,可以在命令行中直接输入oradim查看帮助提示。使用它能够创建、修改、删除,启动、停止本机上的oracle实例服务,有兴趣的,可以使用它实现一个单数据库多实例的案例。
     c、使用sqlplus以dba身份登录确认数据库是否正常启动。

    ******此处操作需要对oradim工具、oracle实例的概念熟悉。
    7、恢复完成。可以打开其它应用程序了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息