来看看 发表于 2018-9-25 12:56:03

oracle技术之oracle手工完全恢复(六)

  案例5:将数据文件恢复到新的位置
  1、模拟环境
  SQL> create table lxtb01(id int) tablespace lx01;
  SQL> insert into lxtb01 values(1);
  1 row created.
  SQL> insert into lxtb01 values(2);
  1 row created.
  SQL> select * from lxtb01;
  ID
  ----------
  1
  2
  SQL> commit;
  Commit complete.
  SQL> shutdown abort;
  ORACLE instance shut down.
  SQL> !
  $rm /u01/app/oracle/oradata/anny/lx01.dbf
  $exit
  exit
  SQL> startup
  ORACLE instance started.
  Total System Global Area314572800 bytes

  Fixed>
  Variable>  Database Buffers          251658240 bytes
  Redo Buffers                2912256 bytes
  Database mounted.

  ORA-01157: cannot>  ORA-01110: data file 6: '/u01/app/oracle/oradata/anny/lx01.dbf'
  SQL> select file#,error from v$recover_file;
  FILE# ERROR
  ---------- -----------------------------------------------------------------
  6 FILE NOT FOUND
  2、对数据文件进行恢复,并恢复到新的位置

  SQL>>
  Database>  $cp /disk1/backup/anny/cold_bak/lx01.dbf /disk1/oradata/anny/——新的位置

  SQL>>
  Database>
  SQL>>  2to '/disk1/oradata/anny/lx01.dbf';

  Database>  SQL> recover datafile 6;
  Media recovery complete.

  SQL>>
  Database>  SQL> select * from scott.lxtb01;
  ID
  ----------
  1
  2
  SQL> col file_name for a50
  SQL> select file_id,file_name,tablespace_name from dba_data_files;
  FILE_ID FILE_NAME                                          TABLESPACE_NAME
  ---------- -------------------------------------------------- --------------------------
  5 /u01/app/oracle/oradata/anny/test01.dbf            TEST
  4 /u01/app/oracle/oradata/anny/user01.dbf            USERS
  3 /u01/app/oracle/oradata/anny/sysaux01.dbf          SYSAUX
  2 /u01/app/oracle/oradata/anny/lx02.dbf            LX02
  1 /u01/app/oracle/oradata/anny/system01.dbf          SYSTEM
  6 /disk1/oradata/anny/lx01.dbf                     LX01
  7 /u01/app/oracle/oradata/anny/undotbs01.dbf         UNDOTBS
  8 /u01/app/oracle/oradata/anny/lx03.dbf            LX03
  9 /u01/app/oracle/oradata/anny/lx04.dbf            LX04
  10 /u01/app/oracle/oradata/anny/index01.dbf         INDEXES
  12 /u01/app/oracle/oradata/anny/cuug01.dbf            CUUG
  11 /u01/app/oracle/oradata/anny/test02.dbf            TEST
  12 rows selected.
  3、将数据文件迁移到原来的位置

  SQL>>
  Tablespace>  $cp /disk1/oradata/anny/lx01.dbf /u01/app/oracle/oradata/anny/lx01.dbf——将文件拷回来

  SQL>>  2to '/u01/app/oracle/oradata/anny/lx01.dbf';

  Database>
  SQL>>
  Tablespace>  SQL> select file_id,file_name,tablespace_name from dba_data_files;
  FILE_ID FILE_NAME                                          TABLESPACE_NAME
  ---------- -------------------------------------------------- ----------------------
  5 /u01/app/oracle/oradata/anny/test01.dbf            TEST
  4 /u01/app/oracle/oradata/anny/user01.dbf            USERS
  3 /u01/app/oracle/oradata/anny/sysaux01.dbf          SYSAUX
  2 /u01/app/oracle/oradata/anny/lx02.dbf            LX02
  1 /u01/app/oracle/oradata/anny/system01.dbf          SYSTEM
  6 /u01/app/oracle/oradata/anny/lx01.dbf            LX01
  7 /u01/app/oracle/oradata/anny/undotbs01.dbf         UNDOTBS
  8 /u01/app/oracle/oradata/anny/lx03.dbf            LX03
  9 /u01/app/oracle/oradata/anny/lx04.dbf            LX04
  10 /u01/app/oracle/oradata/anny/index01.dbf         INDEXES
  12 /u01/app/oracle/oradata/anny/cuug01.dbf            CUUG
  11 /u01/app/oracle/oradata/anny/test02.dbf            TEST
  12 rows selected.
  4、删除旧文件
  $rm /disk1/oradata/anny/lx01.dbf
  oracle视频教程请关注:http://u.youku.com/user_video/id_UMzAzMjkxMjE2.html

页: [1]
查看完整版本: oracle技术之oracle手工完全恢复(六)