日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

重建控制文件的案例(RESETLOGS模式和NORESETLOGS模式)

發(fā)布時間:2024/8/26 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 重建控制文件的案例(RESETLOGS模式和NORESETLOGS模式) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

案例分兩種情況:歸檔模式和非歸檔模式。在每種模式下采用兩種重建方式,即resetlogs和noresetlogs。

一、archived模式下:

SQL> archive log list
數(shù)據(jù)庫日志模式??????????? 存檔模式
自動存檔???????????? 啟用
存檔終點??????????? C:/oracle/oradata/arch/ora9i
最早的概要日志序列???? 1
下一個存檔日志序列?? 2
當前日志序列?????????? 2
SQL>

1、noresetlogs方式

注意:all online logs are available

將所有的控制文件刪除掉后執(zhí)行重建控制文件腳本,日志如下:

SQL> STARTUP NOMOUNT
ORACLE 例程已經(jīng)啟動。

Total System Global Area? 135864308 bytes
Fixed Size?????????????????? 454644 bytes
Variable Size???????????? 109051904 bytes
Database Buffers?????????? 25165824 bytes
Redo Buffers??????????????? 1191936 bytes
SQL> CREATE CONTROLFILE REUSE DATABASE "ORA9I" NORESETLOGS? ARCHIVELOG
? 2? --? SET STANDBY TO MAXIMIZE PERFORMANCE
? 3????? MAXLOGFILES 50
? 4????? MAXLOGMEMBERS 5
? 5????? MAXDATAFILES 100
? 6????? MAXINSTANCES 1
? 7????? MAXLOGHISTORY 226
? 8? LOGFILE
? 9??? GROUP 1 'C:/ORACLE/ORADATA/ORA9I/REDO01.LOG'? SIZE 10M,
?10??? GROUP 2 'C:/ORACLE/ORADATA/ORA9I/REDO02.LOG'? SIZE 10M,
?11??? GROUP 3 'C:/ORACLE/ORADATA/ORA9I/REDO03.LOG'? SIZE 10M
?12? -- STANDBY LOGFILE
?13? DATAFILE
?14??? 'C:/ORACLE/ORADATA/ORA9I/SYSTEM01.DBF',
?15??? 'C:/ORACLE/ORADATA/ORA9I/UNDOTBS01.DBF',
?16??? 'C:/ORACLE/ORADATA/ORA9I/RMAN.DBF',
?17??? 'C:/ORACLE/ORADATA/ORA9I/DRSYS01.DBF',
?18??? 'C:/ORACLE/ORADATA/ORA9I/EXAMPLE01.DBF',
?19??? 'C:/ORACLE/ORADATA/ORA9I/TEST1.DBF',
?20??? 'C:/ORACLE/ORADATA/ORA9I/ODM01.DBF',
?21??? 'C:/ORACLE/ORADATA/ORA9I/TEST2.DBF',
?22??? 'C:/ORACLE/ORADATA/ORA9I/XDB01.DBF',
?23??? 'C:/ORACLE/ORADATA/ORA9I/PORTAL.DBF'
?24? CHARACTER SET ZHS16GBK;

控制文件已創(chuàng)建

SQL>
SQL> ALTER SYSTEM ARCHIVE LOG ALL;

系統(tǒng)已更改。

SQL>
SQL> ALTER DATABASE OPEN;

數(shù)據(jù)庫已更改。

SQL>
SQL> ALTER TABLESPACE TEMP ADD TEMPFILE 'C:/ORACLE/ORADATA/ORA9I/TEMP01.DBF'
? 2?????? SIZE 20971520? REUSE AUTOEXTEND OFF;

表空間已更改。

SQL>
SQL> shutdown immediate;
數(shù)據(jù)庫已經(jīng)關閉。
已經(jīng)卸載數(shù)據(jù)庫。
ORACLE 例程已經(jīng)關閉。
SQL>
SQL> startup;
ORACLE 例程已經(jīng)啟動。

