Time & cancelled based recovery

Hi DBAs,
Any one can give me clear idea about, what is time based recovery and until cancel based recovery.
Thanks a lot

Any one can give me clear idea about, what is time based recovery and until cancel based recovery.All are incomplete recovery scenarios.
refer these links
*Performing Incomplete Recovery [ID 114199.1]*
http://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:1406803852098
http://docs.oracle.com/cd/B10500_01/server.920/a96572/performingreco.htm

Similar Messages

  • Cancel based recovery

    dear dba's,
    i'm using oracle 11gR2 in windows 2003 sever S2.
    could anyone tell me
    1. what is CANCEL BASED RECOVERY
    2. pls give the commands with an explanation
    3. In which suituation we must use this type of recovery.
    Thanks & Regards,
    John Marshal.A

    +1. what is CANCEL BASED RECOVERY+
    It is an incomplete recovery option , at particular time you want to recover yours database for an audit purpose or to avoid any logical error by users in past , but flashback technology now been dominant to cancel based reocovery.
    +2. pls give the commands with an explanation+
    +3. In which suituation we must use this type of recovery.+
    When yours controlfile does not know when so far yours recover could be go on and on by "recover database using backup controlfile until cancel" yours restored controlfile from backup typically does not know how far i need redo if you are doing manual recovery while RMAN does not need cancel based recovery it will keep applying log until it finds and bumped out with an error RMAN-06054: media recovery requesting unknown archived log for ..... .
    Situation could be manual recovery in general when you do not define time.scn based recovery using until clause.
    Copied from my blog but need to be a bit changes thats why pasting here.
    Scenario 1
    I lost all data file but my control file is intact at the same location where it was , before lost datafiles i have backed up the data files, controlfile and archive logs.
    If you are just restoring the data files and not control files then you may know how much archive log sequence required for yours recovery after the backup taken using archived log repository.
    RMAN> backup database;
    Starting backup at 02-OCT-09
    using target database control file instead of recovery catalog
    allocated channel: ORA_DISK_1
    channel ORA_DISK_1: SID=128 device type=DISK
    channel ORA_DISK_1: starting full datafile backup set
    channel ORA_DISK_1: specifying datafile(s) in backup set
    input datafile file number=00001 name=/u01/app/oracle/oradata/his/system01.dbf
    input datafile file number=00002 name=/u01/app/oracle/oradata/his/sysaux01.dbf
    input datafile file number=00003 name=/u01/app/oracle/oradata/his/undotbs01.dbf
    input datafile file number=00004 name=/u01/app/oracle/oradata/his/users01.dbf
    channel ORA_DISK_1: starting piece 1 at 02-OCT-09
    channel ORA_DISK_1: finished piece 1 at 02-OCT-09
    piece handle=/u01/app/oracle/flash_recovery_area/HIS/backupset/2009_10_02/o1_mf_nnndf_TAG20091002T112226_5dc712wg_.bkp tag=TAG20091002T112226 comment=NONE
    channel ORA_DISK_1: backup set complete, elapsed time: 00:00:45
    Finished backup at 02-OCT-09
    Starting Control File and SPFILE Autobackup at 02-OCT-09
    piece handle=/u01/app/oracle/flash_recovery_area/HIS/autobackup/2009_10_02/o1_mf_s_699189791_5dc72j13_.bkp comment=NONE
    Finished Control File and SPFILE Autobackup at 02-OCT-09
    RMAN> sql 'alter system archive log current';
    using target database control file instead of recovery catalog
    sql statement: alter system archive log current
    RMAN> sql 'alter system archive log current';
    sql statement: alter system archive log current
    RMAN> sql 'alter system archive log current';
    sql statement: alter system archive log current
    RMAN> exit
    Recovery Manager complete.
    [oracle@khurram his]$ sqlplus / as sysdba
    SQL*Plus: Release 11.1.0.6.0 - Production on Fri Oct 2 11:24:04 2009
    Copyright (c) 1982, 2007, Oracle.  All rights reserved.
    Connected to:
    Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 - 64bit Production
    With the Partitioning, OLAP, Data Mining and Real Application Testing options
    SQL> select name,sequence#
      2    from v$archived_log
      3   where status='A'
      4  /
    NAME                                                                                 SEQUENCE#
    /u01/app/oracle/product/11.1.0/db_1/dbs/arch1_2_699187272.dbf                           2
    /u01/app/oracle/flash_recovery_area/HIS/archivelog/2009_10_02/o1_mf_1_2_5dc73qw2_.arc   2
    /u01/app/oracle/product/11.1.0/db_1/dbs/arch1_3_699187272.dbf                           3
    /u01/app/oracle/flash_recovery_area/HIS/archivelog/2009_10_02/o1_mf_1_3_5dc73vgm_.arc   3
    /u01/app/oracle/product/11.1.0/db_1/dbs/arch1_4_699187272.dbf                           4
    /u01/app/oracle/flash_recovery_area/HIS/archivelog/2009_10_02/o1_mf_1_4_5dc740d7_.arc   4
    6 rows selected.You may know if yours control file intact (not lost or restored from backup), you may know how much recovery will go so far by knowing archived logs repository (conrolfile).From above v$archived_log archveilog repository you are seeing that after backup there are sequence required for the archive logs are 2,3 and 4 for recovering the restored backup which you have taken as above.
    SQL> exit
    Disconnected from Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 - 64bit Production
    With the Partitioning, OLAP, Data Mining and Real Application Testing options
    [oracle@khurram his]$ cd /u01/app/oracle/oradata/his/*.dbf
    bash: cd: /u01/app/oracle/oradata/his/sysaux01.dbf: Not a directory
    [oracle@khurram his]$ rm -rf  /u01/app/oracle/oradata/his/*.dbf
    [oracle@khurram his]$ sqlplus / as sysdba
    SQL*Plus: Release 11.1.0.6.0 - Production on Fri Oct 2 11:28:01 2009
    Copyright (c) 1982, 2007, Oracle.  All rights reserved.
    Connected to:
    Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 - 64bit Production
    With the Partitioning, OLAP, Data Mining and Real Application Testing options
    SQL> shutdown abort
    ORACLE instance shut down.
    SQL> startup mount
    ORACLE instance started.
    Total System Global Area 1620115456 bytes
    Fixed Size                  2144864 bytes
    Variable Size             922748320 bytes
    Database Buffers          687865856 bytes
    Redo Buffers                7356416 bytes
    Database mounted.
    SQL> exit
    Disconnected from Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 - 64bit Production
    With the Partitioning, OLAP, Data Mining and Real Application Testing options
    [oracle@khurram his]$ rman target /
    Recovery Manager: Release 11.1.0.6.0 - Production on Fri Oct 2 11:29:30 2009
    Copyright (c) 1982, 2007, Oracle.  All rights reserved.
    connected to target database: HIS (DBID=3219691467, not open)
    RMAN> restore database;
    Starting restore at 02-OCT-09
    using target database control file instead of recovery catalog
    allocated channel: ORA_DISK_1
    channel ORA_DISK_1: SID=154 device type=DISK
    channel ORA_DISK_1: starting datafile backup set restore
    channel ORA_DISK_1: specifying datafile(s) to restore from backup set
    channel ORA_DISK_1: restoring datafile 00001 to /u01/app/oracle/oradata/his/system01.dbf
    channel ORA_DISK_1: restoring datafile 00002 to /u01/app/oracle/oradata/his/sysaux01.dbf
    channel ORA_DISK_1: restoring datafile 00003 to /u01/app/oracle/oradata/his/undotbs01.dbf
    channel ORA_DISK_1: restoring datafile 00004 to /u01/app/oracle/oradata/his/users01.dbf
    channel ORA_DISK_1: reading from backup piece /u01/app/oracle/flash_recovery_area/HIS/backupset/2009_10_02/o1_mf_nnndf_TAG20091002T112226_5dc712wg_.bkp
    channel ORA_DISK_1: piece handle=/u01/app/oracle/flash_recovery_area/HIS/backupset/2009_10_02/o1_mf_nnndf_TAG20091002T112226_5dc712wg_.bkp tag=TAG20091002T112226
    channel ORA_DISK_1: restored backup piece 1
    channel ORA_DISK_1: restore complete, elapsed time: 00:00:35
    Finished restore at 02-OCT-09
    RMAN> recover database;
    Starting recover at 02-OCT-09
    using channel ORA_DISK_1
    starting media recovery
    archived log for thread 1 with sequence 2 is already on disk as file /u01/app/oracle/flash_recovery_area/HIS/archivelog/2009_10_02/o1_mf_1_2_5dc73qw2_.arc
    archived log for thread 1 with sequence 3 is already on disk as file /u01/app/oracle/flash_recovery_area/HIS/archivelog/2009_10_02/o1_mf_1_3_5dc73vgm_.arc
    archived log for thread 1 with sequence 4 is already on disk as file /u01/app/oracle/flash_recovery_area/HIS/archivelog/2009_10_02/o1_mf_1_4_5dc740d7_.arc
    archived log file name=/u01/app/oracle/flash_recovery_area/HIS/archivelog/2009_10_02/o1_mf_1_2_5dc73qw2_.arc thread=1 sequence=2
    media recovery complete, elapsed time: 00:00:01
    Finished recover at 02-OCT-09
    as you can see that 2,3,4 were required during recovery process.Scenario 2
    I lost all data file as well control file , i have backed up the data files, controlfile and archive logs.
    Its like a disastre you lost alls data file and as well controlfile , if you backed the controlfile then remember during controlfile backup it will have file type flag 4 that tells Oracle it is a backup control file. The Stop SCN for alls data file marked to 0xffff.ffffffff (infinity).File type flag in the backup control file tells to oracle that it cannot rely on its redo thread,which means recovering will go on and on , controlfile will not aware how much should i go for redo it will never stop if you are able to supply redo.
    It will always ask you more subsequent redo if you already supplied to it during process that's why it let you open the database in reset logs.
    Lets see after restoring the controlfile and datafiles , you will see SQL tool recovery mechanism ask you recover database using backup controlfile which shows that controlfile does not know where to end the applying redo chain.
    Here an excerpt which shows that restored controlfile does not know till how long the redo should be applied, its the RMAN robustness which does not ask you manually to supply redo, RMAN search the alls redo from archivelogs and if possible you have redo within redo logs.But if you are not with RMAN i.e recovering by SQL then you have to cancel recovery at some end.
    RMAN> shutdown abort
    Oracle instance shut down
    RMAN> exit
    Recovery Manager complete.
    [oracle@khurram ~]$ rm -rf /u01/app/oracle/oradata/his/*
    [oracle@khurram ~]$ rman target /
    Recovery Manager: Release 11.1.0.6.0 - Production on Fri Oct 2 09:32:37 2009
    Copyright (c) 1982, 2007, Oracle.  All rights reserved.
    connected to target database (not started)
    RMAN> startup nomount
    Oracle instance started
    Total System Global Area    1620115456 bytes
    Fixed Size                     2144864 bytes
    Variable Size                922748320 bytes
    Database Buffers             687865856 bytes
    Redo Buffers                   7356416 bytes
    RMAN> restore controlfile from autobackup;
    Starting restore at 02-OCT-09
    using target database control file instead of recovery catalog
    allocated channel: ORA_DISK_1
    channel ORA_DISK_1: SID=153 device type=DISK
    recovery area destination: /u01/app/oracle/flash_recovery_area
    database name (or database unique name) used for search: HIS
    channel ORA_DISK_1: AUTOBACKUP /u01/app/oracle/flash_recovery_area/HIS/autobackup/2009_10_02/o1_mf_s_699182899_5dc0c49t_.bkp found in the recovery area
    AUTOBACKUP search with format "%F" not attempted because DBID was not set
    channel ORA_DISK_1: restoring control file from AUTOBACKUP /u01/app/oracle/flash_recovery_area/HIS/autobackup/2009_10_02/o1_mf_s_699182899_5dc0c49t_.bkp
    channel ORA_DISK_1: control file restore from AUTOBACKUP complete
    output file name=/u01/app/oracle/oradata/his/control01.ctl
    output file name=/u01/app/oracle/oradata/his/control02.ctl
    output file name=/u01/app/oracle/oradata/his/control03.ctl
    Finished restore at 02-OCT-09
    RMAN> alter database mount;
    database mounted
    released channel: ORA_DISK_1
    RMAN> restore database;
    Starting restore at 02-OCT-09
    Starting implicit crosscheck backup at 02-OCT-09
    allocated channel: ORA_DISK_1
    channel ORA_DISK_1: SID=153 device type=DISK
    Crosschecked 1 objects
    Finished implicit crosscheck backup at 02-OCT-09
    Starting implicit crosscheck copy at 02-OCT-09
    using channel ORA_DISK_1
    Finished implicit crosscheck copy at 02-OCT-09
    searching for all files in the recovery area
    cataloging files...
    cataloging done
    List of Cataloged Files
    =======================
    File Name: /u01/app/oracle/flash_recovery_area/HIS/autobackup/2009_10_02/o1_mf_s_699182899_5dc0c49t_.bkp
    File Name: /u01/app/oracle/flash_recovery_area/HIS/archivelog/2009_10_02/o1_mf_1_5_5dc0d1m8_.arc
    File Name: /u01/app/oracle/flash_recovery_area/HIS/archivelog/2009_10_02/o1_mf_1_3_5dc0cx6p_.arc
    File Name: /u01/app/oracle/flash_recovery_area/HIS/archivelog/2009_10_02/o1_mf_1_4_5dc0czx3_.arc
    using channel ORA_DISK_1
    channel ORA_DISK_1: starting datafile backup set restore
    channel ORA_DISK_1: specifying datafile(s) to restore from backup set
    channel ORA_DISK_1: restoring datafile 00001 to /u01/app/oracle/oradata/his/system01.dbf
    channel ORA_DISK_1: restoring datafile 00002 to /u01/app/oracle/oradata/his/sysaux01.dbf
    channel ORA_DISK_1: restoring datafile 00003 to /u01/app/oracle/oradata/his/undotbs01.dbf
    channel ORA_DISK_1: restoring datafile 00004 to /u01/app/oracle/oradata/his/users01.dbf
    channel ORA_DISK_1: reading from backup piece /u01/app/oracle/flash_recovery_area/HIS/backupset/2009_10_02/o1_mf_nnndf_TAG20091002T092724_5dc09dlc_.bkp
    channel ORA_DISK_1: piece handle=/u01/app/oracle/flash_recovery_area/HIS/backupset/2009_10_02/o1_mf_nnndf_TAG20091002T092724_5dc09dlc_.bkp tag=TAG20091002T092724
    channel ORA_DISK_1: restored backup piece 1
    channel ORA_DISK_1: restore complete, elapsed time: 00:00:45
    Finished restore at 02-OCT-09
    [oracle@khurram ~]$ sqlplus / as sysdba
    SQL*Plus: Release 11.1.0.6.0 - Production on Fri Oct 2 09:34:51 2009
    Copyright (c) 1982, 2007, Oracle.  All rights reserved.
    Connected to:
    Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 - 64bit Production
    With the Partitioning, OLAP, Data Mining and Real Application Testing options
    SQL> recover database using backup contorlfile until cancel
    Keep applying log as you can and you have and cancel at an end when alls logs are supplied to recovery process.

  • 실수로 TABLE을 DELETE 또는 DROP한 경우 복구 방법 (time-based recovery)

    제품 : ORACLE SERVER
    작성날짜 : 2004-07-29
    PURPOSE
    사용자의 실수로 중요한 데이타를 delete 하였거나, 테이블을 drop하였을
    경우 복구하는 절차를 정리한 자료이다.
    Explanation
    사용 중인 database 의 archive log mode 여부를 다음과 같이 확인 후
    archive log mode인지 아닌지에 따라 복구 방법이 달라진다.
    os>svrmgrl
    SVRMGR> connect internal;
    SVRMGR> archive log list
    Database log mode ARCHIVELOG
    Automatic archival ENABLED
    Archive destination ?/dbs/arch
    Oldest online log sequence 2525
    Current log sequence 2527
    1. Archive mode인 경우 복구 방법
    archive log mode로 운영중이면서 full backup및 archive file들이 모두
    존재하는 경우 복구가 항상 가능하다.
    이때 다시 다음과 같이 두가지의 경우를 구분하여 복구 작업을 수행할 필요가
    있으며 아래에 각각의 경우에 대한 절차를 자세히 설명한다.
    (1) drop이나 delete한 시점이 얼마 지나지 않았거나, 혹은 필요에 의해
    database 전체를 data 손실 이전 시점으로 돌리고자 하는 경우
    (2) 손실된 data만을 drop이나 delete이전 상태를 받아내고, 나머지 data는
    모두 drop/delete이후 발생한 transaction의 반영분을 유지시키기 위해
    현재 시점으로 맞추어햐 하는 경우
    1-1 database 전체를 drop이나 delete 이전시점으로 돌리고자 할 때
    이러한 경우는 데이타 손실이 발생하기 이전의 datafile들에 대한 backup을
    restore한 후 손실 발생 시점 직전까지 time based로 imcomplete recovery를
    수행하면 된다.
    (1) db를 shutdown시킨 후 현재 상태를 만약의 경우를 대비하여 cold
    backup을 받아둔다.
    shutdown immediate로 db를 내리고, datafiles, redo log files, control
    files 모두 tar등의 명령어를 이용하여 backup을 받아둔다.
    이것은 만약의 경우 이전 backup이나 archive file에 문제가 있는 경우,
    삭제된 data의 복구가 불가능할 경우 현재 상태로라도 돌리기 위한
    것이다.
    (2) 데이타를 삭제하기 이전 상태에서 받아둔 datafile full backup을
    restore한다.
    redo log files과 controlfiles은 현재 것을 그대로 이용하고, 현재
    상태의 모든 datafiles을 지우고 데이타가 삭제되기 전에 받아둔
    backup datafile을 restore시킨다.
    (temp datafile의 경우는 restore시간을 줄이기 위해 restore하지
    않아도된다.)
    (3) restore한 backup시점 이후의 archive file들을 archive log
    destination에 위치시킨다.
    full backup 이후의 archive file들을 일부 tape 장비등에 backup을
    받아두고 지운 상태라면 그러한 file을을 다시 원래 위치에 restore
    하여, full backup받은 시점부터 복구하고자 하는 시점까지의
    archive log file들이 모두 log archive destination에 존재하는지
    확인한다.
    (4) 데이타 삭제 이전 시점까지 time based로 recover를 수행한다.
    이때 날짜와 시간 지정은 항상 아래 예와 같은 형식으로 지정한다.
    만약 데이타를 삭제한 시간이후로 지정하게 되면 recovery후에도
    여전히 data는 지워진 상태로 보여진다.
    os>svrmgrl
    SVRMGR> connect internal
    SVRMGR> startup mount;
    SVRMGR> set autorecovery on
    SVRMGR> recover database until time '2001-01-30:21:00:00';
    SVRMGR> alter database open resetlogs;
    (a) 만약 이때, controlfile이 현재것이 존재하지 않아 datafile뿐
    아니라, controlfile도 과거것을 사용했다면, recovery command를
    다음과 같이 지정하면 된다.
    recover database using backup controlfile (아래줄과 이어짐)
    until time '2001-01-30:21:00:00';
    (b) temp datafile을 restore하지 않은 경우라면 startup mount수행
    직후 다음과 같은 문장을 추가하면 된다.
    alter databse datafile '/oracle/oradata/temp01.dbf'
    offline drop;
    /oracle/oradata/temp01.dbf는 temp datafile의 이름을 예로 든
    것이다.
    (5) 원하는 data가 제대로 조회되는지 확인한다.
    1-2. 삭제된 data만을 복구하고 나머지는 현재 상태를 유지하고자 하는 경우
    이러한 경우는 데이타가 삭제되기 이전 상태의 backup datafile 중에
    SYSTEM, RBS와 삭제된 data가 들어있는 datafile만을 restore시켜 time
    based로 recovery하여 db를 open시킨 후 원하는 table만 export를 받아낸다.
    그리고 다시 현재 상태의 db에 export받은 내용을 import시키는 것이다.
    이때 삭제된 data를 export받기까지의 절차에 대해서 다음과 같이 세가지
    경우의 방법을 생각할 수 있다.
    (a) 다른 시스템에 backup이나 test용으로 oracle이 설치되어 있는 경우
    그 시스템에 backup을 restore하여 해당 table을 export 받는 방법
    (b) 같은 시스템에 backup을 restore 하되, db name과 oracle_sid를 다른
    이름으로 변경하여 다른 db를 만들어 recovery후 open하여 export받는
    방법 <Bulletin:11616 참조>
    (c) 현재 db는 cold backup받아 두고, backup을 restore하여 export을
    받아내는 방법
    여기에서 (a)의 경우는 다른 시스템에 이용하고자 하는 datafile의 oracle
    version 이상의 oracle software가 이미 설치되어 있어야 한다.
    (b)의 경우는 현재 상태의 cold backup을 받았다가 export받은 후 다시
    현재 상태를 restore할 필요는 없애주지만, 대신 SYSTEM, RBS, user
    datafile 만큼의 disk space가 추가로 필요하며, 새로운 db를 추가로
    구성하는 것이므로 init.ora file 구성 등의 작업이 필요하다.
    이것에 관한 자세한 절차는 <Bulletin:11616>을 참조하도록 한다.
    이 자료에서는 이중 (c)에 대한 것만을 자세히 설명한다.
    (1) 현재의 모든 datafiles과 redo log files, datafiles을 다음과 같이
    신중히 cold backup을 받아두도록 한다.
    이것은 이후에 삭제한 data를 복구하여 export를 받은 후에 다시 현재
    상태의 db로 되돌아오기 위한 것이다.
    단 이 때 tar 등을 이용하여 cold backup하는 대신에 disk 상에 cold
    backup을 받아 시간을 절약할 수 있다. disk로의 backup이 가능한
    이유는 export를 위한 time based recovery를 수행하기 위해 필요한
    datafile이 SYSTEM, RBS, 삭제된 data를 포함한 user datafile
    정도이기 때문이다.
    os>svrmgrl
    SVRMGR> connect internal
    SVRMGR> shutdown immediate;
    SVRMGR> exit
    os>cp /oracle/oradata/*.ctl /oracle/backup/*.ctl
    os>cp /oracle/oradata/redo*.log /oracle/backup/redo*.log
    os>mv /oracle/oradata/system01.dbf /oracle/backup/system01.bak
    os>mv /oracle/oradata/rbs01.dbf     /oracle/backup/rbs01.bak
    os>mv /oracle/oradata/tools01.dbf /oracle/backup/tools01.bak
    redo log file이나 controlfile의 경우는 time based recovery시에도
    필요하므로 cp를 받아두고, datafile의 경우는 mv를 이용하도록 한다.
    위의 예에 제시된 file이름들은 해당 환경에 맞게 변경되어야 하며,
    tar를 이용하여 tape에 옮겨도 관계는 없으나, 단 cold backup에
    해당하는 모든 datafiles, redo log files, control files를 받아두어야
    한다.
    (2) 삭제한 data가 존재할 당시에 받아둔 backup에서 SYSTEM datafile, RBS
    datafile, 그리고 삭제한 table이 들어있는 datafile만을 restore한다.
    redo log files과 controlfiles은 현재 것을 그대로 이용한다.
    (3) restore한 backup시점 이후의 archive file들을 archive log
    destination에 위치시킨다.
    full backup 이후의 archive file들을 일부 tape 장비 등에 backup을
    받아두고 지운 상태라면 그러한 file을을 다시 원래 위치에 restore
    하여, full backup받은 시점부터 복구하고자 하는 시점까지의
    archive log file들이 모두 log archive destination에 존재하는지
    확인한다.
    (4) restore하지 않을 datafile, 즉 SYSTEM, RBS, 삭제된 data를 포함하
    는 user datafile을 제외한 모든 datafile은 모두 offline drop시키
    고, 데이타 삭제 이전 시점까지 time based로 recover를 수행한다.
    이때 날짜와 시간 지정은 항상 아래 예와 같은 형식으로 지정한다.
    만약 데이타를 삭제한 시간이후로 지정하게 되면 recovery후에도
    여전히 data는 지워진 상태로 보여진다.
    os>svrmgrl
    SVRMGR> connect internal
    SVRMGR> startup mount;
    SVRMGR> alter database datafile '/oracle/oradata/temp01.dbf'
    offline drop; (윗줄과 이어짐)
    SVRMGR> alter database datafile '/oracle/oradata/userdata05.dbf'
    offline drop; (윗줄과 이어짐)
    ... 이와 같이 resotre하지 않은 datafile을 모두 offline drop시킨다.
    SVRMGR> set autorecovery on
    SVRMGR> recover database until time '2001-01-30:21:00:00';
    SVRMGR> alter database open resetlogs;
    만약 이때, controlfile이 현재것이 존재하지 않아 datafile뿐 아니라,
    controlfile도 과거것을 사용했다면, recovery command를 다음과 같이
    지정하면 된다.
    SVRMGR>recover database using backup controlfile until time
    '2001-01-30:21:00:00'; (윗줄과 이어짐)
    (5) 원하는 data가 제대로 조회되는지 확인한 후 필요한 table을 export한다.
    예를 들어 scott user의 dept table을 복구하고자 한것이었다면 다음과
    같이 export를 받는다.
    os>exp scott/tiger file=dept.dmp tables=dept log=deptlog1
    (6) time based로 recovery후 open한 db는 shutdown하여 없애고 (1)번에서
    받아둔 현재 상태의 backup을 restore한다.
    shutdown은 immediate나 abort 모두 가능하며, shutdown후 restore한
    SYSTEM, RBS, user datafile모두 삭제하고, 사용하던 controlfiles,
    redo log files도 모두 삭제한다.
    그리고 (1)에서 mv나 cp로 (혹은 tar로) 옮겨놓은 모든 datafiles,
    controlfiles, redo log files를 원래의 directory와 이름으로
    위치시킨다. SYSTEM, RBS, user datafile도 반드시 (1)번 상태의
    현재 상태 backup을 restore하여야 한다.
    (7) db를 startup시킨 후 (5)에서 받은 export내용을 import시킨다.
    os>imp scott/tiger file=dept.dmp tables=dept ignore=y commit=y
    log=deptlog2 (윗줄과 이어짐)
    (8) 원하는 data가 제대로 조회되는지 확인한다.
    2. No archive mode 로 운영할 경우 복구 방법
    archive mode 로 운영하지 않았을 경우에는, 삭제한 data를 export 받아
    두었거나, 혹은 data가 삭제 전 받아둔 cold backup이 존재하는 경우
    복구가 가능하다.
    (1) export가 존재하는 경우
    다음과 같이 import한다. scott user의 dept가 삭제된 경우를 예로 들었다.
    os>imp scott/tiger file=dept.dmp tables=dept ignore=y commit=y log=log1
    (2) cold backup이 존재하는 경우
    다른 시스템에 사용가능한 oracle engine이 설치되어 있다면, 그곳을
    이용하거나, 혹은 현재 database를 backup받아둔후 현재 시스템에
    restore하여 export를 받아낼 수 있다.
    (1) 현재의 모든 datafiles과 redo log files, datafiles을 다음과 같이
    신중히 cold backup을 받아두도록 한다.
    이것은 이후에 삭제한 data를 복구하여 export를 받은 후에 다시 현재
    상태의 db로 되돌아오기 위한 것이다.
    단 이 때 tar 등을 이용하여 cold backup하는 대신에 disk 상에 cold
    backup을 받아 시간을 절약할 수 있다. disk로의 backup이 가능한
    이유는 export를 위한 time based recovery를 수행하기 위해 필요한
    datafile이 SYSTEM, RBS, 삭제된 data를 포함한 user datafile
    정도이기 때문이다.
    os>svrmgrl
    SVRMGR> connect internal
    SVRMGR> shutdown immediate;
    SVRMGR> exit
    os>mv /oracle/oradata/*.ctl /oracle/backup/*.ctl
    os>mv /oracle/oradata/redo*.log /oracle/backup/redo*.log
    os>mv /oracle/oradata/system01.dbf /oracle/backup/system01.bak
    os>mv /oracle/oradata/rbs01.dbf     /oracle/backup/rbs01.bak
    os>mv /oracle/oradata/tools01.dbf /oracle/backup/tools01.bak
    위의 예에 제시된 file이름들은 해당 환경에 맞게 변경되어야 하며,
    tar를 이용하여 tape에 옮겨도 관계는 없으나, 단 cold backup에
    해당하는 모든 datafiles, redo log files, control files를 받아두어야
    한다.
    (2) 삭제한 data가 존재할 당시에 받아둔 backup에서 SYSTEM datafile,
    RBS datafile, 그리고 삭제한 table이 들어있는 datafile만을
    restore한다.
    backup당시의 redo log files과 controlfiles도 restore하여야 한다.
    (3) restore하지 datafile, 즉 SYSTEM, RBS, 삭제된 data를 포함하는 user
    datafile을 제외한 모든 datafile은 모두 offline drop시키고,
    database를 open시킨다.
    os>svrmgrl
    SVRMGR> connect internal
    SVRMGR> startup mount;
    SVRMGR> alter database datafile '/oracle/oradata/temp01.dbf'
    offline drop; (윗줄과 이어짐)
    SVRMGR> alter database datafile '/oracle/oradata/userdata05.dbf'
    offline drop; (윗줄과 이어짐)
    ... 이와 같이 resotre하지 않은 datafile을 모두 offline drop시킨다.
    SVRMGR> alter database open;
    (4) 원하는 data가 제대로 조회되는지 확인한 후 필요한 table을 export
    한다.
    예를 들어 scott user의 dept table을 복구하고자 한 것이었다면
    다음과 같이 export를 받는다.
    os>exp scott/tiger file=dept.dmp tables=dept log=deptlog1
    (5) exprot받아낸 database는 shutdown하여 없애고 (1)번에서 받아둔
    현재 상태의 backup을 restore한다.
    shutdown은 immediate나 abort 모두 가능하며, shutdown후 restore한
    SYSTEM, RBS, user datafile모두 삭제하고, 사용하던 controlfiles,
    redo log files도 모두 삭제한다.
    그리고 (1)에서 mv나 tar로 옮겨놓은 모든 datafiles, controlfiles,
    redo log files를 원래의 directory와 이름으로 위치시킨다.
    (6) db를 startup시킨 후 (4)에서 받은 export내용을 import시킨다.
    os>imp scott/tiger file=dept.dmp tables=dept ignore=y commit=y
    log=deptlog2 (윗줄과 이어짐)
    (7) 원하는 data가 제대로 조회되는지 확인한다.

  • HT201210 I attempted to update my IPAD to IOS6 and it failed, following this restore keeps failing with error stating recovery failed.  I am stuck.  I have reset several times and retried recovery mode only to get the same endless loop of trouble.  Please

    I tried to update my IPAD to IOS6 and it failed following this recover mode will not wortk either.  I have reset multiple times and tried recovery again only to get the same error stating that recovery failed.  The error states unknown recovery error.  My system OS is up to date with OS X 10.7.5.  Itunes is up to date with 10.7 (21).

    Try:
    - Powering off and then back on your router.
    - The Additional Information paragraph of
    iTunes for Windows: iTunes cannot contact the iPhone, iPad, or iPod software update server
    - Change the DNS to either Google's or Open DNS servers
    Public DNS — Google Developers
    OpenDNS IP Addresses
    - Try on another computer/network
    - Wait if it is an Apple problem

  • Part Time, Contract Based, and Full Time Positions available for LabVIEW Developers

    Mindready (www.mindready.com) is looking for flexible, hard working individuals to fill part time, contract based, and full-time/permanent jobs in LabVIEW development positions. We have immediate needs for contract labor in Dallas, TX; NY; Huntsville, AL and Austin, TX, as well as other locations.  US Citizen and Security Clearance required on some projects.   Mindready is a certified National Instruments Alliance Partner with facilities in Montreal, Austin, TX and (Radical Systems, Inc. – a mindready company) Huntsville, AL (www.radicalsystems.com).
    The duties of the positions include:
    • On and off-site LabVIEW development work.  May involve TestStand, instrumentation such as PXI and stand alone instruments, DAQ, Motion, Vision, etc.)
    • Willingness to travel for periods as short as 2-3 days, to as long as 6 months.  (Ideal candidate would be local to any long assignment)
    • Integrate into customer’s development team to design and modify new/existing LabVIEW applications. 
    The ideal candidate would possess the following skills & qualifications:
    • Intermediate-to-advanced knowledge of LabVIEW (a pre-employment test is required)
    • Broad technical knowledge is a plus, we serve a wide range of application areas
    • Excellent writing, communication (English), time-management, and interpersonal skills.
    • Ability to travel for on-site work at customer facilities for jobs as short as 1 week, possibly as long as 6 months.
    • Discipline and organization with respect to software development and maintenance.
    • Engineering, Technical or Computer Science degree or appropriate experience
    • Certification is not required but would be beneficial
    Pay is commensurate with skills and qualifications of the applicant.  Compensation will include a competitive hourly rate.

    Hi
    I completed my M.S in electronics engineering and working with GE in INDIA since June 2005. I have total 20 months of experience with LabVIEW and have the follwoing skills.
    Intermediate-to-advanced knowledge of LabVIEW.
    Ability to analyze empirical data against theoretical predictions to enhance and improve mathematical model of system.
    Familiarity with data acquisition concepts and hardware.
    Ability to work both alone and with colleagues to solve problems and to weigh the merits of differing approaches
    you can reach me at [email protected]
    Thanks & Regards
    Anil Punnam

  • Oracle (SQL) support for Temporal / time period based data

    Beyond standard SQL (DATE type etc. and <,>, LEAST, GREATEST, etc.) does Oracle offer anything to help handle time period based data? E.g. overlapping periods, joins when gaps in time periods from 2+ tables, period contiguity checks, etc. I've developed various SQL query techniques, but they're all rather cumbersome using standard SQL.
    Oracle Spatial offers geo-location support - is there anything similar for temporal query support?
    Any good books / docs on the subject?

    Check out Workspace manager for limited out of the box temporal support.
    You may also want to have a read through this series of articles about temporal database systems. They aren't Oracle specific, but may help you with your temporal system design.

  • Fix on months in time dim based on txt measure value

    Hi All,
    We have two text measures startmonth and endmonth, how can we fix to the time dimension based on the values of these text measures? e.g. fix (Mar:Dec)
    Thanks,
    James

    Hi James
    I am sorry, sounds like you may need to go on some Essbase training. As I said you CANNOT FIX on data that is input.
    You need to FIX on ALL period members by using something like @RELATIVE(YearTotal,0), then in your rule write the IF statement so that data is only calculated when the period you are in (The FIX on ALL periods will cycle through all periods) is between the values input by the user (i.e the Start Month and End month values).
    An example below is for say a depreciation calculation.
    ******** "SYS_MONTH" is a member that places VALUES against each period member so that you can compare and match against values that are input i.e like VLOOKUP in Excel, so Jan = 1, Feb=2 ...*************************
    FIX(FY13, @RELATIVE("Product",0),@RELATIVE("YearTotal",0)) I don't know you other dimensions that you are trying to calculate against so you will need to add them
    "Depreciation"(
                          IF("Start_Month"->"Input_period"->"Input_Year"->"Input_product" <= "SYS_MONTH" AND "End_Month"->"Input_period"->"Input_Year"->"Input_product" >= "SYS_MONTH")
                    "Depreciation" = xxxxxxxxxx Code to calculate deprecation ;
                        ELSE
                    "Depreciation" = #missing;
                        ENDIF)
    ENDFIX
    Imaging you are in a spread sheet with Jan, Feb, Mar across the top and in the far left column you have the start and end month inputs. The calculation will go from left to right and IF the period its calculating i.e the SYS_MONTH member is between the start month and the end month (the 4 and the 11 below) then depreciation will be calculated, if not then #missing, or you can choose not to calculate.
    Input_Period
    Jan
    Feb
    Mar
    Apr
    May
    Jun
    Jul
    Aug
    Sep
    Oct
    Nov
    Dec
    SYS_MONTH
    #missing
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Start_Month
    4
    End_Month
    11
    Depreciation
    #missing
    #missing
    #missing
    #missing
    x
    x
    x
    x
    x
    x
    x
    x
    #missing

  • UCCX 7 (SR4) - real time reporting based on option choosed

    hello,
    i would like to extract real time information on wich option the client choosed on my uccx7 script. I know where to get in the database some info from the queues (Summary Tables), and i would like to make some custom real time reporting based on wich option was choosed to know how many callers choosed the voicemail option (so the call won't show up as abandoned).
    Is there any way to get real time info from a custom variable in real time? in wich table?
    thank,
    met.

    IVR selections are not recorded within the CCX databases. You would need to save this to an external database and report from there. Your only method of capturing this within db_cra would be to store a value into an enterprise data variable which can be seen on historical reports.
    Also, the only tables that are "real time" are those identified as such: RtCSQsSummary and RtICDStatistics for use by wallboard applications.

  • NullPointerExceotion on Timer.cancel

    Hi everyone!
    I'm a bit messed up with a rebellious timer in my program.
    It is supposed to measure a timeout between a messege sent by a server and a response from a client. Everything runs in UDP.
    So, the server sends a keepalive message periodically by executing this method (called from another timerTask):
    public void sendKeepalive() {
              Message message = new Message("KPA","",this, this);         // Message is a class used for wrapping messages in the server
              tx(message);                                                                       // Sends a message over a UDP socket
              waitForACK = new Timer();                                           
              waitForACK.schedule(new WaitForACKTask(this), keepaliveTimeout);
    }AFAIK, this code works fine, because the timer task works fine, and it does diisconnect the client once the time is up. This is the code to WaitForACKTask:
    public class waitForACKTask extends TimerTask {
         private Client client;                            // Client is a class that deals with one client (it is part of the server; ie: the server has one Client class per connected client)
         public WaitForACKTask(Client client){
              this.client = client;
         public void run(){
              client.disconnect();    //deletes the user from the server list and notifies it that it has been disconnected
    }Again, this seems to work fine.
    Now, the problem comes when the client answers the petition. It sends an "ACK" message, wich is processed as follows:
         public void process(Message message) {
              if (message.returnType().equals("ACK")){              
                   System.out.println("ACK received");                  // I have tested that it does recognize the type of the message correctly
                   waitForACK.cancel();                                       // This is the line where NullPointerException is launched
              } else if (message.returnType().equals("DIS")){
                   disconnect();
              else {
                   control.queue(message);                 
         }So, here is where the code fails; on waitForACK.cancel():
    java.lang.NullPointerException
         at chatServer.Client.process(Client.java:72)
         at chatServer.ListenClient.run(ListenClient.java:29)After that, te timer simply keeps on counting (as if no ACK has been received) and disconnects the client after timeout.
    I've looked up in the java documentation and Timer.cancel() is not supposed to launch any exceptions.
    Thank's in advance!

    Just figured it out by myself! I had tested everything with a fake client (that is, me writing the protocol messages on a dumb client made just by a window and a socket), and I saw it didn't fail. So it turns out that the ACK was received before the timer had had time to be created. It didn't fail when I was the client, because I was much slower. So everything is fixed by changing the order in the code of sendKeepAlive:
    public void sendKeepalive() {
                    waitForACK = new Timer();                                           
              waitForACK.schedule(new WaitForACKTask(this), keepaliveTimeout);
              Message message = new Message("KPA","",this, this);       
              tx(message);                                                                   
    }Edited by: fenom_ on May 16, 2009 8:50 AM

  • Cancel media recovery

    Hai all,
    In note id , 232240.1 - Performing Switchover in a Data Guard Configuration
    Convert the physical standby to the new primary:
    If you are on verion 9.0.1 then you should first cancel managed recovery prior
    to issuing the above command. If you are on 9.2.0 and have started managed
    recovery with the "through all switchover" clause then you should also cancel
    managed recovery before issuing the above command.
    also cancel
    managed recovery before issuing the above command.>>>>>>>>
    How can I cancel this ?
    Kai

    ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL;
    sbs

  • Nearest time zones based on user time zone

    Hi,
    In my application, user accesses the applet in the browser and based on the user time zone I need to display the list of available server which are near to his time zone.
    Please provide me some hints on how to sort the time zones based on the time zone offset.
    Thanks
    Aravind

    Hi,
    In my application, user accesses the applet in the browser and based on the user time zone I need to display the list of available server which are near to his time zone.
    Please provide me some hints on how to sort the time zones based on the time zone offset.
    Thanks
    Aravind

  • Look-up java time zone based on location?

    I have a test app where I can assign a java timezone and return time info - However, I don't see a way to look-up a java time zone based on location (combination of city/province/state/country).
    Is this possible?

    Has any one found a way to lookup a timezone based on a city/region in the world? So one could be able to type any city and state/province and country combination and get the corresponding timezone for that region. Is there a place where one can buy this data?
    Thank you

  • To get time differnce based on factory calendar

    Dear All,
    We have Creation date, time, End date and time. We need to find out the time difference  based on factory calendar ..ie need to exculde weekends, holidays.
    Is there any FM to get this? Please adivse procedure how to get.
    Thanks
    Konda Reddy

    Try Something like following
    PARAMETERS : P_BEGDA TYPE BEGDA,
                 P_BTIME TYPE SYUZEIT,
                 P_ENDDA TYPE BEGDA,
                 P_ETIME TYPE SYUZEIT.
    DATA LV_DURATION TYPE F.
    CALL FUNCTION 'DURATION_DETERMINE'
      EXPORTING
        UNIT                       = 'H' "Hours
        FACTORY_CALENDAR           = 'GR'
      IMPORTING
        DURATION                   = LV_DURATION
      CHANGING
        START_DATE                 = P_BEGDA
        START_TIME                 = P_BTIME
        END_DATE                   = P_ENDDA
        END_TIME                   = P_ETIME
      EXCEPTIONS
        FACTORY_CALENDAR_NOT_FOUND = 1
        DATE_OUT_OF_CALENDAR_RANGE = 2
        DATE_NOT_VALID             = 3
        UNIT_CONVERSION_ERROR      = 4
        SI_UNIT_MISSING            = 5
        PARAMETERS_NOT_VALID       = 6
        OTHERS                     = 7.
    IF SY-SUBRC <> 0.
    * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    *         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    WRITE LV_DURATION.

  • Display of Time Stamps based on the TimeZones

    Hi experts,
    I am new to Internationalization topic and wants to
    display Time Stamps based on the TimeZones.
    For example, If I choose Asia/Calcutta as my TimeZone
    it is displaying "Mon Aug 28 11:02:47 GMT+5:30 2001" as the TimeStamp.(I am in this TimeZone,which is default to me.)
    Similarly If I select any other TimeZone, it should display the TimeStamp in the same format but the values in the Time Stamp should reflect the selected TimeZone.
    I will be thankful to you if u could help me to get the solution.
    Srinivas.

    Hi Srinivas,
    It comes down to some tinkering in the java.util.* package.
    First off, you'll need to familiarise yourself with the Calendar class. This basically replaces the old Date class from old versions of the JDK, and allows you to hold certain dates and times. You can get one by calling Calendar.getInstance();
    You can then set a TimeZone on this Calendar by calling myCalendar.setTimeZone().
    To create a basic TimeZone, have a look at the SimpleTimeZone class - it'll allow you to set the hours ahead or behind GMT, as well as a start date for this time zone, and even gives the ability to add daylight savings time.
    From there, the time zone you add to the Calendar should produce the correct dates for you. Changing the time zone within a Calendar that already holds a date and time should alter that date and time accordingly.
    If you want to get really clever, have a look at the Locale class - it allows you to specify a default language and country. You can then apply this to your Calendar by calling Calendar.getInstance(Locale myLocale) instead of the version above. If you have the international JDK (i.e. the one with i18n.jar onboard), Calendar should be clever enough to format the dates nicely for you if you use a fairly well-known Locale (such as American English and so on).
    A Locale will also let you format dates in a location-specific way if you want to output them to the screen later on down the track. A quick look at SimpleDateFormat and some of the other DateFormat classes should tell you what you need to know.
    If you can't quite get your head around any of the above, feel free to reply again!
    Martin Hughes

  • Help me  My iPhone is in recovery mode and I do not see it on my laptop and on iTunes. Moreover, I can not turn it off and when I try it comes up all the time in the recovery mode.

    help me
    My iPhone is in recovery mode and I do not see it on my laptop and on iTunes. Moreover, I can not turn it off and when I try it comes up all the time in the recovery mode.

    Hey Yan Heng,
    Thanks for the question. It sounds like your iOS device is not recognized in iTunes for Windows, while in recovery mode. The following resource may help to resolve your issue. While you should run through each step, the specific information related to your symptom is outlined in Step 5 (If the device is not recognized while in Recovery Mode).
    iOS: Device not recognized in iTunes for Windows
    http://support.apple.com/kb/TS1538
    Thanks,
    Matt M.

Maybe you are looking for