溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Oracle 12c 備份與恢復中resetlogs的概念及用法是什么

發(fā)布時間:2021-11-30 15:04:02 來源:億速云 閱讀:782 作者:柒染 欄目:關系型數(shù)據(jù)庫

這篇文章給大家介紹Oracle 12c 備份與恢復中resetlogs的概念及用法是什么,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

備份與恢復是一門重要的功課,其中一些基礎知識和用法會隨著實戰(zhàn)次數(shù)的增加而理解的越來越深刻。今天通過一個最簡單的例子來體會一下resetlogs。

resetlogs: 重置online redolog。當數(shù)據(jù)庫實例啟動時需要具有redolog,如果該文件不可用或者不存在了,可以使用resetlogs開啟數(shù)據(jù)庫。在開啟的過程中oracle會根據(jù)控制文件中的redo路徑創(chuàng)建全新的redolog。在不完全恢復或者OGG部署時經(jīng)常會用到resetlogs方式開啟數(shù)據(jù)庫。原因就是當前的redo不可用,或者不能用。

實驗步驟如下:

1, 一致性停庫

2, 手工刪除redolog

3, 啟動數(shù)據(jù)庫到mount狀態(tài)

4, resetlogs方式打開數(shù)據(jù)庫

1. 一致性停庫

[oracle@snow ~]$ sqlplus / as sysdba

SQL*Plus: Release 12.1.0.1.0 Production on Sat May 2 04:29:37 2015

Copyright (c) 1982, 2013, Oracle.  All rights reserved.

Connected to:

Oracle Database 12c Enterprise Edition Release 12.1.0.1.0 - 64bit Production

With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options

確認數(shù)據(jù)文件、日志文聯(lián)、控制文件、臨時文件的物理位置

SYS@cdb > select name from v$datafile

  2  union select name from v$controlfile

  3  union select member from v$logfile

  4  union select name from v$tempfile;

NAME

--------------------------------------------------------------------------------

/home/oracle/dbfile/cdb/control01.ctl

/home/oracle/dbfile/cdb/control02.ctl

/home/oracle/dbfile/cdb/pdb1/SAMPLE_SCHEMA_users01.dbf

/home/oracle/dbfile/cdb/pdb1/example01.dbf

/home/oracle/dbfile/cdb/pdb1/pdb1_temp01.dbf

/home/oracle/dbfile/cdb/pdb1/sysaux01.dbf

/home/oracle/dbfile/cdb/pdb1/system01.dbf

/home/oracle/dbfile/cdb/pdbseed/pdbseed_temp01.dbf

/home/oracle/dbfile/cdb/pdbseed/sysaux01.dbf

/home/oracle/dbfile/cdb/pdbseed/system01.dbf

/home/oracle/dbfile/cdb/redo01.log

NAME

--------------------------------------------------------------------------------

/home/oracle/dbfile/cdb/redo02.log

/home/oracle/dbfile/cdb/redo03.log

/home/oracle/dbfile/cdb/sysaux01.dbf

/home/oracle/dbfile/cdb/system01.dbf

/home/oracle/dbfile/cdb/temp01.dbf

/home/oracle/dbfile/cdb/undotbs01.dbf

/home/oracle/dbfile/cdb/users01.dbf

18 rows selected.

一致性停止數(shù)據(jù)庫,確保redolog中的事務已經(jīng)寫入磁盤

SYS@cdb > shutdown immediate;

Database closed.

Database dismounted.

ORACLE instance shut down.

SYS@cdb > 

2. 手工刪除redolog

[oracle@snow ~]$ cd dbfile/cdb/

[oracle@snow cdb]$ ll

total 2135948

-rw-r----- 1 oracle oinstall  17973248 May  2 04:30 control01.ctl

-rw-r----- 1 oracle oinstall  17973248 May  2 04:30 control02.ctl

drwxr-x--- 2 oracle oinstall      4096 May  2 03:07 pdb1

drwxr-x--- 2 oracle oinstall      4096 May  2 03:01 pdbseed

-rw-r----- 1 oracle oinstall  52429312 May  2 04:30 redo01.log

-rw-r----- 1 oracle oinstall  52429312 May  2 04:29 redo02.log

-rw-r----- 1 oracle oinstall  52429312 May  2 04:29 redo03.log

-rw-r----- 1 oracle oinstall 796925952 May  2 04:30 sysaux01.dbf

-rw-r----- 1 oracle oinstall 817897472 May  2 04:30 system01.dbf

