ホームページ  >  記事  >  データベース  >  Oracle sga の設定方法

Oracle sga の設定方法

PHPz
PHPzオリジナル
2023-04-04 13:59:381627ブラウズ

Oracle SGA 設定

Oracle SGA (システム グローバル領域) は、システム レベルの共有メモリであり、Oracle データベース インスタンスの最も重要なメモリ領域の 1 つです。 SGAには、データ・バッファ、REDOログ・バッファ、共有プール、Javaプールなどを含む、すべてのデータベース・インスタンス・プロセス(プロセス)に共通のメモリー領域が含まれています。 Oracle SGA のサイズはデータベースのパフォーマンスと安定性に大きな影響を与えるため、SGA の設定はデータベース管理者が重点を置いて最適化する必要がある側面です。

Oracle データベースでは、ユーザーは SGA のサイズを手動設定と自動管理 (自動メモリ管理) の 2 つの方法で管理できます。

SGA サイズを手動で設定する

SGA サイズを手動で設定するには、Oracle データベース構成ファイル init.ora (Oracle 9i より前のバージョン) または spfile (Oracle 10g 以降のバージョン) にアクセスする必要があります。

SGA のサイズを手動で設定するには、次の点を考慮する必要があります。

  1. SGA のサイズを計算する
    SGA を手動で設定する前に、まず、必要なサイズを計算する必要があります。 SGA に割り当てられます。このサイズは実際の状況に応じて設定する必要があり、次の側面に基づいて検討できます。
  • ユーザー セッション数の計算
  • メモリ オブジェクトの計算データベースに必要な
  • SGA スペースの構成

その中で、ユーザー セッション数の計算とデータベースに必要なメモリ オブジェクトの計算には、特定の計算と見積もりが必要です。ここで説明されています。

SGA を構成するためのスペースは、次の式に従って計算できます。

SGA = データベース バッファ キャッシュ 共有プール 大規模プール REDO ログ バッファ Java プール ストリーム プール

これらのうち、データベース バッファ キャッシュは、データベース内のデータ ブロックをバッファリングするために使用されるデータ バッファです。共有プールは、共有 SQL および PL/SQL コードを格納するために使用される共有プールです。ラージ プールは、より大きなメモリ オブジェクトを格納するために使用される大規模なプールです。 REDO Log Buffer は REDO ログ キャッシュ領域であり、ユーザー操作記録の保存に使用されます。Java プールは Java オブジェクトの保存に使用される Java プールであり、Streams Pool は Streams プールで、STREAMS に必要なメモリの保存に使用されます。

  1. 初期化パラメータの変更
    SGA のサイズ設定には、Oracle データベースの初期化パラメータ ファイルを変更する必要があります。$ORACLE_HOME/dbs/init.ora または spfile## を変更できます。 #.ora ファイルを満たします。一般に、初期化パラメータを設定するには spfile ファイルを使用することをお勧めします。
次のコマンドを使用して、spfile 内の SGA のサイズを設定します。

ALTER SYSTEM SET sga_max_size = xxxM SCOPE=SPFILE;

ALTER SYSTEM SET sga_target = xxxM SCOPE= SPFILE;

このうち、sga_max_size は SGA の最大値を表し、sga_target は SGA の期待値を表します。設定が完了したら、データベースを再起動して有効にする必要があります。

SGA サイズの自動管理

Oracle データベースの自動メモリ管理 (AMM) は、Oracle 11g 以降の新機能であり、SGA および PGA (プロセス グローバル エリア) のサイズを動的に管理できます。 AMM は、手動で設定することなく、データベースのニーズに応じて SGA と PGA のサイズを自動的に割り当て、調整できます。 AMM では、SGA を設定するパラメータはすべて無視されます。

AMM を有効にするには、次の手順を実行する必要があります。

    SGA_TARGET パラメータを設定します。
  1. 次のパラメータ設定をデータベースに追加して、AMM を有効にします。
ALTER SYSTEM SET sga_target=xxxM SCOPE=SPFILE;

ここで、xxx は MB 単位の SGA メモリ サイズです。

    データベース インスタンスを再起動します
  1. SGA_TARGET の変更を有効にするには、データベース インスタンスを再起動する必要があります。
概要

SGA は、Oracle データベースの最も重要なメモリ領域の 1 つです。データベースのパフォーマンスと安定性に大きな影響を与えるため、データベース管理者の注意が必要です。 。 SGA サイズを手動で設定するには、データベースの実際の要件を計算し、要件に従って Oracle データベースの初期化パラメータ ファイルを変更する必要があります。 SGA サイズの自動管理では、手動設定を行わずに SGA と PGA のサイズを動的に管理できます。

以上がOracle sga の設定方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。