Total System Global Area? 135864308 bytes
Fixed Size?????????????????? 454644 bytes
Variable Size???????????? 109051904 bytes
Database Buffers?????????? 25165824 bytes
Redo Buffers??????????????? 1191936 bytes
數(shù)據(jù)庫裝載完畢。
數(shù)據(jù)庫已經(jīng)打開。
SQL>
SQL> select name from v$controlfile;

NAME
--------------------------------------------------------------------------------
C:/ORACLE/ORADATA/ORA9I/CONTROL01.CTL
C:/ORACLE/ORADATA/ORA9I/CONTROL02.CTL
C:/ORACLE/ORADATA/ORA9I/CONTROL03.CTL

SQL>
SQL> select member from v$logfile;

MEMBER
--------------------------------------------------------------------------------
C:/ORACLE/ORADATA/ORA9I/REDO01.LOG
C:/ORACLE/ORADATA/ORA9I/REDO03.LOG
C:/ORACLE/ORADATA/ORA9I/REDO02.LOG

SQL>

SQL> archive log list
數(shù)據(jù)庫日志模式??????????? 存檔模式
自動存檔???????????? 啟用
存檔終點??????????? C:/oracle/oradata/arch/ora9i
最早的概要日志序列???? 1
下一個存檔日志序列?? 3
當前日志序列?????????? 3
SQL>

可看到,日志group的sequence并沒有從1開始計數(shù)。

1、resetlogs方式

注意:online logs are damaged.

將所有的控制文件和日志文件都刪除掉后執(zhí)行重建控制文件腳本,日志如下:

SQL> STARTUP NOMOUNT
ORACLE 例程已經(jīng)啟動。

Total System Global Area? 135864308 bytes
Fixed Size?????????????????? 454644 bytes
Variable Size???????????? 109051904 bytes
Database Buffers?????????? 25165824 bytes
Redo Buffers??????????????? 1191936 bytes
SQL> CREATE CONTROLFILE REUSE DATABASE "ORA9I" RESETLOGS? ARCHIVELOG
? 2? --? SET STANDBY TO MAXIMIZE PERFORMANCE
? 3????? MAXLOGFILES 50
? 4????? MAXLOGMEMBERS 5
? 5????? MAXDATAFILES 100
? 6????? MAXINSTANCES 1
? 7????? MAXLOGHISTORY 226
? 8? LOGFILE
? 9??? GROUP 1 'C:/ORACLE/ORADATA/ORA9I/REDO01.LOG'? SIZE 10M,
?10??? GROUP 2 'C:/ORACLE/ORADATA/ORA9I/REDO02.LOG'? SIZE 10M,
?11??? GROUP 3 'C:/ORACLE/ORADATA/ORA9I/REDO03.LOG'? SIZE 10M
?12? -- STANDBY LOGFILE
?13? DATAFILE
?14??? 'C:/ORACLE/ORADATA/ORA9I/SYSTEM01.DBF',
?15??? 'C:/ORACLE/ORADATA/ORA9I/UNDOTBS01.DBF',
?16??? 'C:/ORACLE/ORADATA/ORA9I/RMAN.DBF',
?17??? 'C:/ORACLE/ORADATA/ORA9I/DRSYS01.DBF',
?18??? 'C:/ORACLE/ORADATA/ORA9I/EXAMPLE01.DBF',
?19??? 'C:/ORACLE/ORADATA/ORA9I/TEST1.DBF',
?20??? 'C:/ORACLE/ORADATA/ORA9I/ODM01.DBF',
?21??? 'C:/ORACLE/ORADATA/ORA9I/TEST2.DBF',
?22??? 'C:/ORACLE/ORADATA/ORA9I/XDB01.DBF',
?23??? 'C:/ORACLE/ORADATA/ORA9I/PORTAL.DBF'
?24? CHARACTER SET ZHS16GBK;

控制文件已創(chuàng)建

SQL>
SQL> prompt? RECOVER DATABASE USING BACKUP CONTROLFILE
RECOVER DATABASE USING BACKUP CONTROLFILE
SQL>
SQL> ALTER DATABASE OPEN RESETLOGS;

