๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
ORACLE/Backup & Recovery

[Oracle] Flashback Data Archive ๋ฐ์ดํ„ฐ ๋ณต์› ์ž‘์—…

by ๐ŸŒปโ™š 2020. 7. 21.

Flashback Data Archive(11g)

DML ์ž‘์—…์„ ํ•˜๋ฉด์„œ ์‹ค์ˆ˜๋ฅผ ์ €์งˆ๋Ÿฌ๋ฒ„๋ฆฌ๊ณ  commit๊นŒ์ง€ ํ•ด๋ฒ„๋ฆฌ๋Š” ๊ฒฝ์šฐ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ์‹ค์ˆ˜๋กœ delete๋ฌธ์— ์กฐ๊ฑด์ ˆ์„ ํฌํ•จํ•˜์ง€ ์•Š์•„ ๋ชจ๋“  ๋ฐ์ดํ„ฐ๊ฐ€ ์‚ฌ๋ผ์ง€๋Š”... ๊ทธ๋Ÿฐ ๊ฒฝ์šฐ๊ฐ€ ์ƒ๊ธธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Flashback ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•˜๋ฉด ์ด๋Ÿฐ ์ƒํ™ฉ์—์„œ ๋ณต๊ตฌ๊ฐ€ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ Undo Data๋ฅผ ๊ธฐ๋ณธ์ ์œผ๋กœ ์‚ฌ์šฉํ•˜๋Š” Flashback ๊ธฐ๋Šฅ์€ undo_retention ํŒŒ๋ผ๋ฏธํ„ฐ์— ๋”ฐ๋ผ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณต๊ตฌํ•˜์ง€ ๋ชปํ•˜๋Š” ์ƒํ™ฉ์ด ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. undo_retention์€ ๊ธฐ๋ณธ์œผ๋กœ 900์ด๋ฏ€๋กœ 15๋ถ„์ด ์ง€๋‚˜๋ฉด undo์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ์ฝ์–ด์˜ค์ง€ ๋ชปํ•˜์—ฌ Flashback ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•ด์„œ ๋ณต๊ตฌ๊ฐ€ ์•ˆ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿด๋•Œ๋Š” Flashback Data Archive๋ฅผ ์ƒ์„ฑํ•˜์—ฌ Undo Data๋ฅผ ์˜ค๋žœ ๊ธฐ๊ฐ„ ๋ณด์กดํ•˜์—ฌ Flashback ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. 

 

 

 

Flashback Data Archive ์‹ค์Šต

์‹ค์Šตํ™˜๊ฒฝ

OS : Red Hat Enterprise Linux Server release 6.10
DB : Oracle 11.2.0.1
SID : orcl
host : 601d2fce71dc

 

Flashback Data Archive ์ „์šฉ Tablespace ์ƒ์„ฑ

SYS@orcl> create tablespace flash_tbs datafile '/opt/oracle/app/oradata/orcl/flash_tbs01.dbf' size 50m;

Tablespace created.

Flashback Data Archive๋ฅผ ์ด์šฉํ•˜์—ฌ Undo Data๊ฐ€ ์ €์žฅ๋  Tablespace๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.

 

 

Flashback Data Archive ๊ด€๋ฆฌ ์œ ์ € ์ƒ์„ฑ

SYS@orcl> create user fra_admin identified by oracle default tablespace flash_tbs;

User created.

Flashback Data Archive๋ฅผ ๊ด€๋ฆฌํ•  ์œ ์ €๋ฅผ ์ƒ์„ฑํ•ด์ฃผ๊ณ  ์œ„์—์„œ ์ƒ์„ฑํ•œ tablespace๋ฅผ default๋กœ ์ง€์ •ํ•ด์ค๋‹ˆ๋‹ค.

 

 

SYS@orcl> grant resource, connect, unlimited tablespace to fra_admin;

Grant succeeded.

์„ธ์…˜์ ‘์†๊ณผ ๊ธฐ๋ณธ์ ์œผ๋กœ ์˜ค๋ธŒ์ ํŠธ๋ฅผ ๋‹ค๋ฃจ๋Š”๋ฐ ํ•„์š”ํ•œ ๊ถŒํ•œ๊ณผ tablespace์— ๋Œ€ํ•œ ์ ‘๊ทผ ๊ถŒํ•œ์„ ๋ถ€์—ฌํ•ด์ค๋‹ˆ๋‹ค.

 

 

SYS@orcl> grant flashback archive administer to fra_admin;

Grant succeeded.

Flashback Archive Segment๋ฅผ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ๋Š” ๊ถŒํ•œ์„ ๋ถ€์—ฌํ•ฉ๋‹ˆ๋‹ค.

 

 

 

Flashback Data Archive ์ƒ์„ฑ

