[Oracle]ORA-01034,ORA-27101が出たときの復旧手順

Oracle

概要

データベースが起動できない。

メッセージにあるとおり,メモリー不足によるもの。Hyper-vなどで割り当てている初期メモリサイズが小さい場合など。

対処方法

ひとまずメモリを空けて,サービスを再起動

一時的に終了できるアプリやサービスを終了させて,メモリに空きを作る

Windows の管理マネージャ の サービス にて OracleServiceXXX を再起動させる

メモリー管理を調整

初期化パラメーター sga_targe の値を減らす。

OEMでの場合は下図,4Gだったのを 2G にした。

上記のようなOEM画面構成を変更するには
https://www.tksoft.work/archives/4257

Hyper-v のサーバーなら 最小RAM を増加させる

Hyper-V で稼働しているサーバーの場合,最小RAMの値が低すぎることが考えられます。初期値は 512 MB なので 通常稼働している時のメモリーサイズまで増加させておくといいかもしれません。

変更するには 仮想OS の再起動が必要となります。

初期化パラメータの問題の場合

作業前に C:\App\Oracle\server\database にある,SPFILExxxx.ora をすべてバックアップコピーしておく。(なくなると大変)

SET ORACLE_SID=xxx
sqlplus /nolog
conn sys as sysdba

SQL>create pfile=’c:\temp\initxxxx.ora’ from spfile;
SQL>startup

エラー内容を参考に,上記で出来上がった .ora ファイルをメモ帳で編集(数値は実際のサーバーの空きメモリに応じて)

*.sga_max_size=1G
*.sga_target=500M

SQL> startup pfile=’c:\temp\initxxxx.ora’

SQL> CREATE SPFILE FROM PFILE=’c:\temp\initxxxx.ora’;

で無事起動するかどうか確認

これでC:\App\Oracle\server\database に,起動できる初期化ファイル SPFILEが作成される

Windowsのサービス管理にて,OracleServiceXXX のサービスを再起動

念の為サーバーを再起動させ,再発しないかどうか検証しておく

Hyper-v での場合,OSをリブートして確認しておく。

プロパティ

Oracle 19.3
Windows Server 2019

コメント

スポンサーリンク
タイトルとURLをコピーしました