自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Oracle 數(shù)據(jù)庫災(zāi)難性環(huán)境下恢復(fù)實(shí)例

數(shù)據(jù)庫 Oracle
所謂災(zāi)難性是指磁盤故障或其它原因?qū)е聰?shù)據(jù)庫相關(guān)的文件全部丟失或損壞無法進(jìn)行修復(fù),必須通過備份進(jìn)行還原恢復(fù);以下實(shí)驗(yàn)?zāi)M丟失所有數(shù)據(jù)庫文件,然后通過備份進(jìn)行還原恢復(fù)。

所謂災(zāi)難性是指磁盤故障或其它原因?qū)е聰?shù)據(jù)庫相關(guān)的文件全部丟失或損壞無法進(jìn)行修復(fù),必須通過備份進(jìn)行還原恢復(fù);以下實(shí)驗(yàn)?zāi)M丟失所有數(shù)據(jù)庫文件,然后通過備份進(jìn)行還原恢復(fù)。

版本和數(shù)據(jù)庫文件信息

  1. Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production 
  2. PL/SQL Release 11.2.0.3.0 - Production 
  3. CORE    11.2.0.3.0      Production 
  4. TNS for Linux: Version 11.2.0.3.0 - Production 
  5. NLSRTL Version 11.2.0.3.0 - Production 
  6.  
  7. SQL> column name format a50 
  8. SQL> select file#,status,name from v$datafile; 
  9.  
  10.     FILE# STATUS  NAME 
  11. ---------- ------- -------------------------------------------------- 
  12.          1 SYSTEM  /u01/oradata/sydb/system01.dbf 
  13.          2 ONLINE  /u01/oradata/sydb/sysaux01.dbf 
  14.          3 ONLINE  /u01/oradata/sydb/undotbs01.dbf 
  15.          4 ONLINE  /u01/oradata/sydb/users01.dbf 
  16.          5 ONLINE  /u01/oradata/sydb/tbs01.dbf 
  17.  
  18. SQL> column member format a50 
  19. SQL> select * from v$Logfile; 
  20.  
  21.     GROUP# STATUS  TYPE    MEMBER                                             IS_ 
  22. ---------- ------- ------- -------------------------------------------------- --- 
  23.          1         ONLINE  /u01/oradata/sydb/REDO01.LOG                       NO 
  24.          2         ONLINE  /u01/oradata/sydb/REDO02.LOG                       NO 
  25.  
  26. SQL> select * from v$controlfile; 
  27.  
  28. STATUS  NAME                                               IS_ BLOCK_SIZE FILE_SIZE_BLKS 
  29. ------- -------------------------------------------------- --- ---------- -------------- 
  30.         /u01/oradata/sydb/control01.ctl                    NO       16384            668 

備份數(shù)據(jù)庫

注意:備份數(shù)據(jù)庫時(shí)如果配置了 configure exclude for tablespace tbsname 的表空間是不會(huì)進(jìn)行備份的,恢復(fù)表空間備份configure exclude for tablespace tbsname clear;如果沒有設(shè)置自動(dòng)備份控制文件和參數(shù)文件,要在備份腳本最后手動(dòng)添加備份控制文件腳本;設(shè)置自動(dòng)備份控制文件和參數(shù)文件:

  1. CONFIGURE CONTROLFILE AUTOBACKUP On;  
  2. CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/u01/backup/%F_%d_controlfile.bkp';  