SYS@orcl> conn fra_admin/oracle
FRA_ADMIN@orcl> create flashback archive fra1 tablespace flash_tbs retention 6 month;

Flashback archive created.

fra_admin์œผ๋กœ ์ ‘์† ํ›„, Undo Data ๋ณด์กด ๊ธฐ๊ฐ„์ด 6๊ฐœ์›”์ธ Flashback Data Archive๋ฅผ ์ƒ์„ฑํ–ˆ์Šต๋‹ˆ๋‹ค.

 

FRA_ADMIN@orcl> create flashback archive fra2 tablespace flash_tbs retention 2 year;

Flashback archive created.

Undo Data ๋ณด์กด ๊ธฐ๊ฐ„์ด 2๋…„์ธ Flashback Data Archive๋ฅผ ์ƒ์„ฑํ–ˆ์Šต๋‹ˆ๋‹ค.

 

FRA_ADMIN@orcl> conn / as sysdba
Connected.
SYS@orcl> alter flashback archive fra2 set default;

Flashback archive altered.

fra2๋ฅผ Default Flashback Data Archive๋กœ ์„ค์ •ํ–ˆ์Šต๋‹ˆ๋‹ค.

 

 

FRA_ADMIN@orcl> col flashback_archive_name for a10

FRA_ADMIN@orcl> 
select 
    flashback_archive_name
    ,retention_in_days
    ,status 
from dba_flashback_archive;

์ƒ์„ฑ์ด ์™„๋ฃŒ๋œ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

 

Historical Data Access

FRA_ADMIN@orcl> grant flashback archive on fra1 to sh;

Grant succeeded.

Flashback Archive์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋Š” ๊ถŒํ•œ์„ ๋ถ€์—ฌํ•ฉ๋‹ˆ๋‹ค. sh๊ณ„์ •์—์„œ fra1์— Undo data์˜ ๋‚ด์šฉ์„ ์ €์žฅํ•  ์ˆ˜ ์žˆ๋„๋ก ๊ถŒํ•œ์„ ๋ถ€์—ฌํ•ด์คฌ์Šต๋‹ˆ๋‹ค.

 

 

FRA_ADMIN@orcl> conn sh/sh
Connected.
SH@orcl> alter table sales flashback archive fra1;

Table altered.

fra1์— sales ํ…Œ์ด๋ธ”์—์„œ ๋ฐœ์ƒํ•˜๋Š” Undo์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๊ธฐ๋กํ•˜๋„๋ก ์„ค์ •ํ–ˆ์Šต๋‹ˆ๋‹ค.

 

 

SH@orcl> conn fra_admin/oracle
Connected.
FRA_ADMIN@orcl> select * from dba_flashback_archive_tables;

Fashback Archive์— ๋“ฑ๋ก๋œ ํ…Œ์ด๋ธ”์˜ ์ •๋ณด๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

Flashback Archive์— ๋“ฑ๋ก๋œ ํ…Œ์ด๋ธ”์— ํ•œํ•ด์„œ undo_rention ํŒŒ๋ผ๋ฏธํ„ฐ์˜ ๊ฐ’์ด ์•„๋‹Œ Flashback Archive์˜ retention ๊ธฐ๊ฐ„๋งŒํผ ๋ฐ์ดํ„ฐ๊ฐ€ ๋ณด์กด๋˜์–ด Flashback ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

์›์น™์ƒ์œผ๋กœ undo_retention๊ฐ’์ด ์ง€๋‚˜๋ฉด ๋”์ด์ƒ Undo์— ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด์กดํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์‹ค์ œ๋กœ ํ…Œ์ŠคํŒ… ์ž‘์—…์„ ํ•ด๋ณด๋ฉด undo_retention ๊ธฐ๊ฐ„๋งŒํผ ์ง€๋‚˜๋„ undo์˜ ๋ฐ์ดํ„ฐ๊ฐ€ ์ฝ์–ด์ง€๋Š” ๊ฒฝ์šฐ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. 11g, 12c ๋ฒ„์ „์—์„œ ํ…Œ์ŠคํŒ… ์ž‘์—…์„ ํ•ด๋ดค๋Š”๋ฐ undo_retention ๊ธฐ๊ฐ„์ด ์ง€๋‚˜๋„ ํ•ด๋‹น ๋ฐ์ดํ„ฐ๊ฐ€ ์ฝํžˆ๋Š” ๊ฒƒ์„ ํ™•์ธํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด๋Š” OS ํ™˜๊ฒฝ์ด๋‚˜ ๋ฒ„์ „์— ๋”ฐ๋ž€ ์ผ์ข…์˜ Oracle Bug์™€ ๋น„์Šทํ•œ ๊ฒƒ์ด๋ผ๊ณ  ๋ด์•ผํ•  ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

 

 

 

๋Œ“๊ธ€