成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Oracle處理損壞數據塊的處理操作

數據庫 Oracle
下面的文章主要是對出現Oracle處理損壞數據塊的解決方案,如果你在Oracle處理損壞數據塊的應用中經常遇到這一難題,以下就是解答方案。

你是否在實際操作中遇到過這樣的狀況,有的時侯Oracle的數據文件只損壞了相關的數據塊而其他的東西卻完好無損。產生這樣的原因主要是因為間斷或隨機的I/O錯誤或是內存塊的錯誤。這時可以不用做整個數據文件的恢復,使datafile仍然處在在線的狀態。對此可以進行下面幾種Oracle處理損壞數據塊的處理操作。

** Oracle 9i 以后可以使用blockrecover命令(BMR):

可以先通過視圖v$database_block_corruption獲得當前被損壞數據的數據塊信息。此視圖中記錄了物理和邏輯兩類block corruption。

@ 物理的corruption:無法辨識該數據塊,checksum、header、footer校驗錯誤

@ 邏輯corruption:chechsum、header、footer校驗是正確的,但是該數據塊的內容時不一致的。

注意:BMR是不能用于恢復邏輯上的corruption的。在backup命令中checksum的校驗是默認開啟的,可以通過NOCHECKSUM選項屬性關閉。邏輯的校驗默認是關閉的,可以在backup、restore、recover、validate命令中添加CHECK LOGICAL開啟。

具體的操作方法為:

 

  1. rman> blockrecover datafile n1 block n1b1,
    n1b2 datafile n2 block n2b1,n2b2; 

** 對于用戶管理的備份和恢復方法。如果要恢復Oracle處理損壞數據的DB,只能進行整個數據文件的恢復。

 

  1. sql> alter database datafile 2 offline;  
  2. sql> host ‘cp /backup/datafile1.bak /opt/demo/datafile1.dt’;  
  3. sql> recover automatic datafile 2;  
  4. sql> alter database datafile 2 online;  

 

** 如果對于存在corruption block的表的使用不頻繁,在可以忍受的情況下,可以先屏蔽這些blocks,待以后再恢復。這就要使用dbms_repair包了。具體如下:

@ 建立修復表(修復表用于存放表、表分區或索引的損壞塊信息)。

 

  1. sql> exec dbms_repair.admin_tables
    (’REPAIR_TABLE’, DBMS_REPAIR.REPAIR_TABLE, DBMS_REPAIR.CREATE_ACTION); 

@ 確定Oracle處理損壞數據塊的個數

 

  1. sql> var cc number  
  2. sql> exec dbms_repair.check_object
    (’TBSPNAME’, ‘TABNAME’, 
    corrupt_count=>:cc);  
  3. sql> print cc  

 

@ 標記損壞塊。

 

  1. sql> var fc number  
  2. sql> exec dbms_repair.fix_corrupt_blocks
    (’TBSPNAME’, ‘TABNAME’,
    fix_count=>:fc);  
  3. sql> print fc;  

 

@ 跳過損壞塊。此操作可以使涉及到損壞塊的查詢sql繼續執行,跳過該blocks,但是對于DML,則仍會顯示錯誤信息。

 

  1. sql> exec dbms_repair.skip_corrupt_blocks(’TBSPNAME’, ‘TABNAME’); 

@ 確定指向Oracle處理損壞數據塊的索引入口。當上面確定了表的損壞塊后,仍有可能存在索引指向Oracle處理損壞數據塊,這些索引稱為“孤立鍵值”。對此可以使用dbms_repair包對孤立鍵值進行管理:

 

  1. sql> exec dbms_repair.admin_tables
    (’ORPHAN_TAB’, DBMS_REPAIR, ORPHAN_TABLE, DBMS_REPAIR, CREATE_ACTION);  
  2. sql> var kc number  
  3. sql> exec dbms_repair.dump_orphar_keys
    (’TBSPNAME’,'INDEXNAME’, 
    orphan_table_name=> ‘ORPHAN_TAB’, key_count=> :kc);  
  4. sql> print kc;  

 

上述的相關內容就是對Oracle處理損壞數據塊的描述,希望會給你帶來一些幫助在此方面。

【編輯推薦】

  1. Oracle 字符串split的相關實際應用代碼介紹
  2. Oracle創建Split 與Map 函數的代碼示例
  3. Oracle索引整理的詳細描述
  4. Oracle 權限入門如何管理
  5. Oracle 10G for linux常用命令淺析
責任編輯:佚名 來源: 互聯網
相關推薦

2009-05-15 13:43:30

Oracle數據塊損壞數據塊恢復

2010-04-08 13:55:18

Oracle數據處理

2020-06-09 10:35:37

Oracle文件損壞數據庫

2010-11-18 16:58:33

Oracle死鎖

2011-05-26 14:43:49

ORACLE數據庫異常處理

2011-08-10 16:01:11

OracleConstraint

2010-04-30 14:39:03

Oracle數據庫

2009-07-09 17:36:58

jvm.cfg

2010-04-12 11:12:53

Oracle數據處理

2009-09-28 14:06:35

數據庫頁損壞

2011-05-26 13:36:40

Oracle數據庫時間處理

2010-04-07 14:22:46

2009-05-18 13:18:54

字符Oracle字符串

2010-04-09 14:37:08

Oracle數據庫

2010-11-19 14:56:16

oracle服務丟失

2009-11-16 17:41:46

Oracle數據塊

2010-09-25 10:06:40

jvm.cfg

2009-09-02 18:52:38

Oracle數據庫并行

2009-12-22 14:15:08

ADO.Net處理數據

2011-03-17 14:09:25

Oracle數據庫字符
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 操久久| 97伦理电影网 | 欧美一区永久视频免费观看 | 久久久久免费精品国产 | 久久久久久久国产精品影院 | 18av在线播放 | 精品国产一区二区三区免费 | 欧美日韩在线观看视频 | 麻豆久久久久久 | www.久草| 中文字幕久久精品 | 欧美日韩在线视频观看 | 亚洲免费大片 | 久久久久国产一区二区三区 | 国产精品久久久久久久久久久久 | 一区二区三区在线看 | 国内久久精品 | 午夜精品视频 | 日本成人在线观看网站 | 特黄特黄a级毛片免费专区 av网站免费在线观看 | 欧美日韩亚洲视频 | 日韩一区二区三区视频在线观看 | 国产黄色在线观看 | 久久久999国产精品 中文字幕在线精品 | 亚洲精品成人在线 | 97精品国产97久久久久久免费 | 亚洲国产成人精品女人久久久 | 午夜影院在线观看视频 | 视频一区二区在线 | 久久精品一区二区三区四区 | 久久视频精品在线 | 亚洲福利在线观看 | 欧美video | 日韩欧美在线播放 | 欧美日韩一| 国产一区免费 | 99热国产精品 | 精品欧美乱码久久久久久 | 成人午夜精品一区二区三区 | 日韩成人在线播放 | 91亚洲国产成人久久精品网站 |