控制文件名格式必須包含%F,%F的格式為:c-IIIIIIIIII-YYYYMMDD-QQ,IIIIIIIIII(10位)代表DBID發(fā)生災(zāi)難時(shí)可以通過它知道數(shù)據(jù)庫ID,YYYYMMDD代表自動(dòng)備份時(shí)的timestamp,QQ代表是十六進(jìn)制的序列號(hào),起始值為:00,最大值為:FF。 開始備份數(shù)據(jù)

  1.  run 
  2.  { 
  3.  allocate channel dev type disk; 
  4.  allocate channel dev2 type disk; 
  5.  backup incremental level 0 database plus archivelog delete input 
  6.  tag 'sydb_incr_level0' 
  7.  format '/u01/backup/%d_%s_%U'
  8.  release channel dev; 
  9.  release channel dev2; 
  10.  } 
  11.  
  12. allocated channel: dev 
  13. channel dev: SID=181 device type=DISK 
  14.  
  15. allocated channel: dev2 
  16. channel dev2: SID=18 device type=DISK 
  17.  
  18.  
  19. Starting backup at 29-MAY-15 
  20. current log archived 
  21. channel dev: starting archived log backup set 
  22. channel dev: specifying archived log(s) in backup set 
  23. input archived log thread=1 sequence=17 RECID=1 STAMP=880994007 
  24. channel dev: starting piece 1 at 29-MAY-15 
  25. channel dev2: starting archived log backup set 
  26. channel dev2: specifying archived log(s) in backup set 
  27. input archived log thread=1 sequence=18 RECID=2 STAMP=880994016 
  28. input archived log thread=1 sequence=19 RECID=3 STAMP=880994311 
  29. channel dev2: starting piece 1 at 29-MAY-15 
  30. channel dev: finished piece 1 at 29-MAY-15 
  31. piece handle=/u01/backup/SYDB_1_01q85q07_1_1 tag=SYDB_INCR_LEVEL0 comment=NONE 
  32. channel dev: backup set complete, elapsed time: 00:00:07 
  33. channel dev: deleting archived log(s) 
  34. archived log file name=/u01/app/product/11.2.3/db_1/dbs/arch1_17_880905808.dbf RECID=1 STAMP=880994007 
  35. channel dev2: finished piece 1 at 29-MAY-15 
  36. piece handle=/u01/backup/SYDB_2_02q85q07_1_1 tag=SYDB_INCR_LEVEL0 comment=NONE 
  37. channel dev2: backup set complete, elapsed time: 00:00:08 
  38. channel dev2: deleting archived log(s) 
  39. archived log file name=/u01/app/product/11.2.3/db_1/dbs/arch1_18_880905808.dbf RECID=2 STAMP=880994016 
  40. archived log file name=/u01/app/product/11.2.3/db_1/dbs/arch1_19_880905808.dbf RECID=3 STAMP=880994311 
  41. Finished backup at 29-MAY-15 
  42.  
  43. Starting backup at 29-MAY-15 
  44. channel dev: starting incremental level 0 datafile backup set 
  45. channel dev: specifying datafile(s) in backup set 
  46. input datafile file number=00001 name=/u01/oradata/sydb/system01.dbf 
  47. input datafile file number=00004 name=/u01/oradata/sydb/users01.dbf 
  48. input datafile file number=00005 name=/u01/oradata/sydb/tbs01.dbf 
  49. channel dev: starting piece 1 at 29-MAY-15 
  50. channel dev2: starting incremental level 0 datafile backup set 
  51. channel dev2: specifying datafile(s) in backup set 
  52. input datafile file number=00003 name=/u01/oradata/sydb/undotbs01.dbf 
  53. input datafile file number=00002 name=/u01/oradata/sydb/sysaux01.dbf 
  54. channel dev2: starting piece 1 at 29-MAY-15 
  55. channel dev: finished piece 1 at 29-MAY-15 
  56. piece handle=/u01/app/product/11.2.3/db_1/dbs/03q85q0f_1_1 tag=TAG20150529T163839 comment=NONE 
  57. channel dev: backup set complete, elapsed time: 00:00:35 
  58. channel dev2: finished piece 1 at 29-MAY-15 
  59. piece handle=/u01/app/product/11.2.3/db_1/dbs/04q85q0f_1_1 tag=TAG20150529T163839 comment=NONE 
  60. channel dev2: backup set complete, elapsed time: 00:00:35 
  61. Finished backup at 29-MAY-15 
  62.  
  63. Starting backup at 29-MAY-15 
  64. current log archived 
  65. channel dev: starting archived log backup set 
  66. channel dev: specifying archived log(s) in backup set 
  67. input archived log thread=1 sequence=20 RECID=4 STAMP=880994354 
  68. channel dev: starting piece 1 at 29-MAY-15 
  69. channel dev: finished piece 1 at 29-MAY-15 
  70. piece handle=/u01/backup/SYDB_5_05q85q1i_1_1 tag=SYDB_INCR_LEVEL0 comment=NONE 
  71. channel dev: backup set complete, elapsed time: 00:00:01 
  72. channel dev: deleting archived log(s) 
  73. archived log file name=/u01/app/product/11.2.3/db_1/dbs/arch1_20_880905808.dbf RECID=4 STAMP=880994354 
  74. Finished backup at 29-MAY-15 
  75.  
  76. Starting Control File and SPFILE Autobackup at 29-MAY-15 
  77. piece handle=/u01/backup/c-3634177744-20150529-00_control.bkp comment=NONE 
  78. Finished Control File and SPFILE Autobackup at 29-MAY-15 
  79.  
  80. released channel: dev 
  81.  
  82. released channel: dev2 

