Front page   Edit Diff Upload Copy Rename Reload   New List of pages Search Recent changes   Help   RSS of recent changes

Diff of 技術文書/Oracle/11g/メモリの設定

Top > 技術文書 > Oracle > 11g > メモリの設定

#topicpath
----
#contents
----
* 概要 [#p9039096]

11g からメモリ管理が進み、SGA と PGA の合計をまとめて指定できるようになりました。

- memory_target = sga_target + pga_aggregate_target

だと思えばいいでしょう。

* 使い方 [#y5c08da0]

初期化パラメータファイル ($ORACLE_HOME/dbs/init$ORACLE_SID.ora) に設定して
インスタンスを再起動します。

#pre{{
memory_target=500M
}}

設定の確認は sqlplus から行います。

#pre{{
[oracle@ora1 ~]$ sqlplus / as sysdba
...
Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
に接続されました。
SQL> show sga

Total System Global Area  521936896 bytes
Fixed Size                  2145984 bytes
Variable Size             306184512 bytes
Database Buffers          209715200 bytes
Redo Buffers                3891200 bytes
SQL> show parameter memory_target

NAME                                 TYPE
------------------------------------ ---------------------------------
VALUE
------------------------------
memory_target                        big integer
500M
SQL>
}}

* エラーの対処 [#z3a57298]

#pre{{
SQL> startup
ORA-00845: MEMORY_TARGET not supported on this system
}}

設定した値によってはこのように言われますが、
これは /dev/shm の領域が小さいために発生しています。

#pre{{
[oracle@ora1 ~]$ df -h /dev/shm
Filesystem          サイズ  使用  残り 使用% マウント位置
tmpfs                 502M     0  502M   0% /dev/shm
}}

この環境で memory_target=1G としてみると
上記のエラーが再現します。

メモリが多ければ tmpfs を作り直しましょう。

#pre{{
[oracle@ora1 ~]$ su -
パスワード:
[root@ora1 ~]# umount /dev/shm
[root@ora1 ~]# mount -t tmpfs shmfs -o size=1g /dev/shm
[root@ora1 ~]# df -h /dev/shm
Filesystem          サイズ  使用  残り 使用% マウント位置
shmfs                 1.0G     0  1.0G   0% /dev/shm
}}

今度は 1G にしても正しく起動します。

#pre{{
SQL> startup
ORACLEインスタンスが起動しました。
...
SQL> show sga

Total System Global Area 1068937216 bytes
Fixed Size                  2151248 bytes
Variable Size             599788720 bytes
Database Buffers          461373440 bytes
Redo Buffers                5623808 bytes
SQL> show parameter memory_target

NAME                                 TYPE
------------------------------------ ---------------------------------
VALUE
------------------------------
memory_target                        big integer
1G
}}

* 参考文献 [#i180299e]

- [[Oracle 11g internals part 1: Automatic Memory Management:http://blog.tanelpoder.com/2007/08/21/oracle-11g-internals-part-1-automatic-memory-management/]]

----
- ora-00845で困っていました。感謝します。 --  &new{2010-12-24 (金) 14:38:27};
- お役に立ててよかったです。 -- すぎむら &new{2010-12-24 (金) 21:19:23};

#comment