본문 바로가기

Oracle/운영135

UNDO(언두) Segment UNDO란? 데이터베이스의 변경사항을 롤백하거나 실행 취소하는데 사용되는 정보를 생성하고 관리합니다. 이러한 정보는 주로 커밋(Commit)되기 전의 트랜잭션 작업에 대한 기록으로 구성됩니다. 예전버전에서는 Rollback Segment라고 불리기도 했습니다. 사용 용도 - Rollback 명령문 시 트랜잭션 Rollback - Database 복구 - 읽기일관성 제공 - Flashback 기능을 사용하여 논리적 복구 - Flashback Query 사용하여 이전 시점의 데이터 분석 데이터베이스 복구중에 우선 리두 로그를 사용하여 커밋되지 않은 데이터까지 복구(Rollforward)를 수행하고, 그 후 UNDO를 사용하여 커밋된 데이터만 복구(Rollback)하여 데이터베이스 복구를 수행합니다. Orac.. 2020. 10. 14.
로그 마이너(Log Miner) 데이터베이스에 행해진 DML,DDL과 같은 정보는 모두 log file에 남게 됩니다. 이 log file(online redo log, archive log)로 부터 원래의 SQL 문장 및 UNDO를 위한 SQL문장을 뽑아낼 수 있는 기능을 제공하는 LogMiner기능을 Oracle 8i부터 사용할 수 있습니다. LogMiner의 기능 자체가 Drop/Truncate에 대한 복구를 지원한다는 말이 아니라 다만 어느 시점으로 복구를 하면 되는지에 대한 기준을 제시할 수 있습니다. 이점 - 애플리케이션 수준에서 발생한 오류와 같은 데이터베이스의 논리적 손상이 시작되었을 수 있는 시기를 파악 가능 - 트랜잭션 수준에서 세분화 된 복구를 수행하기 위해 취해야 할 조치를 결정할 수 있음 - 추세 분석을 통한 성.. 2020. 10. 12.
테이블 단편화(Fragmentation) 테이블 단편화란 Reorg를 진행해야하는 가장 큰 이유중에 하나입니다. 테이블 단편화의 이슈로 발생할 수 있는 문제점은 아래와 같습니다. 1.성능저하 2.불필요한 disk 용량 증가 이 문제점을 해결하기 위해서 정기적으로 Reorg작업을 수행합니다. Reorg 대상 확인 가장먼저 Reorg 대상을 확인해야 합니다. (통계정보가 최신화 되어 있으면 정확한 분석이 가능합니다. 혹, 영향도가 있다면 테이블 row 전체를 count하여 진행하여도 됩니다.) 아래는 스키마단위로 통계정보를 수동으로 수집하는 명령어입니다. 15%의 sample을 이용하여 통계정보를 재생성하는 명령어입니다. exec dbms_stats.gather_schema_stats('NEWMPDB', estimate_percent=>15); D.. 2020. 10. 8.
Online Move Datafile (12.1 버전 부터 ~) 12c 이전버전까지는 Datafile move작업하기 위해서는 offline -> OS 상에서 CP 혹은 MV -> alter tablespace rename ->online의 순서로 작업을 했어야 했습니다. 필연적으로 offline으로 인한downtime을 가질 수 밖에 없었습니다. 하지만 12c에서부터는 online으로 작업할 수 있는 기능이 생겼습니다. 구문 ALTER DATABASE MOVE DATAFILE ( 'filename' | 'ASM_filename' | file_number ) [ TO ( 'filename' | 'ASM_filename' ) ] [ REUSE ] [ KEEP ] REUSE 키워드는 새 파일이 이미 존재하더라도 생성되어야 함을 의미하고, KEEP은 데이터 파일의 원본 사.. 2020. 10. 6.