通過備份日志可以知道哪些數(shù)據(jù)文件被備份,哪些沒有被備份或沒有備份成功,比如:發(fā)現(xiàn)較多數(shù)據(jù)塊損壞、表空間被排除備份(exclude)、表空間被skip;關(guān)注這些信息非常重要,因?yàn)橐坏?zāi)難發(fā)生,它意味著你的數(shù)據(jù)庫恢復(fù)成功率,也有助于對(duì)備份腳本的優(yōu)化和調(diào)整。

#p#

驗(yàn)證數(shù)據(jù)庫可恢復(fù)性

驗(yàn)證可恢復(fù)性可以發(fā)現(xiàn)一些忽略的問題,及時(shí)處理;

  1. rm /u01/oradata/sydb/system01.dbf 
  2. rm /u01/oradata/sydb/sysaux01.dbf 
  3. rm /u01/oradata/sydb/undotbs01.dbf 
  4. rm /u01/oradata/sydb/tbs01.dbf 
  5. rm /u01/oradata/sydb/control01.ctl 
  6. rm /u01/oradata/sydb/REDO01.LOG  
  7. rm /u01/oradata/sydb/REDO02.LOG  
  8. rm /u01/app/product/11.2.3/db_1/dbs/spfilesydb.ora 

數(shù)據(jù)庫恢復(fù)

恢復(fù)參數(shù)文件和控制文件

數(shù)據(jù)庫啟動(dòng)時(shí)會(huì)先查找spfile,然后在找spfile.ora,再找文件initpfile,如果這些文件都沒有找到報(bào)錯(cuò)并停止啟動(dòng);so 先創(chuàng)建一個(gè)基本的init pfile;

  1. $ vim /u01/app/product/11.2.3/db_1/dbs/initsydb.ora 
  2. db_name='sydb' 
  3. memory_target=200m 
  4. control_files='/u01/oradata/sydb/control01.ctl' 
  5. db_block_size=32768 

如果你的數(shù)據(jù)塊大小為非8kb,你又想在恢復(fù)控制文件后完成其它操作,如mount控制文件,則你必須在init 文件中指定數(shù)據(jù)塊大小;

  1. SQL> startup nomount 
  2. ORACLE instance started. 
  3.  
  4. Total System Global Area  208769024 bytes 
  5. Fixed Size                  2226936 bytes 
  6. Variable Size             109053192 bytes 
  7. Database Buffers           92274688 bytes 
  8. Redo Buffers                5214208 bytes 
  9.  
  10. $ rman target / 
  11. RMAN> restore spfile from '/u01/backup/c-3634177744-20150529-00_control.bkp'
  12.  
  13. Starting restore at 29-MAY-15 
  14. using channel ORA_DISK_1 
  15.  
  16. channel ORA_DISK_1: restoring spfile from AUTOBACKUP /u01/backup/c-3634177744-20150529-00_control.bkp 
  17. channel ORA_DISK_1: SPFILE restore from AUTOBACKUP complete 
  18. Finished restore at 29-MAY-15 
  19.  
  20. RMAN> restore controlfile from '/u01/backup/c-3634177744-20150529-00_control.bkp'
  21.  
  22. Starting restore at 29-MAY-15 
  23. using channel ORA_DISK_1 
  24.  
  25. channel ORA_DISK_1: restoring control file 
  26. channel ORA_DISK_1: restore complete, elapsed time: 00:00:01 
  27. output file name=/u01/oradata/sydb/control01.ctl 
  28. Finished restore at 29-MAY-15 
  29. RMAN> alter database mount; 
  30.  
  31. database mounted 
  32. released channel: ORA_DISK_1 

