久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

rman備份恢復(fù)操作手冊-從零到無

 精品唯居 2022-03-04

--時間:2020年9月2日

--作者:飛翔的小胖豬

1 備份

1.1 備份說明

rman可進行熱備和冷備,一般情況下都是進行熱備即不數(shù)據(jù)庫備份,。執(zhí)行的熱備需要數(shù)據(jù)庫處于歸檔模式下,。

 

1.2 設(shè)置歸檔模式

 歸檔模式開啟過后,當一個在線重做日志寫滿了過后,,會切換到下一個在線重做日志中進行日志寫入,。之前的在線重做日志會形成歸檔日志存放于歸檔日志目錄中。如果歸檔日志目錄空間使用率100%,,那么整個數(shù)據(jù)庫會無法寫入新數(shù)據(jù)而導(dǎo)致數(shù)據(jù)庫GG,,所以在開啟設(shè)置數(shù)據(jù)庫為歸檔模式后需要定時的檢查歸檔日志目錄剩余空間大小,及時清理過期的數(shù)據(jù)或擴容目錄空間,。

 設(shè)置歸檔日志路徑

 SQL> alter system  set log_archive_dest_1='location=/u01/arch'  #設(shè)置為本地目錄作為歸檔日志目錄,,紅色字體根據(jù)自己定義的目錄填寫
 SQL> alter system set log_archive_dest_1='location=+DATA/RACDB/ARCH' scope=spfile sid='*';   #使用ASM的環(huán)境下使用此命令
 SQL> show parameter log_archive_dest_1;     #查看確認設(shè)置的歸檔日志路徑

開啟歸檔

歸檔模式的切換必須處于mount狀態(tài)下,其他狀態(tài)下不行喲,。

 SQL> shutdown immediate;     #先正常關(guān)閉在用數(shù)據(jù)庫,如果你的數(shù)據(jù)庫正在運行
 SQL> startup mount;                #啟動數(shù)據(jù)庫到mount階段
 SQL> alter database archivelog;     #設(shè)置數(shù)據(jù)庫為歸檔模式
 SQL> alter database open;              #啟動數(shù)據(jù)庫到open狀態(tài)
 SQL> archive log list;           #查看數(shù)據(jù)庫當前是否處于歸檔模式下
SQL> alter system switch logfile; #嘗試切換一下在線重做日志文件,,此時可以到之前設(shè)置的歸檔日志目錄中查看是否有新文件,如果有新文件則表示歸檔正常,。

關(guān)閉歸檔模式

 關(guān)閉歸檔模式和開啟的操作一樣,,只能在mount狀態(tài)下執(zhí)行。

 SQL> shutdown immediate;     #先正常關(guān)閉在用數(shù)據(jù)庫,如果你的數(shù)據(jù)庫正在運行
 SQL> startup mount;                #啟動數(shù)據(jù)庫到mount階段
 SQL> alter database noarchivelog;     #設(shè)置數(shù)據(jù)庫為歸檔模式
 SQL> alter database open;              #啟動數(shù)據(jù)庫到open狀態(tài)
 SQL> archive log list;           #查看數(shù)據(jù)庫當前是否處于歸檔模式下

 

1.3 備份腳本

腳本中的ORACLE_SID,、ORACLE_BASE,、ORACLE_HOME、PATH這幾個環(huán)境變量請根據(jù)自己的實際情況填寫,。

 1 #!/bin/bash
 2 export ORACLE_SID=orcl
 3 export ORACLE_BASE=/app/oracle
 4 export ORACLE_HOME=/app/oracle/product/11.2.0/dbhome_1
 5 export PATH=$DB_HOME/bin:/usr/lib64/qt-3.3/bin:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/oracle/bin
 6 export NLS_DATE_FORMAT='YYYY-MM-DD HH24:MI:SS'
 7 echo '------------------------------------' >> /tmp/rman_PRD04_full.log
 8 echo "Start FULL Backup at  `date +%Y-%m-%d:%H:%M:%S`  " >> /tmp/rman_PRD04_full.log
 9 echo '------------------------------------' >> /tmp/rman_PRD04_full.log
