zoukankan      html  css  js  c++  java
  • [转载]truncate 表之后,采用的恢复方法

    一 模拟环境

       1.Create environment

          sqlplus / as sysdba

          sql> create tablespace myexample

          sql> conn tiger/tiger
          sql> create table mysales tablespace myexample   as select * from dba_tables;
          sql> select count(*) from mysales;

       2 备份

         [oracle@paynode2 new]$ rman targetsys@PAYRAC

         RMAN>backup database format '+ARCHIVELOG/back/%d_%p_%s.FULL'

       3.truncate 表

        sqlplus / as sysdba

        sql > alter system switch logfile;

        sql > /

        sql >  select current_scn from v$database;

        sql >  select count(*) from  table tiger. mysales;

        sql >  set time on

       10:15:41 SQL> select current_scn from v$database;

                  CURRENT_SCN
                  -----------
                  317123764

      10:15:51 SQL> truncate table tiger. mysales;

     

    二 利用rman备份和TSPITR 恢复rac truncate的表数据

    (1). 建立密码文件

      orapwd file=initaux.ora entries=4 password=aux

    (2).建立参数文件
      
       1.连接主库,建立参数文件
       
         sqlplussys/man@payracas sysdba
     
         create pfile='/data/app/oracle/product/11.2.0/dbhome_1/dbs/initaux.ora' from spfile;
      
       2.编辑 initaux.ora 文件

        修改
         *.log_file_name_convert=('+DATA_FILE','/data/aux','+ARCHIVELOG','/data/aux')
         *.db_file_name_convert=('+DATA_FILE','/data/aux')
         *.control_files='/data/aux/aux.ctl'
        *.db_unique_name='aux'

        加入

         *.instance_number=1

        改小

          *.memory_target=3488881664

        删除有关内存分配的参数

    (3).restore 文件

        rman targetsys/man@payrac

        rman > list backup of datafile 1,3,4,22;

             Full 317120994  21-OCT-11 +DATA_FILE/payrac/datafile/system.259.735856809
             Full 317120994  21-OCT-11 +DATA_FILE/payrac/datafile/undotbs1.261.735856815
             Full 317120994  21-OCT-11 +DATA_FILE/payrac/datafile/undotbs2.263.735856825
        22      Full 317120994  21-OCT-11 +DATA_FILE/payrac/datafile/myexample.264.764951973

        ( 注:另开一个窗口         mkdir -p /data/aux/payrac/datafile)

       rman >  restore controlfile to '/data/aux/aux.ctl' from '+ARCHIVELOG/back/control.c-1544998241-20111021-00';


      RMAN> run {
                  set newname for datafile 1 to   '/data/aux/payrac/datafile/system.259.735856809';
                  set newname for datafile 3 to   '/data/aux/payrac/datafile/undotbs1.261.735856815';
                  set newname for datafile 4 to   '/data/aux/payrac/datafile/undotbs2.263.735856825';
                  set newname for datafile 22 to  '/data/aux/payrac/datafile/myexample.264.764951973'
                  restore datafile 1,3,4,22;
                  switch datafile all;
                 }


    (4). 启动辅助例程aux

     export ORACLE_SID=aux
     sqlplus / as sysdba

     sql >  startup nomount pfile=/data/app/oracle/product/11.2.0/dbhome_1/dbs/initaux.ora

     sql >  alter database mount clone database;

     sql > alter database datafile 1 online;
     sql > alter database datafile 3 online;
     sql > alter database datafile 4 online;
     sql > alter database datafile 22 online;


    (5). 修改 log_archive_dest_1之后 做恢复

      sql >  alter system set log_archive_dest_1='LOCATION=+ARCHIVELOG/arch';

      sql >  recover database until change 317123764 using backup controlfile;

    (6).  打开数据库


       sql > alter database open read only;

    (7). 导出表数据,并在正式库上导入

        exp system/oracle   tablespace=MYEXAMPLE file=use01.dmp

       或者

        exp system/oracle   tables=tiger.mysales  file=use02.dmp

       或者
           expdp system/oracle


       用imp,impdp 导入即可

  • 相关阅读:
    如何在iTerm2中配置oh my zsh?
    sublime中格式化jsx文件
    ES6 new syntax of Literal
    ES6 new syntax of Rest and Spread Operators
    How to preview html file in our browser at sublime text?
    ES6 new syntax of Default Function Parameters
    ES6 new syntax of Arrow Function
    七牛云2018春招笔试题
    Spring-使用注解开发(十二)
    Spring-声明式事物(十一)
  • 原文地址:https://www.cnblogs.com/liuzhuqing/p/7480649.html
Copyright © 2011-2022 走看看