zoukankan      html  css  js  c++  java
  • oracle课堂随笔----第二十四天

    RMAN恢复

    数据文件

     

     RPO/RTO

    数据文件:

    不归档方式下丢失一个数据文件:

    SQL> archive log list

    备份前工作:

    SQL> create table t1(x varchar2(50)) tablespace users;

    SQL> insert into t1 values ('friday, before backup');

    SQL> commit;

    备份:

    SQL> 查询v$datafile, v$logfile, v$tempfile, v$controlfile

    SQL> shutdown immediate

    $ cd $ORACLE_BASE/oradata/

    $ cp -r orcl orcl.bak

    $ cd $ORACLE_BASE/fast_recovery_area/orcl

    $ cp control02.ctl control02.ctl.bak

    SQL> startup

    备份后工作:

    SQL> insert into t1 values ('monday, after backup');

    SQL> commit;

    故障:

    SQL> alter system flush buffer_cache;

    $ cd $ORACLE_BASE/oradata/orcl

    $ >users01.dbf

    SQL> select * from t1; 报错

    $ vi /u01/app/oracle/diag/rdbms/orcl/orcl/trace/alert_orcl.log

    $ dbv file=/u01/app/oracle/oradata/orcl/users01.dbf

    恢复:

    SQL> shutdown abort

    $ cd $ORACLE_BASE/oradata

    $ rm -rf orcl

    $ mv orcl.bak orcl

    $ cd $ORACLE_BASE/fast_recovery_area/orcl

    $ mv control02.ctl.bak control02.ctl

    SQL> startup

    SQL> select * from t1;

    归档模式下丢失一个数据文件:

    SQL> archive log list

    备份前工作:

    SQL> create table t1(x varchar2(50)) tablespace users;

    SQL> insert into t1 values ('friday, before backup');

    SQL> commit;

    备份:

    RMAN> backup tablespace users tag "tbs_users_weekend_backup";

    备份后工作:

    SQL> select group#, sequence#, status, archived from v$log;

    SQL> insert into t1 values ('after backup, logseq 7, archived');

    SQL> commit;

    SQL> alter system switch logfile;切换日志

    SQL> insert into t1 values ('after backup, logseq 8, archived');

    SQL> commit;

    SQL> alter system switch logfile;

    SQL> insert into t1 values ('after backup, logseq 9, archived');

    SQL> commit;

    SQL> alter system switch logfile;

    SQL> insert into t1 values ('after backup, logseq 10, current');

    SQL> commit;

    SQL> insert into t1 values ('after backup, logseq 10, current, uncommitted');

    SQL> select * from t1;

    故障:

    SQL> shutdown abort

    $ rm $ORACLE_BASE/oradata/orcl/users01.dbf

    SQL> startup 报错

    SQL> select open_mode from v$database;

    $ vi /u01/app/oracle/diag/rdbms/orcl/orcl/trace/alert_orcl.log

    恢复:

    RMAN> list backup of tablespace users;

    SQL> alter database datafile 4 offline; system和undo tbs不能offline

    SQL> alter database open;

    RMAN> restore datafile 4;

    RMAN> recover datafile 4;

    SQL> alter database datafile 4 online;

    SQL> select * from t1;

  • 相关阅读:
    JetBrains全系列破解
    BZOJ 4817: [Sdoi2017]树点涂色 LCT + DFS序 + 线段树
    LOJ #6041. 「雅礼集训 2017 Day7」事情的相似度 LCT + SAM + 线段树
    Uoj 52. 【UR #4】元旦激光炮 交互题
    Uoj #218. 【UNR #1】火车管理 可持久化线段树+思维
    luoguP3979 遥远的国度 LCT + multiset维护子树信息
    BZOJ 4999: This Problem Is Too Simple! DFS序 + LCA + 树状数组 + 离线
    BZOJ 1787: [Ahoi2008]Meet 紧急集合
    BZOJ 2959: 长跑 LCT + 并查集 + 点双
    BZOJ 4259: 残缺的字符串 FFT
  • 原文地址:https://www.cnblogs.com/Matilda/p/7383912.html
Copyright © 2011-2022 走看看