10 
11 rman target / log /tmp/rman_PRD04_full.log append <<EOF
12 run{
13 allocate channel c1 type disk;
14 allocate channel c2 type disk;
15 allocate channel c3 type disk;
16 backup database format '/app/archive_backup/full_%d_%T_%s_%p.bak';
17 SQL 'alter system archive log current';
18 SQL 'alter system archive log current';
19 backup archivelog all  format '/app/archive_backup/arch_%d_%T_%s_%p.bak';
20 backup current controlfile format '/app/archive_backup/ct1_%d_%T_%s_%p.ctl.bak';
21 backup spfile format '/app/archive_backup/%d_%T_%s_%p.spfile.bak';
22 }
23 EOF

釋義:

        13-15行:打開了三個通道介質(zhì)都為disk,,rman備份建議最多使用4個通道。

        16行:定義備份過后的數(shù)據(jù)文件路徑及命名格式,。

        17-18行:切換數(shù)據(jù)庫在線重做日志文件,。

        19行:定義備份的歸檔日志文件路徑及命名格式。(順序必須在備份數(shù)據(jù)文件之后),,備份的是數(shù)據(jù)庫數(shù)據(jù)文件備份期間產(chǎn)生的歸檔日志,。

        20行:定義備份的控制文件路徑及命令格式。

        21行:定義備份的spfile文件路徑及命令格式,。

 

1.4 RMAN基礎(chǔ)操作

$rman target /                 #以數(shù)據(jù)庫的sysdba用戶進入到rman中,,當設(shè)置了ORACLE_SID同時對應(yīng)實例的數(shù)據(jù)庫處于nomount以上的狀態(tài)時,該命令會自動連接到該實例中,。 不然需要使用set dbid 'xxxxxx';設(shè)置連接到哪一個實例中
RMAN> show all;              #查看所有配置
釋義:    
    ①configure retention policy to redundancy 1: 
        是用來決定那些備份不再需要了,,它一共有三種可選項,分別是
        復(fù)制代碼 代碼如下:
        CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 7 DAYS;
        CONFIGURE RETENTION POLICY TO REDUNDANCY 5;
        CONFIGURE RETENTION POLICY TO NONE;
                第一種recover window是保持所有足夠的備份,,可以將數(shù)據(jù)庫系統(tǒng)恢復(fù)到最近七天內(nèi)的任意時刻,。任何超過最近七天的數(shù)據(jù)庫備份將被標記為obsolete,。
                第二種redundancy是為了保持可以恢復(fù)的最新的5份數(shù)據(jù)庫備份,任何超過最新5份的備份都將被標記為redundancy,。它的默認值是1份,。
                第三種不需要保持策略,clear將恢復(fù)回默認的保持策略,。
                一般最安全的方法是采用第二種保持策略,。
    ②CONFIGURE BACKUP OPTIMIZATION OFF
        默認值為關(guān)閉,如果打開,,rman將對備份的數(shù)據(jù)文件及歸檔等文件進行一種優(yōu)化的算法,。
    ③Configure default device type to disk:
        是指定所有I/O操作的設(shè)備類型是硬盤或者磁帶,默認值是硬盤
        磁帶的設(shè)置是CONFIGURE DEFAULT DEVICE TYPE TO SBT;
    ④CONFIGURE CONTROLFILE AUTOBACKUP OFF
        強制數(shù)據(jù)庫在備份文件或者執(zhí)行改變數(shù)據(jù)庫結(jié)構(gòu)的命令之后將控制文件自動備份,,默認值為關(guān)閉,。這樣可以避免控制文件和catalog丟失后,控制文件仍然可以恢復(fù),。
    ⑤CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'
        是配置控制文件的備份路徑和備份格式
    ⑥CONFIGURE DEVICE TYPE DISK PARALLELISM 1;
        是配置數(shù)據(jù)庫設(shè)備類型的并行度,并行的數(shù)目決定了開啟通道的個數(shù),。
    ⑦CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1;
         CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1
        是否啟動復(fù)合備份,向指定的i/o設(shè)備中指定的位置生成指定的份數(shù),。缺省為1.這個配置僅用于數(shù)據(jù)文件和歸檔文件,,并且,只有在自動分配通道時才會生效,!
    ⑧CONFIGURE SNAPSHOT CONTROLFILE NAME TO 'C:ORACLE…SNCFTEST.ORA'
        是配置控制文件的快照文件的存放路徑和文件名,,這個快照文件是在備份期間產(chǎn)生的,用于控制文件的讀一致性,。
    ⑨CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT 'C:...%d_DB_%u_%s_%p';
        是配置備份文件的備份路徑和備份格式
    ⑩CONFIGURE EXCLUDE FOR TABLESPACE <tablespace> [CLEAR];
        此命令用于將指定的表空間不備份到備份集中,, 此命令對只讀表空間是非常有用的。

