๐ก ์ ๋ ฌ์์ ๊ณผ ํด์ฌ์กฐ์ธ
๐ก
1. ORDER BY
2. SORT MERGE JOIN
3. CREATE INDEX ์์ฑ๋ฌธ ์คํ์
4. ๋ฐ์ดํฐ ๋ถ์ํจ์ ์ฌ์ฉ์
๐ก ๊ฐ๋ฐ์๋ค์ด ๊ณผ๋ํ ์ ๋ ฌ์ ์ผ์ผํค๋ ์
์ฑ SQL์ ์ํํ๊ฒ ๋๋ฉด
PGA ์์ญ์ด ๊ฝ์ฐจ๋ฉด์ SQL์ ์ฑ๋ฅ์ด ๋๋ ค์ง๋๋ค.
SQL> show parameter pga
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
pga_aggregate_limit big integer 2G
pga_aggregate_target big integer 625M
scope=both
: ํ์ฌ ๋ฉ๋ชจ๋ฆฌ์๋ ๋ฐ์ํ๋ฉด์
700m๋ฅผ ์ปดํจํฐ๋ฅผ ๋๊ณ ์ฌ๋ฆฌ๋ฉด์๋ ์๋๋ฐ์ํ๊ฒ ๋ค
SQL> alter system set pga_aggregate_target=700m scope=both;
์์คํ
์ด ๋ณ๊ฒฝ๋์์ต๋๋ค.
SQL> shutdown immediate
๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ ๋ซํ์ต๋๋ค.
๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ ๋ง์ดํธ ํด์ ๋์์ต๋๋ค.
ORACLE ์ธ์คํด์ค๊ฐ ์ข
๋ฃ๋์์ต๋๋ค.
SQL>
SQL> startup
ORACLE ์ธ์คํด์ค๊ฐ ์์๋์์ต๋๋ค.
Total System Global Area 1979709008 bytes
Fixed Size 8898128 bytes
Variable Size 520093696 bytes
Database Buffers 1426063360 bytes
Redo Buffers 24653824 bytes
๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ ๋ง์ดํธ๋์์ต๋๋ค.
๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ ์ด๋ ธ์ต๋๋ค.
SQL>
SQL> show parameter pga
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
pga_aggregate_limit big integer 2G
pga_aggregate_target big integer 700M
๐ก ํด์ฌ์กฐ์ธ์ด ๋ง์ด ์ผ์ด๋๊ณ ๊ณผ๋ํ ์ ๋ ฌ์์ ์ด ๋ง์ด ์ผ์ด๋๋ dw๊ฐ์ db๋ pga ์ฌ์ด์ฆ๋ฅผ ๋๋ ค์ค์ผํจ
๐ก memory_target
SQL> show parameter memory_target
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
memory_target big integer 0
SQL>
๐ก ์์ ํ๋ผ๋ฏธํฐ๊ฐ 0์ผ๋ก ๋์ด์์ผ๋ฉด sga_target๊ณผ pga_aggregate_target์ ์ง์ ์ ์ฉํด์ ์ค์ ํด์ค์ผํจ.
๋ง์ฝ memory_target์ ํฌ๊ธฐ๋ฅผ ์ค์ ํด๋์ผ๋ฉด ์ค๋ผํด์ด ์์์ sga_target๊ณผ pga_aggregate_target์ ์๋์กฐ์ ํฉ๋๋ค.
dba๊ฐ memory_target ์ด๋ผ๋ ํ๋ผ๋ฏธํฐ ํ๋๋ง ์ค์ ํด ๋์ผ๋ฉด ๋๋จธ์ง๋ ์ค๋ผํด์ด ๋ค ์์์ ํฉ๋๋ค.
๋ฎ์๊ฐ: sga > pga
๋ฐค์๊ฐ: sga < pga
memory_target๋ฅผ ๋ฌผ๋ฆฌ์ ๋ฉ๋ชจ๋ฆฌ์ 40~50%๋ก ์ก์์ฃผ๊ธฐ๋ฅผ ๊ถ์ฅํ๋๊น ์ก์๋์ผ๋ฉด ์ค๋ผํด์ด ์์์ ์๋์กฐ์ ํฉ๋๋ค.
ed pga.sql
@pga
col current clear
SELECT b.value "Current", a.value "Max", (a.value - b.value) "Diff"
FROM V$PGASTAT a, V$PGASTAT b
WHERE a.name = 'aggregate PGA target parameter' AND b.name = 'total PGA inuse';
SQL> alter system set pga_aggregate_target=800m scope=both;
์์คํ
์ด ๋ณ๊ฒฝ๋์์ต๋๋ค.
SQL> shutdown immediate
๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ ๋ซํ์ต๋๋ค.
๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ ๋ง์ดํธ ํด์ ๋์์ต๋๋ค.
ORACLE ์ธ์คํด์ค๊ฐ ์ข
๋ฃ๋์์ต๋๋ค.
SQL> startup
ORACLE ์ธ์คํด์ค๊ฐ ์์๋์์ต๋๋ค.
Total System Global Area 1979709008 bytes
Fixed Size 8898128 bytes
Variable Size 520093696 bytes
Database Buffers 1426063360 bytes
Redo Buffers 24653824 bytes
๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ ๋ง์ดํธ๋์์ต๋๋ค.
๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ ์ด๋ ธ์ต๋๋ค.
SELECT e1.sal
from emp e1, emp e2, emp e3, emp e4, emp e5, emp e6, emp e7
order by e3.sal desc;
ใด sql developer์์ ์์ ์ฝ๋๋ฅผ ๋๋ฆฌ๊ณ
SQL> @pga
SQL> /
1) Shared Pool
2) PGA
3) ๋ฒํผ ์บ์
4) ์ ์ ์ธ์ ๋ฐ์ดํฐ
1) ํ
2) ๋ณ๊ฒฝ ์ฌํญ
3) ๋ธ๋ก
4) SQL
๋ต:
1. 2๋ฒ PGA
2. 3๋ฒ ๋ธ๋ก