OracleのSGAサイズを変更する【SQL】

OracleのSGA(System Global Area)のサイズは変更できます。

SGAのバッファキャッシュが不足すると物理I/Oが増加してパフォーマンスがダウンしてしまいます。そうならないよう、SGAのサイズを適正値に変更しておく必要があります。

SGAを変更する手順を説明します。

1. 現在のSGAを確認する

--SGAを確認する
show parameter sga_;

[結果]
NAME                    TYPE     VALUE
------------------------------------ ----------- ------------------------------
sga_max_size                         big integer 1584M
sga_target                           big integer 0
unified_audit_sga_queue_size         integer     1048576

SGAのサイズは「show parameter sga_」で確認できます。

2. SGAのサイズを変更する(SPFILEモードの場合)

--SGAのサイズを変更する
ALTER SYSTEM SET SGA_MAX_SIZE = 1G SCOPE=SPFILE;
ALTER SYSTEM SET SGA_TARGET = 1G SCOPE=SPFILE;

ここでは「SGA_MAX_SIZE」「SGA_TARGET」をそれぞれ1GBに変更しました。

3. データベースを再起動する

--再起動する
SHUTDOWN IMMEDIATE
STARTUP

SGAの変更を反映するにはデータベースの再起動が必要です。上記コマンドで再起動します。

4. 現在のSGAを確認する

--SGAを確認する
show parameter sga_;

[結果]
NAME                    TYPE     VALUE
------------------------------------ ----------- ------------------------------
sga_max_size                         big integer 1G
sga_target                           big integer 1G
unified_audit_sga_queue_size         integer     1048576

最後にSGAが変更されたか確認します。「show parameter sga_」でSGAのサイズが1GBに変更されたのが確認できました。

以上、OracleのSGAのサイズを変更する手順でした。

コメント