<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 495,comments - 227,trackbacks - 0
    http://maincoolbo.javaeye.com/blog/568519

    我們都都知道在controlfile中記錄著每一個archivelog的相關信息,當然們在OS下把這些物理文件delete掉后,在我們的

    controlfile中仍然記錄著這些archivelog的信息,在oracle的OEM管理器中有可視化的日志展現出,當我們手工清除 archive目錄下的文件后,這些記錄并沒有被我們從controlfile中清除掉,也就是oracle并不知道這些文件已經不存在了!這時候我們要 做手工的清除的話,下面我經過實驗,可以嘗試這種方法:

    1. 進入rman 

    2. connect target /

    3. crosscheck archivelog all;

    4. delete expired archivelog all;

    這時候我們再去OEM中看就一定看不到,如果你的從來沒有做過這個動作的話,我們可以比較從這個動作前的controlfile后動作后的 controlfile的大小!

    ORACLE正確刪除歸檔并回收空間的方法

    ORACLE正確刪除歸檔并回收空間的方法

    一個ORACLE歸檔日志經常滿,表現為/oraarchive 這個文件空間占用100%大家一定抱怨ORACLE為何沒有歸檔維護工具,很多人直接刪除了事,錯了,ORACLE有,而且很智能,可以正確的刪除歸檔和 FLASHBACK,不過切記,ORACLE歸檔日志對于ORACLE的數據恢復和備份非常重要,不到萬不得已不要刪除歸檔日志。

    刪除歸檔日志的過程

    以ORACLE用戶身份登錄到數據庫服務器主機或通過網絡連接

    進入ORACLE數據備份工具

    rman target/

    或rman target/@orcl

    在命令窗口里面執行

    DELETE ARCHIVELOG ALL COMPLETED BEFORE 'SYSDATE-7';

    說明

    SYSDATA-7,表明當前的系統時間7天前,before關鍵字表示在7天前的歸檔日志,如果使用了閃回功能,也會刪除閃回的數據。

    同樣道理,也可以刪除從7天前到現在的全部日志,不過這個命令要考慮清楚,做完這個刪除,最好馬上進行全備份數據庫

    DELETE ARCHIVELOG FROM TIME 'SYSDATE-7';



    UNIX/LINUX下也可以通過FIND找到7天前的歸檔數據,使用EXEC子操作刪除



    find /oraarchive -xdev -mtime +7 -name "*.dbf" -exec rm -f {} ;

    這樣做仍然會在RMAN里留下未管理的歸檔文件

    仍需要在RMAN里執行下面2條命令

    crosscheck archivelog all;

    delete expired archivelog all;

    所以還不如上面的方法好用,不過用FIND的好處就是,可以在條件上,和EXEC子項上做很多操作,實現更復雜的功能

    3.簡要介紹一下report obsolete命令



    使用report obsolete命令報告過期備份

    RMAN> report obsolete;

    RMAN retention policy will be applied to the command

    RMAN retention policy is set to redundancy 1

    Report of obsolete backups and copies

    Type                 Key    Completion Time    Filename/Handle

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

    Backup Set           125    01-NOV-04

    Backup Piece       125    01-NOV-04          /data1/oracle/orabak/full_1_541045804

    Backup Set           131    04-NOV-04

    Backup Piece       131    04-NOV-04          /data1/oracle/orabak/full_AVATAR2_20041104_131

    ....

    Backup Set           173    06-DEC-04

    Backup Piece       173    06-DEC-04          /data1/oracle/orabak/full_AVATAR2_20041206_173

    Backup Set           179    11-DEC-04

    Backup Piece       179    11-DEC-04          /data1/oracle/orabak/arch544588206.arc

    .....

    Backup Piece       189    17-DEC-04          /data1/oracle/orabak/arch545106606.arc

    Backup Set           190    17-DEC-04

    Backup Piece       190    17-DEC-04          /data1/oracle/orabak/arch545106665.arc

    Backup Set           191    20-DEC-04

    Backup Piece       191    20-DEC-04          /data1/oracle/orabak/arch_AVATAR2_20041220_194

    Archive Log          2973   20-DEC-04          /opt/oracle/oradata/avatar2/archive/1_2985.dbf

    Archive Log          2971   20-DEC-04          /opt/oracle/oradata/avatar2/archive/1_2984.dbf

    .....

    Archive Log          2705   17-DEC-04          /opt/oracle/oradata/avatar2/archive/1_2717.dbf

    Archive Log          2704   17-DEC-04          /opt/oracle/oradata/avatar2/archive/1_2716.dbf

    Archive Log          2703   17-DEC-04          /opt/oracle/oradata/avatar2/archive/1_2715.dbf

    Archive Log          2702   17-DEC-04          /opt/oracle/oradata/avatar2/archive/1_2714.dbf



    4.使用delete obsolete命令刪除過期備份:



    RMAN> delete obsolete;



    RMAN retention policy will be applied to the command

    RMAN retention policy is set to redundancy 1

    using channel ORA_DISK_1

    Deleting the following obsolete backups and copies:

    Type                 Key    Completion Time    Filename/Handle

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

    Backup Set           125    01-NOV-04

    Backup Piece       125    01-NOV-04          /data1/oracle/orabak/full_1_541045804

    ....

    Archive Log          2704   17-DEC-04          /opt/oracle/oradata/avatar2/archive/1_2716.dbf

    Archive Log          2703   17-DEC-04          /opt/oracle/oradata/avatar2/archive/1_2715.dbf

    Archive Log          2702   17-DEC-04          /opt/oracle/oradata/avatar2/archive/1_2714.dbf



    Do you really want to delete the above objects (enter YES or NO)? yes

    deleted backup piece

    backup piece handle=/data1/oracle/orabak/full_AVATAR2_20041206_173 recid=173 stamp=544156241

    .....

    deleted archive log

    archive log filename=/opt/oracle/oradata/avatar2/archive/1_2715.dbf recid=2703 stamp=545108268

    deleted archive log

    archive log filename=/opt/oracle/oradata/avatar2/archive/1_2714.dbf recid=2702 stamp=545107659

    Deleted 286 objects





    RMAN> crosscheck archivelog all;



    released channel: ORA_DISK_1

    allocated channel: ORA_DISK_1

    channel ORA_DISK_1: sid=19 devtype=DISK

    specification does not match any archive log in the recovery catalog





    5 在rman中用crosscheck檢查歸檔日志,2個歸檔日志都是失敗的:

    RMAN> crosscheck archivelog all;



    釋放的通道: ORA_DISK_1

    分配的通道: ORA_DISK_1

    通道 ORA_DISK_1: sid=14 devtype=DISK

    對歸檔日志的驗證失敗

    存檔日志文件名 =D:ORACLEORADATATESTARCHIVE1_47.DBF 記錄 ID=1 時間戳 =572866

    683

    對歸檔日志的驗證失敗

    存檔日志文件名 =D:ORACLEORADATATESTARCHIVE11_48.DBF 記錄 ID=2 時間戳 =57286

    6931

    已交叉檢驗的 2 對象



    6 試著同步一下,看行不行,結果不行,crosscheck還是失敗:

    RMAN> resync catalog;



    正在啟動全部恢復目錄的 resync

    完成全部 resync



    RMAN> crosscheck archivelog all;



    釋放的通道: ORA_DISK_1

    分配的通道: ORA_DISK_1

    通道 ORA_DISK_1: sid=14 devtype=DISK

    對歸檔日志的驗證失敗

    存檔日志文件名 =D:ORACLEORADATATESTARCHIVE1_47.DBF 記錄 ID=1 時間戳 =572866

    683

    對歸檔日志的驗證失敗

    存檔日志文件名 =D:ORACLEORADATATESTARCHIVE11_48.DBF 記錄 ID=2 時間戳 =57286

    6931

    已交叉檢驗的 2 對象



    7 用list expired看看是否有失效的archive log,證明沒有失效的archive log:

    RMAN> list expired archivelog all;



    說明與恢復目錄中的任何存檔日志均不匹配



    8 更改語言環境試試,結果再次crosscheck,2個archive log 都成功了:

    RMAN> exit





    恢復管理器完成。



    C:>set nls_lang=american_america.zhs16gbk



    C:>rman catalogrman/rman@safetarget /



    Recovery Manager: Release 9.2.0.1.0 - Production



    Copyright (c) 1995, 2002, Oracle Corporation. All rights reserved.



    connected to target database: TEST (DBID=1870953724)

    connected to recovery catalog database



    RMAN> crosscheck archivelog all;



    allocated channel: ORA_DISK_1

    channel ORA_DISK_1: sid=9 devtype=DISK

    validation succeeded for archived log

    archive log filename=D:ORACLEORADATATESTARCHIVE1_47.DBF recid=1 stamp=57286

    6683

    validation succeeded for archived log

    archive log filename=D:ORACLEORADATATESTARCHIVE11_48.DBF recid=2 stamp=5728

    66931

    Crosschecked 2 objects


    ====================================
    oracle隱藏參數字典 x$ksppi x$ksppstvl 
    oracle的隱藏參數字典是 x$ksppi,x$ksppstvl基表中,有關隱含參數說明,可以查詢這個基表

    SQL> desc x$ksppi
    名稱 是否為空? 類型
    ------    -----
    ADDR      RAW(4)
    INDX      NUMBER
    INST_ID   NUMBER
    KSPPINM   VARCHAR2(64)
    KSPPITY   NUMBER
    KSPPDESC  VARCHAR2(64)
    KSPPIFLG  NUMBER

    SQL>

    SQL> desc x$ksppcv
    名稱 是否為空? 類型
    ----------------------------------------- -------- ----------------------------

    ADDR RAW(4)
    INDX NUMBER
    INST_ID NUMBER
    KSPPSTVL VARCHAR2(512)
    KSPPSTDF VARCHAR2(9)
    KSPPSTVF NUMBER
    KSPPSTCMNT VARCHAR2(255)

    SQL>

    比如我現在要查詢隱含參數
    _allow_resetlogs_corruption /// 這個參數說明允許數據庫在不一致的條件下,進行數據庫打開


    查看隱含參數的值,方式是


    SQL> col ksppinm format a30
    SQL> col ksppstvl format a30
    SQL> select ksppinm,ksppstvl from x$ksppcv cv,x$ksppi pi where cv.indx=pi.indx a
    nd pi.ksppinm like '_allow%';

    KSPPINM KSPPSTVL
    ------------------------------ ------------------------------
    _allow_error_simulation FALSE
    _allow_resetlogs_corruption FALSE
    _allow_terminal_recovery_corru FALSE
    ption

    _allow_read_only_corruption FALSE

    SQL>

    這個參數一般在數據庫正常無法恢復了,可以用它來強行打開數據庫,把數據文件先備份出來,這是
    一個比較好的辦法。
    posted on 2010-04-21 15:14 SIMONE 閱讀(5005) 評論(0)  編輯  收藏 所屬分類: oracle
    主站蜘蛛池模板: 亚洲日本在线播放| 久久国产精品亚洲一区二区| 亚洲乱码在线视频| 一区二区在线免费观看| 久久精品国产亚洲网站| 国产日韩AV免费无码一区二区| 国产国拍亚洲精品福利| 一级毛片a免费播放王色电影 | 免费福利网站在线观看| 伊人久久综在合线亚洲2019| 久久久久高潮毛片免费全部播放 | 色偷偷亚洲第一综合网| 在线免费观看韩国a视频| 亚洲a∨国产av综合av下载| 国产免费69成人精品视频| 美女被免费网站视频在线| 亚洲精品无码久久不卡| a毛片在线免费观看| 亚洲视频精品在线| 国产免费看JIZZ视频| 亚洲午夜成人精品无码色欲| 国产又大又粗又硬又长免费| 免费无码一区二区| 亚洲av永久无码精品古装片| 最近中文字幕2019高清免费| 亚洲最大中文字幕无码网站| 免费国产a国产片高清网站| 二级毛片免费观看全程| 亚洲韩国—中文字幕| 91在线视频免费91| 成人在线免费视频| 亚洲成人免费网站| 国产麻豆免费观看91| a级毛片毛片免费观看久潮喷| 亚洲精品一区二区三区四区乱码 | 色窝窝亚洲av网| 亚洲av无码乱码国产精品| 最近免费中文字幕视频高清在线看 | 亚洲av中文无码乱人伦在线r▽| 成人在线免费看片| 日韩在线一区二区三区免费视频 |