數(shù)據(jù)庫已更改。

SQL>
SQL> ALTER TABLESPACE TEMP ADD TEMPFILE 'C:/ORACLE/ORADATA/ORA9I/TEMP01.DBF'
? 2?????? SIZE 20971520? REUSE AUTOEXTEND OFF;

表空間已更改。

SQL>
SQL> shutdown immediate;
數(shù)據(jù)庫已經(jīng)關閉。
已經(jīng)卸載數(shù)據(jù)庫。
ORACLE 例程已經(jīng)關閉。
SQL>
SQL> startup;
ORACLE 例程已經(jīng)啟動。

Total System Global Area? 135864308 bytes
Fixed Size?????????????????? 454644 bytes
Variable Size???????????? 109051904 bytes
Database Buffers?????????? 25165824 bytes
Redo Buffers??????????????? 1191936 bytes
數(shù)據(jù)庫裝載完畢。
數(shù)據(jù)庫已經(jīng)打開。
SQL>
SQL>
SQL> select name from v$controlfile;

NAME
--------------------------------------------------------------------------------
C:/ORACLE/ORADATA/ORA9I/CONTROL01.CTL
C:/ORACLE/ORADATA/ORA9I/CONTROL02.CTL
C:/ORACLE/ORADATA/ORA9I/CONTROL03.CTL

SQL>
SQL> select member from v$logfile;

MEMBER
--------------------------------------------------------------------------------
C:/ORACLE/ORADATA/ORA9I/REDO03.LOG
C:/ORACLE/ORADATA/ORA9I/REDO02.LOG
C:/ORACLE/ORADATA/ORA9I/REDO01.LOG

SQL>

SQL> archive log list
數(shù)據(jù)庫日志模式??????????? 存檔模式
自動存檔???????????? 啟用
存檔終點??????????? C:/oracle/oradata/arch/ora9i
最早的概要日志序列???? 0
下一個存檔日志序列?? 1
當前日志序列?????????? 1
SQL>

可看到,日志group的sequence又開始從1開始計數(shù)。

二、非歸檔模式下:

先將數(shù)據(jù)庫由歸檔模式改為非歸檔模式,具體操作如下:

SQL> archive log list
數(shù)據(jù)庫日志模式??????????? 存檔模式
自動存檔???????????? 啟用
存檔終點??????????? C:/oracle/oradata/arch/ora9i
最早的概要日志序列???? 2
下一個存檔日志序列?? 4
當前日志序列?????????? 4
SQL> shutdown immediate;
數(shù)據(jù)庫已經(jīng)關閉。
已經(jīng)卸載數(shù)據(jù)庫。
ORACLE 例程已經(jīng)關閉。
SQL> startup nomount;
ORACLE 例程已經(jīng)啟動。

Total System Global Area? 135864308 bytes
Fixed Size?????????????????? 454644 bytes
Variable Size???????????? 109051904 bytes
Database Buffers?????????? 25165824 bytes
Redo Buffers??????????????? 1191936 bytes
SQL> alter database noarchivelog;
alter database noarchivelog
*
ERROR 位于第 1 行:
ORA-01507: ??????


SQL> alter database mount;

數(shù)據(jù)庫已更改。

SQL> alter database noarchivelog;

數(shù)據(jù)庫已更改。

SQL> alter database open;

數(shù)據(jù)庫已更改。

SQL> archive log list
數(shù)據(jù)庫日志模式???????????? 非存檔模式
自動存檔???????????? 啟用
存檔終點??????????? C:/oracle/oradata/arch/ora9i
最早的概要日志序列???? 2
當前日志序列?????????? 4
SQL>

1、noresetlogs方式

同歸檔模式下的noresetlogs方式

2、resetlogs方式

同非歸檔模式下的resetlogs方式

從這里再一次可看出重建控制文件跟數(shù)據(jù)庫是否歸檔沒有直接的關系。

總結

以上是生活随笔為你收集整理的重建控制文件的案例(RESETLOGS模式和NORESETLOGS模式)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。