查看備份文件和確定可恢復(fù)的最大歸檔日志序列

注:如果目錄名發(fā)生改變或文件發(fā)生位置移動(dòng),先使用 catalog start with '/dir' 將文件catalog;

  1. RMAN> list backup of database
  2.  
  3.  
  4. List of Backup Sets 
  5. =================== 
  6.  
  7.  
  8. BS Key  Type LV Size       Device Type Elapsed Time Completion Time 
  9. ------- ---- -- ---------- ----------- ------------ --------------- 
  10. 3       Incr 0  180.53M    DISK        00:00:29     29-MAY-15       
  11.         BP Key: 3   Status: AVAILABLE  Compressed: NO  Tag: TAG20150529T163839 
  12.         Piece Name: /u01/app/product/11.2.3/db_1/dbs/04q85q0f_1_1 
  13.   List of Datafiles in backup set 3 
  14.   File LV Type Ckp SCN    Ckp Time  Name 
  15.   ---- -- ---- ---------- --------- ---- 
  16.   2    0  Incr 436655     29-MAY-15 /u01/oradata/sydb/sysaux01.dbf 
  17.   3    0  Incr 436655     29-MAY-15 /u01/oradata/sydb/undotbs01.dbf 
  18.  
  19. BS Key  Type LV Size       Device Type Elapsed Time Completion Time 
  20. ------- ---- -- ---------- ----------- ------------ --------------- 
  21. 4       Incr 0  380.94M    DISK        00:00:29     29-MAY-15       
  22.         BP Key: 4   Status: AVAILABLE  Compressed: NO  Tag: TAG20150529T163839 
  23.         Piece Name: /u01/app/product/11.2.3/db_1/dbs/03q85q0f_1_1 
  24.   List of Datafiles in backup set 4 
  25.   File LV Type Ckp SCN    Ckp Time  Name 
  26.   ---- -- ---- ---------- --------- ---- 
  27.   1    0  Incr 436654     29-MAY-15 /u01/oradata/sydb/system01.dbf 
  28.   4    0  Incr 436654     29-MAY-15 /u01/oradata/sydb/users01.dbf 
  29.   5    0  Incr 436654     29-MAY-15 /u01/oradata/sydb/tbs01.dbf 
  30.  
  31. RMAN> list backup of archivelog all
  32.  
  33.  
  34. List of Backup Sets 
  35. =================== 
  36.  
  37.  
  38. BS Key  Size       Device Type Elapsed Time Completion Time 
  39. ------- ---------- ----------- ------------ --------------- 
  40. 1       45.49M     DISK        00:00:04     29-MAY-15       
  41.         BP Key: 1   Status: AVAILABLE  Compressed: NO  Tag: SYDB_INCR_LEVEL0 
  42.         Piece Name: /u01/backup/SYDB_1_01q85q07_1_1 
  43.  
  44.   List of Archived Logs in backup set 1 
  45.   Thrd Seq     Low SCN    Low Time  Next SCN   Next Time 
  46.   ---- ------- ---------- --------- ---------- --------- 
  47.   1    17      427739     29-MAY-15 436110     29-MAY-15 
  48.  
  49. BS Key  Size       Device Type Elapsed Time Completion Time 
  50. ------- ---------- ----------- ------------ --------------- 
  51. 2       43.37M     DISK        00:00:04     29-MAY-15       
  52.         BP Key: 2   Status: AVAILABLE  Compressed: NO  Tag: SYDB_INCR_LEVEL0 
  53.         Piece Name: /u01/backup/SYDB_2_02q85q07_1_1 
  54.  
  55.   List of Archived Logs in backup set 2 
  56.   Thrd Seq     Low SCN    Low Time  Next SCN   Next Time 
  57.   ---- ------- ---------- --------- ---------- --------- 
  58.   1    18      436110     29-MAY-15 436484     29-MAY-15 
  59.   1    19      436484     29-MAY-15 436643     29-MAY-15 
  60.  
  61. BS Key  Size       Device Type Elapsed Time Completion Time 
  62. ------- ---------- ----------- ------------ --------------- 
  63. 5       90.00K     DISK        00:00:00     29-MAY-15       
  64.         BP Key: 5   Status: AVAILABLE  Compressed: NO  Tag: SYDB_INCR_LEVEL0 
  65.         Piece Name: /u01/backup/SYDB_5_05q85q1i_1_1 
  66.  
  67.   List of Archived Logs in backup set 5 
  68.   Thrd Seq     Low SCN    Low Time  Next SCN   Next Time 
  69.   ---- ------- ---------- --------- ---------- --------- 
  70.   1    20      436643     29-MAY-15 436756     29-MAY-15 

