IT기술/Oracle 119

00 SQL 실행 계획 확인

요약 - recursive call 을 줄여라 - hard parse 를 줄이고, soft parse 를 유도 = db block gets 나만볼 수 있음 = consistent gets 모든 사람이 봄 = physical reads 디스크에서 읽음 실행계획 순서 가장 오른쪽으로 들여쓰기 된 놈부터 위로 차례대로 가다가 같은 depth가 있으면 확인 후 더 낮은 depth 가 있으면 거기로 고 다시 차례로 실행 SQL 실행 계획 확인 방법 • SQL 튜닝을 위한 기본적인 툴 • SQL Plus의 Autotrace 기능 – 가장 일반적인 방법 – 실행 결과, 실행 계획, 통계 정보 • Oracle Enterprise Manager – SQL 스크래치 패드(GUI 환경) • EXPLAIN PLAN 명령어 사..

IT기술/Oracle 2014.01.09

05 RAC 백업 복구 (RAW DEVICE 기반) 2 논리적 장애

Case 12. Drop table 삭제 복구하기- 무정지 상태에서 즉시 복구하기 – clone db / exp / imp 사용함* 사용자의 장애로 drop 된 특정 테이블을 삭제되기 전 상태로 복구해야만 합니다.중요한 것은 현재 서비스는 중단되어서는 안 된다는 것입니다. 테이블 삭제 시간은 알고 있는 것으로 가정합니다. * 실제 작업 순서Step 1. 현재 상태 백업 (Begin backup)Step 2. 테스트 테이블 생성 후 데이터 입력 – 최종 데이터 커밋 후 시간 확보할 것Step 3. Drop table 장애 발생Step 4. Rac1 노드에서 clone db 생성 작업 Step 5. Rac1 노드에서 clone db로 복구한 테이블을 exp 후 imp 해서 복구 완료함 Step 1. 현재 상..

IT기술/Oracle 2014.01.08

05 RAC 백업 복구 (RAW DEVICE 기반) 1 물리적 장애

이번 장에서는 Raw device 기반의 Oracle Real Application Cluster (이하 RAC)환경에서 어떻게 백업을 하고 장애가 발생했을 경우 어떻게 복구를 하는지 살펴 보도록 하겠습니다.( RAC 의 Storage를 구현하는 방법이 앞에서 살펴본 바와 같이 Automatic Storage Management (이하 ASM) 방식과 Raw Device (로우 디바이스) 방식이 있는데 ASM 기반의 백업 및 복구는 저자의 다른 저서인 오라클 관리 실무 와 오라클 백업과 복구의 정석의 ASM 과 RMAN 부분을 참고 하시면 됩니다.)그리고 RAC 구성에서의 장애 중에서 물리적인 하드웨어나 네트워크 관련 장애는 거의 발생하는 경우가 드물고 주로 사용자의 실수 등의 논리적 장애가 많이 발생하..

IT기술/Oracle 2014.01.08

17 Block Corruption and Repair

이번 장에서는 오라클 장애 중에서 가장 난해한 부분 중 한가지 인 Block Corruption 장애를 살펴보겠습니다.이번 장에서 살펴볼 내용을 간단히 정리하면 아래와 같습니다. 데이터가 저장되는 Block 들에 corruption 이 발생 할 경우에 Recovery 할 수 있는 가장 보편적이고 일반적인 기술들에 대해서 실습을 통해서 알아봅니다. 1. DBVerify 를 이용한 Block Recovery 2. DBMS_REPAIR 을 이용한 Block Recovery 그리고 마지막으로 공식적으로 문서화 되어 있지 않지만 아주 중요하고 막강한 Block Recovery tool 인 BBED 라는 툴을 살펴보고 BBED 툴을 이용하여 여러 가지 장애가 발생할 경우 어떻게 복구를 할 수 있는지예를 통해서 Bl..

IT기술/Oracle 2014.01.03

14 Recovery Manager

