概要
データベースが起動できない。
メッセージにあるとおり,メモリー不足によるもの。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
コメント