咨询微信: dbservice1234 7 x 24 在线支持!

    你在这里

Oracle ORA-01122, ORA-01251 エラあるいはデータブロック損害を解決す

Oracle ORA-01122, ORA-01251 エラあるいはデータブロック損害を解決す

ORACLEデータベース によくあるエラ の解決策

プロのOracle Databaseの復旧サービスを提供
携帯番号: +86 13764045638 メール:service@parnassusdata.com

 

適用範囲:

Oracleデータベース– エンタプライズバーション – 9.2.0.1 から10.2.0.1まで、プラットフォーム:

IBM AIX on POWER Systems (64-bit)

IBM AIX Based Systems (64-bit)

AIX5L Based Systems (64-bit)

This problem affects all RDBMS releases on AIX5L Based Systems using data files on raw devices over the following OS maintenance levels.

bos.rte.lvm 5.2.0.97 (5200-09-03) and later

bos.rte.lvm 5.3.0.53 (5300-05-04) and later

 

症状

一部のデータファイルのヘッダあるいは制御ファイルを読み取るときに、エラになる。例えばデータベースを起動するときに、以下のようなエラになる::

データファイルで:

ORA-01122:26データファイル検証失敗

ORA-01110:データファイル26:‘/dev/rccrac_data09′

ORA-01251: 26のファイルが読み取っているファイルヘッダのバーションが知らない

制御ファイルで:

Dumpできた0番ファイルの初めてのブロック、ダンプできたファイル/oracle/app/oracle/admin/cc/udump/cc_ora_811272.trc

***

Corrupt block relative dba: 0x00000001 (file 0, block 1)

Fractured block found during control file header read

Data in bad block –

type: 0 format: 0 rdba: 0x00000000

last change scn: 0x0000.00000000 seq: 0x0 flg: 0x00

consistency value in tail: 0x00000000

check value in block header: 0x0, block checksum disabled

spare1: 0x0, spare2: 0x0, spare3: 0x0

 

 

devがエラが現れたデータファイルに対してすべてのベッドブロックも報告していない。例えば:

 

DBVERIFY – Verification starting : FILE = /dev/rccrac_deutb

Page 1 is influx – most likely media corrupt

Corrupt block relative dba: 0x00000001 (file 0, block 1)

Fractured block found during dbv:

Data in bad block:

type: 0 format: 0 rdba: 0x00000000

last change scn: 0x0000.00000000 seq: 0x0 flg: 0x00

spare1: 0x0 spare2: 0x0 spare3: 0x0

consistency value in tail: 0x00000000

check value in block header: 0x0

 

変化

システムを再起動出来たら、ロジックボリュームを変更して、トラブルを確認できる。

 

原因

ロジックボリュームがDS_LVZ属性をなくした。これで、Oracleが誤ったデータファイルを読み取り始まる。例えば、新たなロジックボリュームを考える:

mklv -y’asm_tst_data’ -t’jfs2′ -a’e’ -T O -w n -r n -S 64k asmtst 200 hdisk2 hdisk3 hdisk4

-T Oマークを使ってください。LMのDS_LVZを設定した。

コマンド:lslv -L asm_tst_data

“devicesubtype:ds_lvz”のような設定もあるかもしれない。どんなボリュームを変化するオペレーションでも(例えば、再起動やvaryoffvgなど)ロジックボリュームのds_lvzマークを消す。これで、lslv –Lが“devicesubtype:ds_lvz”を映さなくなる。

 

解決策:

解決策を実現するために、以下のようなステップを実行してください: Problem is caused by defect IY94343 in AIX Operating System.

Solution is to apply fix: (see http://www-1.ibm.com/support/docview.wss?uid=isg1IY94343 )

Comments from link:

5200-10 – use AIX APAR IY94347

5300-06 – use AIX APAR IY94343

5300-07 – use AIX APAR IY94343

注意:  local volumes (LVs) は以下のようなコマンドを実行できる:

# chlv -T O <lv name>

このコマンドでdevicesubtypeを再設定できる:ds_lvzがLVsに影響を与える。4KB LVsにこのようなコマンドを実行しないようにしてください。LVsの設備もクロスしたままに保持してください。