スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

【トラブル】OS起動時にDBが起動しない

自分がこのトラブルにあった状況
Oracleバージョン:8.1.7.0.0
OS:Windows2000Server

症状:
・定期メンテナンスでサーバーを再起動したところ、DBが起動しなくなった
・今まで何度も再起動していたが、その時は問題なかった
・Windows上でのサービスは起動している
・アラートファイル(BACKGROUND_DUMP_DESTで指定)には記述なし
・OraDim.LOG(デフォルトでは%ORACLE_HOME%/database/)には
 ORA-12640: 認証アダプタの初期化に失敗しました。
 ORA-12638: 資格証明の取出しに失敗しました。
 の二種類の記述有り
 ※ORA-12640は大量に、ORA-12638はサーバー再起動の時間に発生した模様
・サーバーの再起動していたらなんか動き始めた!

このトラブルは、認証まわりが原因のようです。
sqlnet.oraファイル(%ORACLE_HOME%/network/admin/)にて

SQLNET.AUTHENTICATION_SERVICES=(NTS)

となっていて、OSへのログインをドメインユーザーで行った場合に起こりうる問題だそうです。
SQLNET.AUTHENTICATION_SERVICES=(NTS)はWindowsNT固有のOS認証を使用するという設定です。
このとき、通常であれば

 OS起動→Windowsログイン→Oracleサービス起動→認証→DB起動

となるのですが、ドメインユーザーを使用していると、稀に

 OS起動→Windowsログインに時間がかかる→→→→→→→→↓
   ↓→Oracleサービス起動→認証したいが間に合わない→→DB起動してない!

となる場合があるようです。
この場合、OS認証が出来ずに止まっているだけなので、SQL*Plus等からSTARTUPコマンドを実行してあげれば起動します。

対応としては、

・発生する度に手動でSTARTUPコマンド
・SQLNET.AUTHENTICATION_SERVICES=(NONE)として認証なしに設定
・Oracleサービスの開始を手動にし、Windows起動後に
 net start OracleServiceORCL
 srvctl start ORCL
 と記述したバッチファイルを実行するようにタスクを組む

の三パターンになるんじゃないかと。
毎回STARTUPは面倒なので、まずは認証無しに設定し、それでも引っかかることがあるようならバッチファイルの実行タスクを設定すればいいのかな。
スポンサーサイト

Comment

 
管理人にのみ表示する
 

Track Back

TB URL

HOME

プロフィール

ラキア

  • Author:ラキア
  • ビリヤードB級、JPA SL5
    ホームは新宿BAGUSと荻窪サンビリ

    プレイ :McDarmott+OBPro+
    ブレイク:Adam+OBSBS+
    ジャンプ:TENGU

最近の記事

カテゴリー

月別アーカイブ

最近のコメント

最近のトラックバック

ブログ内検索

RSSフィード

リンク

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。