1,在備份的情況下
在nomount狀態下restore controlfile form autobackup(針對自動備份開啟的情況如果沒有開啟,就緒指定到具體的目錄)
這裡指出 using backup controlfile 的幾種情況
(1) 在使用備份控制檔案做恢復的時候。(如果在全被恢復的情況直接recover database 然後用resetlogs open 相對控制檔案沒有資料丟失)
(2)用resetlogs 方法重建控制檔案,如果用 noresetlogs 重建不必使用using backup controlfile;
2,在沒有備份的情況
(1) 使用noresetlogs 方法手動建立控制檔案
和resetlogs的區別就是 當聯機日誌檔案還在,如果用resetlogs的方法,則要求聯機日誌中必須要沒有活動事務才行,建立控制檔案的操作並不會清空當前聯機日誌的內容,英雌如果有資料檔案的不一致還是可以用日誌檔案來恢復的。所以如果不需要清空日誌檔案就需要用norestlogs的方式重建
具體操作
將資料庫啟動到nomount狀態
sql>create controlfile reuse databse 」databasename「 noresetlogs archivelog
2 maxlogfile 16
3 maxlogmembers 3
4 maxdatafiles 16
5 maxinstances 8
6 maxloghistory 292
7 logfile
8 group 1 'redofilename01',size
9 group 2 'redofilename02',size
10 group 3 'redofilename03',size
-------------sdandby logfile (有dataguard災備的情況)
11 datafile
12 『datafilename1』
13 'datafilename2'..
.17 character set zhs16gbk;
需要注意的是,操作之前需要資料庫的物理結構,如資料檔案 日誌檔案等(在生產環境由於資料檔案較多,一定要仔細確認,缺一不可)
control file created;
然後嘗試 alter database mount以及open,不出意外肯定會報錯。
根據報錯內容 recover database (不需要是用using backup controlfile)
然後 alter database open;
(2) 是用resetlogs 手動建立控制檔案
指令碼基本一樣 需要指出 是用的是resetlogs
接下來recover的時候有卻別,需要用recover database using backup controlfile;然後給出檔案位址,隨後用restlogs開啟資料庫。
如果有基於時間點或是scn恢復的
rman> run
Oracle控制檔案丟失怎麼辦
oracle的控制檔案丟失怎麼辦 如果有文字備 的份控制檔案 就可以使用文字備份的控制檔案 sql alter database backup controlfile to traceas 路徑 檔名 sql alter database backup controlfile to trace as...
oracle資料檔案丟失。
今天來上班聽說我們的資料庫伺服器連不上,說是昨晚停電伺服器都掛掉了。初步考慮應該是資料庫沒有自動拉起造成的,手動執行拉起指令碼資料庫仍然無法連線。後來檢視oracle啟動日誌以及跟蹤日誌如下 cd opt oracle admin oracle9i bdump more alert oracle9i...
oracle控制檔案
nomount時可以用show parameter control files檢視。而此時yon用select from v controlfile則沒有任何資訊。nomount狀態只是通過引數檔案來找到控制檔案。進入mount後可以用select from v controlfile檢視。控制檔案...