1. RMAN 의 주요 특징- 자주 실행하는 작업을 스크립트로 저장- 증분 블록 레벨 백업 가능 지원- 사용되지 않은 블록 건너뛰고 백업 수행- 백업 수행 중 훼손된 블록 감지- ASM 기반 유일한 백업 도구- 백업 수행 시 압축 지원 2. RMAN 은 기본적으로 PGA 를 사용하며 공간이 부족할 때 SGA (Large Pool, Shared Pool) 을 사용한다. 3. Channel 설정하기1) 자동 Channel 설정하기 (default)별도의 경로를 주지 않아도 정해진 위치에 백업을 받는 것 복구 카탈로그 서버 이용시$ rman target / catalog rcuser/rcuser@rcserver 복구 카탈로그 서버 사용 안할 경우$ rman target sys/oracle 자동 channel ..

IT기술/Oracle 2014.01.02

13 Flashback

물리적인 장애 : 디스크 장애나 서버 장애 등으로 인한 파일 손상논리적인 장애 : 사용자의 실수나 오류로 발생한 장애 Flashback 기능은 사용자의 논리적 오류를 아주 빠르게 복구할 수 있는 방법이다.물리적인 장애는 복구할 수 없다. 1. Row Level Flashback2. Table Level Flashback3. Database Level Flashback 1. Row Level Flashback 실무실습1 Row Level Flashback 실습특정 Row 만 Flashback 하는 기능9i 버전에서 Flashback Query 는 특정 시점의 변경 내역만 알 수 있었으나,10g 부터 Version Query 가 추가되면서 구간 검색을 할 수 있게 되었습니다.변경 사항을 취소시켜 이전 값으로..

IT기술/Oracle 2013.12.31

12 백업 파일이나 아카이브 로그에 문제 있을 때 복구하기 (Clone DB 와 Export/Import 사용)

12.1 데이터 파일끼리 SCN 다르고 아카이브 로그없는 상황 복구하기이 장애는 데이터 파일 백업을 잘못 수행해서 백업된 데이터 파일끼리 SCN 정보가 다르고 아카이브 로그조차도 없는 최악의 상황일 경우에 발생한 것입니다.당연히 이런 장애는 없어야 하고, 또 여기서 언급하는 방법으로 100% 복구되는 것도 아님을 밝혀 둡니다. 노아카이브 모드로 변경SQL> startup mount ;SQL> alter database noarchivelog ;SQL> alter database open ; 노아카이브 모드로 변경된 것을 확인SQL> archive log list ;SQL> select name from v$datafile ;SQL> ! $ mkdir /data/backup/tempBegin backup ..

IT기술/Oracle 2013.12.30

11 SQL Loader 를 활용한 대량 데이터 입력하기

Conventional Path : 자주 사용하는 블록을 메모리에 공유해서 디스크 I/O 를 줄이기 위해 도입된 방식HWM (High Water Mark) 사용HWM Bump Up 을 하며 대량의 데이터를 입력할 때 성능 저하 Direct Path : 메모리를 거치지 않고 데이터 파일로 바로 데이터를 입력하는 것처음부터 HWM 오른쪽에 비어있는 블록에 한꺼번에 데이터를 입력하고 commit 하는 방식단점은 해당 입력 작업시 Exclusive Lock 을 설정하기 때문에 동시 작업이 어렵다.사용량이 적은 시간에 작업해야 한다. SQL Loader : 다른 응용 프로그램에 저장되어 있던 대량의 데이터를 오라클로 이전할 때 유용하게 사용할 수 있는 유틸리티환경 변수 체크NLS_LANGORACLE_HOMELD_..

IT기술/Oracle 2013.12.30

14 Datapump 와 Migration

1. Datapump 의 장점1) 일시 중단 시켰다가 다시 시작 가능2) 필요한 디스크 공간 예측 가능3) 원격지에 있는 데이터베이스에 expdp / impdp 작업 가능4) remapping 기능 지원5) dump 작업하면서 압축 동시 진행6) 빨라진 작업 속도 2. 사용 전 환경설정$ mkdir /data/datapumpSQL> create or replace directory datapump as '/data/datapump' ;SQL> grant read,write on directory datapump to scott ;SQL> grant create any directory to scott ; export 는 expdp, import 는 impdp 명령 사용 3. expdp 실행 모드1) Fu..

IT기술/Oracle 2013.12.27