#p#

從上面的信息中可以看出最大可恢復(fù)到的日志序列為20,恢復(fù)時(shí)設(shè)置until sequence 21,數(shù)據(jù)庫即可應(yīng)用所有的歸檔日志;

  1. RMAN> restore database until sequence 21; 
  2.  
  3. Starting restore at 29-MAY-15 
  4. using channel ORA_DISK_1 
  5.  
  6. channel ORA_DISK_1: starting datafile backup set restore 
  7. channel ORA_DISK_1: specifying datafile(s) to restore from backup set 
  8. channel ORA_DISK_1: restoring datafile 00001 to /u01/oradata/sydb/system01.dbf 
  9. channel ORA_DISK_1: restoring datafile 00004 to /u01/oradata/sydb/users01.dbf 
  10. channel ORA_DISK_1: restoring datafile 00005 to /u01/oradata/sydb/tbs01.dbf 
  11. channel ORA_DISK_1: reading from backup piece /u01/app/product/11.2.3/db_1/dbs/03q85q0f_1_1 
  12. channel ORA_DISK_1: piece handle=/u01/app/product/11.2.3/db_1/dbs/03q85q0f_1_1 tag=TAG20150529T163839 
  13. channel ORA_DISK_1: restored backup piece 1 
  14. channel ORA_DISK_1: restore complete, elapsed time: 00:00:25 
  15. channel ORA_DISK_1: starting datafile backup set restore 
  16. channel ORA_DISK_1: specifying datafile(s) to restore from backup set 
  17. channel ORA_DISK_1: restoring datafile 00002 to /u01/oradata/sydb/sysaux01.dbf 
  18. channel ORA_DISK_1: restoring datafile 00003 to /u01/oradata/sydb/undotbs01.dbf 
  19. channel ORA_DISK_1: reading from backup piece /u01/app/product/11.2.3/db_1/dbs/04q85q0f_1_1 
  20. channel ORA_DISK_1: piece handle=/u01/app/product/11.2.3/db_1/dbs/04q85q0f_1_1 tag=TAG20150529T163839 
  21. channel ORA_DISK_1: restored backup piece 1 
  22. channel ORA_DISK_1: restore complete, elapsed time: 00:00:35 
  23. Finished restore at 29-MAY-15 
  24.  
  25. RMAN> recover database until sequence 21; 
  26.  
  27. Starting recover at 29-MAY-15 
  28. using channel ORA_DISK_1 
  29.  
  30. starting media recovery 
  31.  
  32. channel ORA_DISK_1: starting archived log restore to default destination 
  33. channel ORA_DISK_1: restoring archived log 
  34. archived log thread=1 sequence=20 
  35. channel ORA_DISK_1: reading from backup piece /u01/backup/SYDB_5_05q85q1i_1_1 
  36. channel ORA_DISK_1: piece handle=/u01/backup/SYDB_5_05q85q1i_1_1 tag=SYDB_INCR_LEVEL0 
  37. channel ORA_DISK_1: restored backup piece 1 
  38. channel ORA_DISK_1: restore complete, elapsed time: 00:00:01 
  39. archived log file name=/u01/app/product/11.2.3/db_1/dbs/arch1_20_880905808.dbf thread=1 sequence=20 
  40. media recovery complete, elapsed time: 00:00:01 
  41. Finished recover at 29-MAY-15 