校驗備份數(shù)據(jù)

校驗的目的是檢測當前以存在rman備份數(shù)據(jù)是否有效等功能,。

檢驗操作不會對以備份數(shù)據(jù)造成影響,。可以放心大膽的使用,。

RMAN> crosscheck backup;                         #校驗所有備份數(shù)據(jù)信息
RMAN> crosscheck backup of database;             #校驗數(shù)據(jù)庫備份數(shù)據(jù)信息
RMAN> crosscheck backup of tablespacesystem;     #校驗數(shù)據(jù)庫表空間備份數(shù)據(jù)信息
RMAN> crosscheck backup of controlfile;          #校驗控制文件備份信息
RMAN> crosscheck backup of spfile;               #檢驗數(shù)據(jù)庫配置文件備份信息
RMAN> crosscheck archivelog all;                 #檢驗歸檔日志文件數(shù)據(jù)信息
RMAN> crosscheck backup of archivelog all;       #檢驗歸檔日志文件備份信息

查看備份數(shù)據(jù)

查看rman中備份文件信息,,為保證數(shù)據(jù)的準確性,在執(zhí)行查看前請先使用crosscheck命令對備份數(shù)據(jù)進行一次檢驗,。

查看命令是無害的隨意用,,不會修改任何東西。

RMAN> list backup;                           #查看所有備份數(shù)據(jù)
RMAN> list backup of database;               #查看數(shù)據(jù)庫備份數(shù)據(jù)
RMAN> list backup of tablespacetable_name;   #查看表空間備份數(shù)據(jù)
RMAN> list backup of controlfile;            #查看控制文件備份數(shù)據(jù)
RMAN> list backup of spfile;                 #查看數(shù)據(jù)庫配置文件備份數(shù)據(jù)
RMAN> list backupset id;                     #這里ID指的是備份集的ID號 比如2,、3.

  RMAN> list archivelog all; #查看所有的歸檔日志文件
  RMAN> list archivelog all COMPLETED BEFORE 'SYSDATE-7'; #查看7天前的數(shù)據(jù)歸檔日志文件
  RMAN> list ARCHIVELOG FROM TIME 'SYSDATE-7'; #查看7天內(nèi)的歸檔日志文件

 刪除歸檔及備份文件

 為了避免備份文件過多導(dǎo)致存儲壓力可以制定計劃定時清理備份數(shù)據(jù),,在rman中刪除數(shù)據(jù)時請先使用crosscheck命令對備份數(shù)據(jù)進行一次檢驗。

刪除命令威力還是很大的,,一定要按照生產(chǎn)規(guī)范執(zhí)行數(shù)據(jù)保留策略,。在進行清理操作時請多次確認。在執(zhí)行刪除操作時請小心,!小心,!小心!不要誤操作了,。

