2008-10-03

ORACLE MEMORY

ustawianie pamięci:
SGA
parametr sga_target można zmieniać dynamicznie do wartość sga_max_size, natomiast parametr sga_max_size może być zmianiany tylko statycznie czyli z restartem bazy
sga_target > 0 - automatyczne zarządzanie pamięcią
a wpisy:
  • db_cache_size,
  • java_pool_size,
  • large_pool_size,
  • shared_pool_size
oznaczają ich minimalną wartość

sga_target = 0 - ręczne ustawianie pamięci i powyższe parametry ustawić ręcznie

sga_max_size - do jakiej wartości można ręcznie podwyższyć sga_target

SHARED_POOL_SIZE - pamięć w Bajtach dla współdzielnonych SQL i PL/SQL i dla danych słownikowych (Library Cache, Data Dictionary Cache)
DB_CACHE_SIZE - rozmiar bufora danych dla podstawowego rozmiaru bloku danych
PGA
PGA - (dla procesu) pamięć zawierająca kursor, zmienne, obszary sortowania, łaczenia itp.
ustawienie pamięci w spfile:
ALTER SYSTEM SET sga_max_size=[size]M scope=spfile;
ALTER SYSTEM SET sga_target=[size]M scope=spfile;
sprawdzenie zużycia pamięci:
SELECT name,bytes/(1024*1024) as MB FROM v$sgainfo;
SELECT component, min(final_size) low, (min(final_size/1024/1024)) lowMB,

max(final_size) high, (max(final_size/1024/1024)) highMB
FROM v$sga_resize_ops GROUP BY component ORDER BY component;
sprawdzenie ustawień pamięci:
SHOW SGA
SELECT * FROM v$sgastat;
SELECT * FROM  v$pgastat;
SELECT name, value FROM v$parameter WHERE name in ('sga_max_size', 'shared_pool_size','db_cache_size', 'large_pool_size','java_pool_size');
SELECT * FROM v$sgastat WHERE name LIKE 'free memory';