zoukankan      html  css  js  c++  java
  • oracle用户管理的完全恢复2:在NOARCHIVELOG 模式下执行恢复(无联机日志的备份)

    1.查看环境

     1 -bash-3.00$ sqlplus /nolog
     2 
     3 SQL*Plus: Release 10.2.0.2.0 - Production on Mon Jan 21 19:22:40 2013
     4 
     5 Copyright (c) 1982, 2005, Oracle.  All Rights Reserved.
     6 
     7 SQL> conn /as sysdba
     8 Connected.
     9 SQL> archive log list;
    10 Database log mode              No Archive Mode
    11 Automatic archival             Disabled
    12 Archive destination            USE_DB_RECOVERY_FILE_DEST
    13 Oldest online log sequence     1
    14 Current log sequence           2
    15 SQL> 

    2.非归档模式下备份(没有备份联机日志)

    2.1关机

    1 SQL> shutdown immediate
    2 Database closed.
    3 Database dismounted.
    4 ORACLE instance shut down.
    5 SQL> 

    2.2 备份数据文件,控制文件

    1 /u01/oradata/sunbak
    2 bash-3.00$ cp *.ctl  /u01/backup/sunbak
    3 bash-3.00$ cp *.dbf  /u01/backup/sunbak
    4 bash-3.00$ 

    3.破坏当前数据库

     1 bash-3.00$ pwd   
     2 /u01/oradata/sunbak
     3 bash-3.00$ ls -l
     4 total 2142000
     5 -rw-r-----   1 oracle   oinstall 7061504 Jan 21 19:27 control01.ctl
     6 -rw-r-----   1 oracle   oinstall 7061504 Jan 21 19:27 control02.ctl
     7 -rw-r-----   1 oracle   oinstall 7061504 Jan 21 19:27 control03.ctl
     8 -rw-r-----   1 oracle   oinstall 104865792 Jan 21 19:33 example01.dbf
     9 -rw-r-----   1 oracle   oinstall 52429312 Jan 21 19:27 redo01.log
    10 -rw-r-----   1 oracle   oinstall 52429312 Jan 21 18:52 redo02.log
    11 -rw-r-----   1 oracle   oinstall 52429312 Jan 21 18:52 redo03.log
    12 -rw-r-----   1 oracle   oinstall 251666432 Jan 21 19:34 sysaux01.dbf
    13 -rw-r-----   1 oracle   oinstall 503324672 Jan 21 19:34 system01.dbf
    14 -rw-r-----   1 oracle   oinstall 20979712 Jan 21 19:35 temp01.dbf
    15 -rw-r-----   1 oracle   oinstall 31465472 Jan 21 19:35 undotbs01.dbf
    16 -rw-r-----   1 oracle   oinstall 5251072 Jan 21 19:35 users01.dbf
    17 bash-3.00$ rm -f *
    18 bash-3.00$ 

    4.还原(备份是并没有备份redo文件)

     1 bash-3.00$ pwd                        
     2 /u01/oradata/sunbak
     3 bash-3.00$ cp /u01/backup/sunbak/* .
     4 bash-3.00$ ls -l
     5 total 1834512
     6 -rw-r-----   1 oracle   oinstall 7061504 Jan 21 19:43 control01.ctl
     7 -rw-r-----   1 oracle   oinstall 7061504 Jan 21 19:43 control02.ctl
     8 -rw-r-----   1 oracle   oinstall 7061504 Jan 21 19:43 control03.ctl
     9 -rw-r-----   1 oracle   oinstall 104865792 Jan 21 19:43 example01.dbf
    10 -rw-r-----   1 oracle   oinstall 251666432 Jan 21 19:43 sysaux01.dbf
    11 -rw-r-----   1 oracle   oinstall 503324672 Jan 21 19:44 system01.dbf
    12 -rw-r-----   1 oracle   oinstall 20979712 Jan 21 19:44 temp01.dbf
    13 -rw-r-----   1 oracle   oinstall 31465472 Jan 21 19:44 undotbs01.dbf
    14 -rw-r-----   1 oracle   oinstall 5251072 Jan 21 19:44 users01.dbf
    15 bash-3.00$ 

    5.恢复

    5.1 打开到mount状态

     1 bash-3.00$ sqlplus /nolog
     2 
     3 SQL*Plus: Release 10.2.0.2.0 - Production on Mon Jan 21 19:47:04 2013
     4 
     5 Copyright (c) 1982, 2005, Oracle.  All Rights Reserved.
     6 
     7 SQL> conn /as sysdba
     8 Connected to an idle instance.
     9 SQL> startup mount
    10 ORACLE instance started.
    11 
    12 Total System Global Area  289406976 bytes
    13 Fixed Size                  1279820 bytes
    14 Variable Size              92276916 bytes
    15 Database Buffers          192937984 bytes
    16 Redo Buffers                2912256 bytes
    17 Database mounted.
    18 SQL> 

    5.2 执行recover命令

     1 SQL> recover database until cancel using backup controlfile;
     2 ORA-00279: change 570446 generated at 01/21/2013 19:27:52 needed for thread 1
     3 ORA-00289: suggestion :
     4 /u01/flash_recovery_area/SUN/archivelog/2013_01_21/o1_mf_1_2_%u_.arc
     5 ORA-00280: change 570446 for thread 1 is in sequence #2
     6 
     7 Specify log: {<RET>=suggested | filename | AUTO | CANCEL}
     8 cancel
     9 Media recovery cancelled.
    10 SQL> 

    5.3 打开数据库并创建日志

    1 SQL> alter database open resetlogs;
    2 
    3 Database altered.
    4 
    5 SQL>

    6.验证日志文件已被创建

    1 SQL> !ls /u01/oradata/sunbak/*.log
    2 /u01/oradata/sunbak/redo01.log  /u01/oradata/sunbak/redo02.log  /u01/oradata/sunbak/redo03.log
    3 
    4 SQL>
  • 相关阅读:
    python——二分查找算法
    python实现二分查找
    git merge 与 git rebase的区别
    mysql查询表死锁和结束死锁的方法
    mysql的undo log和redo log
    Python中给List添加元素的4种方法
    输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字
    Python中生成器和迭代器的区别(代码在Python3.5下测试):
    mysql锁
    每天一个linux命令(46):vmstat命令
  • 原文地址:https://www.cnblogs.com/polestar/p/2872581.html
Copyright © 2011-2022 走看看