刪除歸檔日志
RMAN> delete expired archivelog all,;                        #刪除過期的歸檔日志
RMAN> DELETE ARCHIVELOG ALL COMPLETED BEFORE 'SYSDATE-7';   #刪除7天前的歸檔日志
RMAN> DELETE ARCHIVELOG FROM TIME 'SYSDATE-7';               #刪除七天內(nèi)的歸檔
RMAN> report obsolete;                                       #報告陳舊備份
RMAN> delete obsolete;                                       #刪除陳舊備份
RMAN> delete expired backup;                                 #刪除過期的數(shù)據(jù),,和rman的保留策略設(shè)置有關(guān)
RMAN> delete expired copy ;                                  #刪除EXPIRED副本
RMAN> delete backupset 9;                                    #刪除備份集編號9的
RMAN> delete backuppiece ¨F:\backup\DEMO_9.bak¨;             #刪除特定備份片
RMAN> delete backup;                                         #刪除所有備份
RMAN> RMAN> delete copy;                                     #刪除映象副本
RMAN> delete datafilecopy ¨F:\backup\DEMO_9.bak¨             #刪除特定映象副本

 

 

2 RMAN恢復(fù)數(shù)據(jù)

2.1 恢復(fù)說明

數(shù)據(jù)庫啟動需要經(jīng)過: close 階段   ---->    nomount階段   ----->   mount階段    ----> open階段

close階段:

        狀態(tài):數(shù)據(jù)庫程序未運行,。

        恢復(fù)內(nèi)容:可以進行物理文件的移動拷貝。創(chuàng)建啟動前必要的文件夾,、物理拷貝spfile文件到正確目錄,。

nomount階段:

        狀態(tài):oracle程序數(shù)據(jù)庫中必要的文件夾存及特定文件存在,該階段不會去檢測控制文件和數(shù)據(jù)庫數(shù)據(jù)文件是否存在,。但是如spfile文件丟失是無法啟動到nomount狀態(tài),。

        恢復(fù)內(nèi)容:可以進行控制文件的恢復(fù),如從備份位置恢復(fù)控制文件或使用命令重建控制文件等操作,。

mount階段:

        狀態(tài):階段需要有控制文件,。能夠正常讀取讀取控制文件中的數(shù)據(jù)庫信息如數(shù)據(jù)文件路徑,當前scn號等信息,。

        恢復(fù)內(nèi)容:該階段組要可以對具體的數(shù)據(jù)文件進行恢復(fù)及redo 日志文件丟失重建等操作

open:

        狀態(tài):數(shù)據(jù)庫的最終狀態(tài),。控制文件中的所有文件及scn號一致的情況下可以啟動成功,,如果scn號不一致可能需要進行實例恢復(fù),。

 

2.2 恢復(fù)控制文件(有備份)

 思路:

        強制關(guān)閉數(shù)據(jù)庫,手動啟動數(shù)據(jù)庫到mount階段,,恢復(fù)丟失的控制文件,,然后在mount階段恢復(fù)同步一下數(shù)據(jù)庫最后打開數(shù)據(jù)庫。

步驟:

        1.強制關(guān)閉數(shù)據(jù)庫

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

        3.使用rman連接數(shù)據(jù)庫

        4.使用備份文件恢復(fù)control文件

        5.在rman管理器中啟動數(shù)據(jù)庫到mount階段

        6.執(zhí)行恢復(fù)數(shù)據(jù)庫

        7.打開數(shù)據(jù)庫

#強制關(guān)閉數(shù)據(jù)庫
SQL> shutdown abort;

#啟動到nomount階段 SQL
> startup nomount;

#新開一個終端,,進入到rman管理器中 $ rman target
/ RMAN> set dbid='xxxxxxxxxxx'; #dbid可以在數(shù)據(jù)庫正常時,,通過select dbid from v$database;命令查看 RMAN> restore controlfile from '實際備份的文件路徑'; RMAN> alter database mount; RMAN> recover database; #如果報數(shù)據(jù)文件相關(guān)的錯誤,需進行數(shù)據(jù)文件恢復(fù),,則執(zhí)行如下三條命令,。 如果有datafile文件錯誤。 RMAN> list failure; RMAN> advise failure; #運行自動修復(fù)功能,,會生成一個文本,,使用cat查看按照文本操作 RMAN> repair failure; #運行自動修復(fù),成功的話會自動打開庫
RMAN> alter database open; #執(zhí)行啟動數(shù)據(jù)庫到open狀態(tài),,如果該命令成功則不用執(zhí)行下一條命令 RMAN
> alter database open resetlogs;

 

