web-dev-qa-db-ja.com

メモリ構成が正しくないため、Oracle(11g1)を起動できません(ORA-00837)

ローカルの開発者インスタンスのメモリ割り当てを減らすことにし、次のコマンドでうまくいくと言われました。

alter system set memory_max_target = 512M scope = spfile;

問題のOracleインスタンスを起動できなくなったので、それは間違いだったと思います。これは、非DBAユーザーとして接続しようとしたときに発生するエラーです。

ORA-01034: Oracle not available
ORA-27101: shared memory realm does not exist

SYSDBAとして接続すると、次のようになります。

Connected to an inactive instance.
SQL>startup nomount;
ORA-00837: Specified value of MEMORY_TARGET greater than MEMORY_MAX_TARGET
SQL>alter system set memory_max_target = 2G scope = spfile;
ORA-01034: Oracle not available

( "非アクティブなインスタンスに接続しました。"は、ローカライズされたエラーメッセージの翻訳です。正確に正しくない可能性があります)したがって、私は22の状況にあり、メモリパラメータを変更できません起動せず、起動できません。

これらのパラメーターをオフラインで変更する方法はありますか?

8
MaxH

サーバーパラメータファイル(初期化パラメータファイルのバイナリバージョン、spfile)を使用してインスタンスを起動する場合、初期化パラメータをプレーンテキストの初期化パラメータファイル(pfile)に抽出し、それらを変更してから、メモリを変更してインスタンスを起動できます。パラメーター。

sql> create pfile='myinit.ora' from spfile='spfileORCL.ora';

myinit.oraのメモリ関連パラメーターを変更し、この新しい構成を使用してインスタンスを起動します。

sql> startup pfile='myinit.ora';

その後、次のコマンドを使用して、設定をspfileに保存できます。

sql> create spfile='spfileORCL.ora' from pfile='myinit.ora';

そしていつものようにデータベースを起動します:

sql> startup;
9

11gR1の初期リリースにはこのバグがあります。 memory_targetが2GB(およびそれ以上)に設定されている場合、これらは起動しません。 11gR2(または11.1.0.7)にアップグレードするか、「クラシック」SGA/PGAパラメータ(sga_target、sga_max_size、pga_aggregate_target)を使用してください。

1
ibre5041

Linux OSを使用している場合:/ dev/shmファイルシステムのサイズを確認しましたか?このfsのサイズは、SGAに適合するのに十分な長さでなければなりません。そうでない場合は、「-o size = xxx」を使用して再マウントしてください。

1
user22020