zoukankan      html  css  js  c++  java
  • Oracle备份恢复之冷备份恢复与异机还原

    (同平台:rhel6.4~rhel6.4;同版本:oracle 11g 11.2.0.1~ oracle 11g 11.2.0.1)

    冷备份发生在数据库关闭状态下,直接拷贝物理文件的备份方式,备份数据库可以运行在归档模式,也可以运行在非归档模式。

    备份流程:

    1)首先在运行的库中得到运行的所有文件。

    主要备份文件:passwordfile、spfile、controlfile、datafile、tempfile、logfile

    2)然后计划内关闭数据库,一般在晚上无人访问时关闭。

    3)拷贝物理文件到指定备份路径或设备。

    4)拷贝完成,立即启动数据库,使其正常工作。

    备份脚本:

    spool /u01/app/oracle/jiaoben/bf1.sql

    select 'ho cp '||name||' /u01/app/oracle/lengbei/' from v$controlfile

    union all

    select 'ho cp '||name||' /u01/app/oracle/lengbei/' from v$datafile

    union all

    select 'ho cp '||name||' /u01/app/oracle/lengbei/' from v$tempfile

    union all

    select 'ho cp '||member||' /u01/app/oracle/lengbei/' from v$logfile

    /

    create pfile='/u01/app/oracle/lengbei/initorcl.ora' from spfile;

    ho cp /u01/app/oracle/product/11.2.0/dbhome_1/dbs/orapworcl /u01/app/oracle/lengbei/

    spool off

    shutdown immediate

    @/u01/app/oracle/jiaoben/bf1.sql

    startup

    rm -rf /u01/app/oracle/jiaoben/bf1.sql

    还原:

    1、非归档模式

    1)非归档模式,全库物理文件丢失情况下的恢复:

    a、关闭数据库,sqlplus可以进入即用sqlplus关闭、否则kill -9 杀死进程

    b、拷贝备份文件到数据库物理文件具体路径。

    c、sqlplus / as sysdba进入数据库,通过startup打开数据库。

    此时的数据库恢复到当时备份的时间点,从备份到现在的数据库事务丢失。

    除了完全恢复到备份时间点,不支持单个数据文件丢失的恢复过程。

    2、归档模式

    1)归档模式下,所有物理文件丢失情况下的恢复。

    a、关闭数据库,sqlplus可以进入即用sqlplus关闭、否则kill -9 杀死进程

    b、拷贝备份文件到数据库物理文件具体路径。

    c、sqlplus / as sysdba进入数据库,通过startup mount。

    d、recover database using backup controlfile; auto

    e、alter database open resetlogs;

    归档模式下的冷备份可以通过归档日志,在还原后初次启动数据库时进行恢复操作。同时,归档模式下也支持非归档冷备恢复办法。

    2)归档模式下,system表空间丢失(可以支持单个数据文件丢失情况恢复):

    a、shutdow关机

    b、将备份文件考回数据文件位置

    c、startup

    d、recover datafile 1;recover tablespace system;recover database;

    e、alter database open;

    异机恢复:同平台、同版本

    1、目标库不创建实例,目标库按照源库的目录结构创建目录,拷贝源库冷备文件到目标库下,按照源库的目录结构还原物理文件。

    2、源库通过create pfile from spfile;创建参数文件,并同passwordfile一同拷贝到目标库$ORACLE_HOME/dbs/目录下。

    3、按照源库的listener.ora和tnsnames.ora内容在目标库建立该文件或是修改其内容。

    4、sqlplus / as sysdba方式进入sqlplus环境,通过startup pfile='$ORACLE_HOME/dbs/initorcl.ora'方式启动数据库。

    5、create spfile from pfile;创建二进制参数文件。冷备迁移完成。

    异机恢复:平台:rhel6.4~rhel6.5 版本:oracle 11g 11.2.0.1~oracle 11g 11.2.0.4

    1、目标库不创建实例,目标库按照源库的目录结构创建目录,拷贝源库冷备文件到目标库下,按照源库的目录结构还原物理文件。

    2、源库通过create pfile from spfile;创建参数文件,并同passwordfile一同拷贝到目标库$ORACLE_HOME/dbs/目录下。

    3、按照源库的listener.ora和tnsnames.ora内容在目标库建立该文件或是修改其内容。

    4、sqlplus / as sysdba方式进入sqlplus环境,通过startup pfile='$ORACLE_HOME/dbs/initorcl.ora'方式启动数据库。

    ******注意此时会报错****************************

    ORA-01092: ORACLE instance terminated. Disconnection forced

    ORA-00704: bootstrap process failure

    ORA-39700: database must be opened with UPGRADE option

    Process ID: 2774

    Session ID: 125 Serial number: 5

    5、以startup upgrade方式打开数据库,异机恢复完成。

  • 相关阅读:
    window C/C++ 简单的IDE编译器
    ubuntu 安装 lamp
    架构设计
    linux 性能分析
    wifi基本原理
    openwrt 编译
    学习笔记day5:inline inline-block block区别
    脱离原来文档流产生浮动框
    meta标签清理缓存
    百度web前端面试2015.10.18
  • 原文地址:https://www.cnblogs.com/wcwen1990/p/6661693.html
Copyright © 2011-2022 走看看