2.3 重建控制文件(沒有備份)

在異常斷電可能導(dǎo)致控制文件丟失或GG了,,又沒有備份那么只有嘗試重建控制文件,。

控制文件丟失數(shù)據(jù)庫是無法啟動到mount狀態(tài)的。在rac環(huán)境中需要設(shè)置cluster_database為False,show parameter cluster_database

思路:

        備份現(xiàn)有數(shù)據(jù)庫配置文件,,通過配置文件找到數(shù)據(jù)庫名和具體的數(shù)據(jù)存放路徑,,在nomount階段下獲取字符集,使用獲取到的數(shù)據(jù)填充命令重建數(shù)據(jù)庫控制文件,。

步驟:

        1.強制關(guān)閉數(shù)據(jù)庫

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

        3.備份spfile文件

        4.獲取數(shù)據(jù)文件列表,、數(shù)據(jù)庫實例名、字符集等信息

        5.完善控制文件重建命令

        6.打開數(shù)據(jù)庫

備份spfile文件

備份spfile文件,,如果spfile不小心被你玩崩了那么你可以使用 startup pfile='pfile路徑'指定之前備份的,。

使用服務(wù)器參數(shù)文件spfile創(chuàng)建文本參數(shù)文件pfile:
SQL> show parameter spfile; #查看spfile文件存放路徑 (以下的spfile備份命令選擇一種即可) SQL> create pfile from spfile='/app/oracle/product/11.2.0/dbhome_1/dbs/spfileorcl.ora';#復(fù)制的pfile在同目錄下 SQL> create pfile from spfile; #復(fù)制當前的spfile文件為pfile文件,同目錄,。 SQL> create pfile="/app/oracle/product/11.2.0/dbhome_1/dbs/bakpfile.ora" from spfile="/app/oracle/product/11.2.0/dbhome_1/dbs/spfileorcl.ora"; SQL> create pfile="/app/oracle/product/11.2.0/dbhome_1/dbs/bakpfile.ora" from spfile;

  spfile丟失過后可以直接復(fù)制,,也可以使用如下命令恢復(fù)spfile文件。

  SQL> create spfile from pfile='/app/oracle/product/11.2.0/dbhome_1/dbs/bakpfile.ora';

 

獲取數(shù)據(jù)庫名,,在spfile文件中

在文件中查看 db_name= 行內(nèi)容并記錄下來,。

[oracle@localhost dbs]$ cat spfileorcl.ora| more
b_cache_size=637534208
orcl.__java_pool_size=16777216
orcl.__large_pool_size=33554432
orcl.__oracle_base='/app/oracle'#ORACLE_BASE set from environment
orcl.__pga_aggregate_target=637534208
orcl.__sga_target=922746880
orcl.__shared_io_pool_size=0
orcl.__shared_pool_size=218103808
orcl.__streams_pool_size=0
*.audit_file_dest='/app/oracle/admin/orcl/adump'
*.audit_trail='db'
*.compatible='11.2.0.4.0'
*.control_files='/app/oracle/oradata/orcl/control01.ctl','/app/oracle/fast_recC
*.db_block_size=8192
*.db_domain=''
*.db_name='orcl'
*.db_recovery_file_dest='/app/oracle/fast_recovery_area'
*.db_recovery_file_dest_size=4385144832
*.diagnostic_dest='/app/oracle'
*.dispatchers='(PROTOCOL=TCP) (SERVICE=orclXDB)'
*.log_archive_dest_1='location=/app/archive_data'
*.memory_target=1547698176
*.open_cursors=300
*.processes=150
*.remote_login_passwordfile='EXCLUSIVE'
*.undo_tablespace='UNDOTBS1'