使用resetlogs 方式打開數(shù)據(jù)庫

  1. SYS@sydb>select file#,d.name as "FILE_NAME",t.name as "TABLESPACE_NAME",status,enabled,checkpoint_change#,checkpoint_time,(bytes/1024/1024)"BYTES_MB",blocks, 
  2.   2  (create_bytes/1024/1024)create_bytes_mb,block_size   
  3.   3  from v$datafile d left join v$tablespace t 
  4.   4  on d.ts#=t.ts#; 
  5.  
  6. FILE#   FILE_NAME TABLESPACE_NAME    STATUS  ENABLED  CHECKPOINT_CHANGE# CHECKPOIN  BYTES_MB  BLOCKS CREATE_BYTES_MB BLOCK_SIZE 
  7. ------------------------------ ------- ---------- ------------------ --------- ---------- ---------- --------------- ---------- 
  8. 1  /u01/oradata/sydb/system01.dbf  SYSTEM    SYSTEM  READ WRITE  436756      29-MAY-15   400.8125  12826   100     32768 
  9. 2  /u01/oradata/sydb/sysaux01.dbf  SYSAUX    ONLINE  READ WRITE 436756       29-MAY-15   227.6875 7286     100     32768 
  10. 3  /u01/oradata/sydb/undotbs01.dbf UNDOTBS01  ONLINE  READ WRITE 436756      29-MAY-15   310       9920    100    32768 
  11. 4  /u01/oradata/sydb/users01.dbf    USERS     ONLINE  READ WRITE 436756      29-MAY-15   100       3200    100     32768 
  12. 5  /u01/oradata/sydb/tbs01.dbf     TBS01      ONLINE  READ WRITE 436756      29-MAY-15   98       3136     10     32768 
  13.  
  14. Elapsed: 00:00:00.02 
  15. SYS@sydb>alter database open resetlogs; 
  16.  
  17. Database altered. 
  18.  
  19. Elapsed: 00:00:07.41 

總結(jié)

任何時(shí)候數(shù)據(jù)庫的還原和恢復(fù)因環(huán)境和錯(cuò)誤的不一而不同,認(rèn)真有效的閱讀文檔,理解工作原理,然后在加上重復(fù)的實(shí)驗(yàn)方能起到良好的效果,實(shí)驗(yàn)本身是動(dòng)手實(shí)踐的步驟,但同時(shí)也是理論實(shí)踐結(jié)合的強(qiáng)有效方式。

博文出處:http://www.cnblogs.com/lanston/archive/2015/05/30/db_disaster_recover.html

責(zé)任編輯:Ophira 來源: cnblogs
相關(guān)推薦

2011-04-12 15:44:08

Oracle數(shù)據(jù)庫

2014-12-04 10:05:18

2011-05-18 10:49:53

Oralce數(shù)據(jù)庫

2021-04-04 22:39:50

Ubiquiti數(shù)據(jù)泄漏黑客

2011-05-19 13:25:14

Oracle數(shù)據(jù)庫

2015-06-05 10:13:09

2011-03-29 10:47:49

ORACLE數(shù)據(jù)庫

2010-04-02 13:59:08

Oracle數(shù)據(jù)庫

2011-05-25 10:56:19

Oracle數(shù)據(jù)庫Unix環(huán)境優(yōu)化

2009-11-20 13:29:59

Oracle數(shù)據(jù)庫恢復(fù)

2011-02-28 13:31:17

Oracle數(shù)據(jù)庫

2011-05-26 09:36:07

Oracle數(shù)據(jù)庫Redo故障

2016-11-14 13:56:14

2022-11-03 13:47:26

云遷移云計(jì)算轉(zhuǎn)型

2009-04-03 10:54:49

Oracle備份恢復(fù)

2011-03-24 17:21:42

Oracle數(shù)據(jù)庫Redo故障

2010-08-25 10:16:48

DB2備份Linux

2023-09-21 09:31:24

MySQL數(shù)據(jù)庫

2009-04-10 00:42:36

數(shù)據(jù)庫歷史性備份

2011-05-11 13:25:57

Oracle數(shù)據(jù)庫后備恢復(fù)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)