Email: [email protected] 7 x 24 online support!
RAW デバイス上のデータファイルが破損した表領域の再作成で ORA-27086 が発生
	プロのOracle Databaseの復旧サービスを提供
携帯番号: +86 13764045638 メール:[email protected]
[起こりうる現象]
RAW デバイス上のデータファイルが破損した表領域の再作成で 
ORA-27086 が発生します。
本現象は、以下の手順で再現可能です。
<再現手順>
1. RAW デバイス上に TEST データファイルを作成
  SQL> create tablespace test datafile
  '/dev/raw/raw5' SIZE 819200;
    2
  Tablespace created.
2. TEST データファイルを /dev/zero で埋め、データファイルを破損
  $ dd if=/dev/zero of=/dev/raw/raw5 bs=8192 count=100
  100+0 records in
  100+0 records out
  $
3. TEST データファイルを offline化
  SQL> alter database datafile '/dev/raw/raw5' offline;
  Database altered.
4. TEST データファイルを online化
   Oracle が TEST データファイルが破損したことを検知
  SQL> alter database datafile '/dev/raw/raw5' online;
  alter database datafile '/dev/raw/raw5' online
  *
  ERROR at line 1:
  ORA-01122: database file 6 failed verification check
  ORA-01110: data file 6: '/dev/raw/raw5'
  ORA-01251: Unknown File Header Version read for file number 6
5. TEST 表領域を drop
  SQL> alter tablespace TEST offline immediate;
  Tablespace altered.
  SQL> drop tablespace TEST including contents;
  Tablespace dropped.
6. RAW デバイス上に TEST データファイルを作成すると、ORA-27086 発生
  SQL> create tablespace test datafile
  '/dev/raw/raw5' SIZE 819200;
    2  create tablespace test datafile
  *
  ERROR at line 1:
  ORA-01119: error in creating database file '/dev/raw/raw5'
  ORA-27086: unable to lock file - already in use
  Linux Error: 11: Resource temporarily unavailable
  Additional information: 8
  Additional information: 20750
なお、ファイルシステムの場合は、手順6 で ORA-27086 ではなく
ORA-27038が発生します。
[対象リリース] 
問題が発生するリリース  :Oracle Database 10g Release 2(10.2.0)
問題を修正したリリース  :Oracle Database 11g Release 1(11.1.0)
問題を修正予定のリリース:なし
問題を修正したPSR       :なし
問題を修正予定のPSR     :未定
[対象プラットフォーム]
すべてのプラットフォーム 
[起こりうる条件]
破損したデータファイルの online を実施した場合に発生します。
[原因]
製品の不具合です。
データファイルを online にする際には、online にする前に DBW が
該当のデータファイルの確認を行いますが、その際のロックの扱いが正しく
ないために発生します。
[回避策]
以下の方法で回避してください。
・再現手順 4 の破損したデータファイルの online を実施しない
[障害発生時の対処]
ORA-27086 が発生した後は、インスタンスの再起動で対処してください。
