테이블복구 (
Nologging 시 적용 안되는 듯 함. )
DB TableSpace 의 각각의 Table 사용용량 확인하기
select * from dba_segments
Where TableSpace_Name = 'EJREVENUE' Order by Segment_Name
--and Segment_Type = 'Table'
Order by Segment_Type Desc, Bytes Desc
Order by Segment_Type Desc, Segment_Name,
Bytes Desc
select count(*) from RevenueSegmentHistory -- 9023826
select Sum(Blocks), Sum(Bytes) from dba_segments Where TableSpace_Name = 'EJREVENUE' --- 1033456 84 6607 1552
--- 426520 34 9405 1840
---
265792 21 7736 8064
Oracle 복구 관련
SELECT * FROM TAB
WHERE
TNAME NOT LIKE 'BIN%';
Select * from RMInvoiceSummary As Of Timestamp(SysTimeStamp - Interval '979' Minute)
Where InvoiceDate = '20100115';
Interval 이 980 분 즉 16 시간 20 분이 경과하기 전까지는 해당 데이터가 보여지는 것으로 나옴.
Select * from Test As Of Timestamp(SysTimeStamp - Interval '15' Minute);
--> 15분전에 존재했던
데이터들이 Select 가 된다.
--> 여기서 복구하려면
Insert Into Test
Select * from Test As Of Timestamp(SysTimeStamp - Interval '15' Minute);
TimeStamp point 활용을 통한
데이타 복구는 정해진 시각의 제한이 있다.
이것이 혹시 guarantee time 인가 ?
Create Restore point RMI20101012
Guarantee Flashback Database;
Select * from v$restore_point;
Flashback Database To Restore Point
RMI20101012;
Alter System set
db_recovery_file_dest_size=5G scope = both;
Alter Database Flashback On;
Alter Database Open;
'Oracle' 카테고리의 다른 글
MSSQL 테이블 정보 조회 (0) | 2011.06.05 |
---|---|
Materialized View Refresh Option (0) | 2011.06.05 |
Oracle DBMS_OBFUSCATION_TOOLKIT.DESENCRYPT (0) | 2011.05.11 |
Oracle Lock (0) | 2011.05.03 |
Read Consistency (0) | 2011.05.03 |