獲取字符集,很重要(在nomount狀態(tài))

SQL> select userenv('language') from dual;

獲取數(shù)據(jù)文件列表

一般在$ORACLE_BASE/oradata/實例名/下ASM除外,。記錄下所有的文件依次填寫在命令中,。

$ ll $ORACLE_BASE/oradata/orcl/
-rw-r----- 1 oracle oinstall 9.3M Sep  1 11:58 control01.ctl.bak
-rw-r----- 1 oracle oinstall 331M Sep  1 11:57 example01.dbf
drwxr-x--- 3 oracle oinstall 4.0K Aug 20 06:25 ORCL
-rw-r----- 1 oracle oinstall 501M Sep  1 11:54 redo01.log
-rw-r----- 1 oracle oinstall 501M Sep  1 11:57 redo02.log
-rw-r----- 1 oracle oinstall 501M Sep  1 11:54 redo03.log-rw-r----- 1 oracle oinstall 541M Sep  1 11:57 sysaux01.dbf
-rw-r----- 1 oracle oinstall 751M Sep  1 11:57 system01.dbf
-rw-r----- 1 oracle oinstall  21M Sep  1 11:54 temp01.dbf
-rw-r----- 1 oracle oinstall 101M Sep  1 11:57 undotbs01.dbf
-rw-r----- 1 oracle oinstall 5.1M Sep  1 11:57 users01.dbf

生成控制文件

在nomount中執(zhí)行命令,按照之前查看到的文件填寫??刂莆募蛇^后會自動啟動到mount狀態(tài),。

#紅色字體部分請按照自己實際環(huán)境填寫。
SQL> CREATE CONTROLFILE REUSE DATABASE 'orcl' NORESETLOGS ARCHIVELOG MAXLOGFILES 5 MAXLOGMEMBERS 3 MAXDATAFILES 100 MAXINSTANCES 1 MAXLOGHISTORY 226 LOGFILE GROUP 1 '/app/oracle/oradata/orcl/redo01.log' SIZE 500M, GROUP 2 '/app/oracle/oradata/orcl/redo02.log' SIZE 500M, GROUP 3 '/app/oracle/oradata/orcl/redo03.log' SIZE 500M DATAFILE '/app/oracle/oradata/orcl/system01.dbf', '/app/oracle/oradata/orcl/sysaux01.dbf', '/app/oracle/oradata/orcl/undotbs01.dbf', '/app/oracle/oradata/orcl/users01.dbf', '/app/oracle/oradata/orcl/example01.dbf', '/app/oracle/oradata/orcl/temp01.dbf' CHARACTER SET US7ASCII ; 注:提示ORA-01110: data file : '/app/oracle/oradata/orcl/temp01.dbf\' 則刪除temp01.dbf這一行,,再執(zhí)行,。 SQL> CREATE CONTROLFILE REUSE DATABASE 'orcl' NORESETLOGS ARCHIVELOG MAXLOGFILES 5 MAXLOGMEMBERS 3 MAXDATAFILES 100 MAXINSTANCES 1 MAXLOGHISTORY 226 LOGFILE GROUP 1 '/app/oracle/oradata/orcl/redo01.log' SIZE 500M, GROUP 2 '/app/oracle/oradata/orcl/redo02.log' SIZE 500M, GROUP 3 '/app/oracle/oradata/orcl/redo03.log' SIZE 500M DATAFILE '/app/oracle/oradata/orcl/system01.dbf', '/app/oracle/oradata/orcl/sysaux01.dbf', '/app/oracle/oradata/orcl/undotbs01.dbf', '/app/oracle/oradata/orcl/users01.dbf', '/app/oracle/oradata/orcl/example01.dbf' CHARACTER SET US7ASCII ;

打開數(shù)據(jù)庫