-rw-r----- 1 oracle oinstall  92282880 May  2 04:29 temp01.dbf

-rw-r----- 1 oracle oinstall 372252672 May  2 04:30 undotbs01.dbf

-rw-r----- 1 oracle oinstall   5251072 May  2 04:30 users01.dbf

[oracle@snow cdb]$ rm -rf redo*.log

[oracle@snow cdb]$ ll

total 1982336

-rw-r----- 1 oracle oinstall  17973248 May  2 04:30 control01.ctl

-rw-r----- 1 oracle oinstall  17973248 May  2 04:30 control02.ctl

drwxr-x--- 2 oracle oinstall      4096 May  2 03:07 pdb1

drwxr-x--- 2 oracle oinstall      4096 May  2 03:01 pdbseed

-rw-r----- 1 oracle oinstall 796925952 May  2 04:30 sysaux01.dbf

-rw-r----- 1 oracle oinstall 817897472 May  2 04:30 system01.dbf

-rw-r----- 1 oracle oinstall  92282880 May  2 04:29 temp01.dbf

-rw-r----- 1 oracle oinstall 372252672 May  2 04:30 undotbs01.dbf

-rw-r----- 1 oracle oinstall   5251072 May  2 04:30 users01.dbf

3. 啟動數(shù)據(jù)庫到mount狀態(tài)

[oracle@snow cdb]$ sqlplus / as sysdba

SQL*Plus: Release 12.1.0.1.0 Production on Sat May 2 04:53:23 2015

Copyright (c) 1982, 2013, Oracle.  All rights reserved.

Connected to an idle instance.

SYS@cdb > startup mount;

ORACLE instance started.

Total System Global Area 1503199232 bytes

Fixed Size                  2288584 bytes

Variable Size             973079608 bytes

Database Buffers          520093696 bytes

Redo Buffers                7737344 bytes

Database mounted.

4.restlogs方式打開數(shù)據(jù)庫

注意:執(zhí)行alter database open resetlog時會提示“RESETLOGS”選項需要在不完全恢復后使用,按照要求我們執(zhí)行一次recover database until cancel, 再次執(zhí)行alter database open resetlog就可以成功打開數(shù)據(jù)庫并重新創(chuàng)建了redolog。

如果在數(shù)據(jù)庫處于mount狀態(tài)時先執(zhí)行recover,再執(zhí)行resetlogs就不會報錯。

SYS@cdb > alter database open resetlogs;

alter database open resetlogs

*

ERROR at line 1:

ORA-01139: RESETLOGS option only valid after an incomplete database recovery

SYS@cdb > recover database until cancel;

Media recovery complete.

SYS@cdb > alter database open resetlogs;

Database altered.

如果在數(shù)據(jù)庫處于mount狀態(tài)時先執(zhí)行recover,再執(zhí)行resetlogs就不會報錯。

實例啟動后,看到新的redolog被創(chuàng)建在之前的位置

SYS@cdb > exit

Disconnected from Oracle Database 12c Enterprise Edition Release 12.1.0.1.0 - 64bit Production

With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options

[oracle@snow cdb]$ ll

total 2135948

-rw-r----- 1 oracle oinstall  17973248 May  2 04:54 control01.ctl

-rw-r----- 1 oracle oinstall  17973248 May  2 04:54 control02.ctl

drwxr-x--- 2 oracle oinstall      4096 May  2 03:07 pdb1

drwxr-x--- 2 oracle oinstall      4096 May  2 03:01 pdbseed

-rw-r----- 1 oracle oinstall  52429312 May  2 04:54 redo01.log

-rw-r----- 1 oracle oinstall  52429312 May  2 04:54 redo02.log

-rw-r----- 1 oracle oinstall  52429312 May  2 04:54 redo03.log

-rw-r----- 1 oracle oinstall 796925952 May  2 04:54 sysaux01.dbf

-rw-r----- 1 oracle oinstall 817897472 May  2 04:54 system01.dbf

-rw-r----- 1 oracle oinstall  92282880 May  2 04:54 temp01.dbf

-rw-r----- 1 oracle oinstall 372252672 May  2 04:54 undotbs01.dbf

-rw-r----- 1 oracle oinstall   5251072 May  2 04:54 users01.dbf

很多初學者在第一次接觸resetlogs選項都是在一些比較復雜的恢復場景時才遇到的。希望這個初級的小實驗可以幫助你理解resetlogs。

關于Oracle 12c 備份與恢復中resetlogs的概念及用法是什么就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內容。

AI