在成功執(zhí)行了控制文件重建操作后,數(shù)據(jù)庫會自動啟動到mount狀態(tài),。此時可以嘗試open數(shù)據(jù)庫,。如果無法直接open嘗試recover一下再open。

SQL> alter database open;
如果此處失敗,,則先進行實例恢復(fù),。recover database; 然后再執(zhí)行alter database open; ERROR at line
1: ORA-01113: file 1 needs media recovery ORA-01110: data file 1: '/app/oracle/oradata/orcl/system01.dbf'

 

2.4 恢復(fù)丟失的數(shù)據(jù)文件

如果沒有備份至故障期間的歸檔重做日志,那么只能恢復(fù)到備份的時候,,不能進行完全恢復(fù),。

思路:

        強制關(guān)閉數(shù)據(jù)庫,在rman中啟動數(shù)據(jù)庫到nomount狀態(tài),,恢復(fù)控制文件(可選),啟動數(shù)據(jù)庫到mount階段,,恢復(fù)相關(guān)數(shù)據(jù)文件,recover一下數(shù)據(jù),,最后打開數(shù)據(jù)庫,。

步驟:

        1.強制關(guān)閉數(shù)據(jù)庫

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

        3.恢復(fù)控制文件(可選)

        4.切換數(shù)據(jù)庫到mount模式,,restore數(shù)據(jù)文件

        5.recover數(shù)據(jù)文件

        6.打開數(shù)據(jù)庫


SQL> shutdown abort; #強制關(guān)閉數(shù)據(jù)庫用oracle賬戶 SQL> startup nomount; #啟動數(shù)據(jù)庫到nomount狀態(tài),如果有控制文件,、pfile或者當前控制文件,、spfile不正確,則需要先進行配置文件恢復(fù),。
$ rman target
/ RMAN> restore controlfile from '實際備份的文件路徑'; RMAN> alter database mount; RMAN> list failure; #查看系統(tǒng)中缺失的文件信息,必須先執(zhí)行該命令后才能使用如下的advise命令 RMAN> advise failure; #運行自動修復(fù)功能,,會生成一個文本,,使用cat查看按照文本操作 RMAN> repair failure; #運行自動修復(fù),成功的話會自動打開庫

 

2.5 恢復(fù)丟失的某個數(shù)據(jù)文件

思路:

        離線丟失的數(shù)據(jù)文件,,在rman中恢復(fù)丟失的數(shù)據(jù)文件,,recover一下恢復(fù)的數(shù)據(jù)文件,最后上線數(shù)據(jù)文件,。

步驟:

        1.離線丟失數(shù)據(jù)文件

        2.使用備份數(shù)據(jù)恢復(fù)丟失文件

        3.recover剛才恢復(fù)的文件

        4.上線數(shù)據(jù)文件

關(guān)閉數(shù)據(jù)庫

啟動到mount狀態(tài),,也可以嘗試啟動到open狀態(tài)(一般啟動open的過程中會提示文件offline)

offline指定的數(shù)據(jù)庫文件

SQL> alter database datafile '/app/oracle/oradata/orcl/example01.dbf' offline;

SQL> alter database open;

 

 從rman中恢復(fù)數(shù)據(jù)文件

RMAN> restore datafile '/app/oracle/oradata/orcl/example01.dbf';

 

獲取實際的數(shù)據(jù)文件路徑 

SQL> set linesize 200;
SQL> col file_name for a40;
SQL> select file_name,file_id,tablespace_name,status,online_status from dba_data_files

 

查看到offline的文件實際路徑,為了保證scn號一致還需要獲取到文件路徑在rman中執(zhí)行恢復(fù),。

RMAN> recover datafile '/app/oracle/oradata/orcl/example01.dbf';

 

online數(shù)據(jù)文件,,重啟數(shù)據(jù)庫

SQL> alter database datafile '/app/oracle/oradata/orcl/example01.dbf' online;
SQL> shutdown immediate
SQL> startup

 

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,,不代表本站觀點,。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,,謹防詐騙,。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報,。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多