SQL

데이터 펌프(Data Pump)

class="song" 2026. 2. 4.
728x90

데이터 펌프(Data Pump: expdp, impdp)

  • 오라클에서 제공하는 고성능 데이터 이동 도구
  • 덤프(Dump: exp, imp)보다 더 빠르고 효율적으로 export, import
  • 대용량 데이터베이스 작업에 성능 뛰어남

특징

1. 성능향상
    1-1 병렬처리(Parallel Processing)
        - 여러 프로세스를 동시에 실행하여 데이터를 빠르게 내보내고 가져올 수 있음
        - 데이터가 많을수록 성능 크게 향상 - 대용량 데이터베이스 데이터 이동에 적합

    1-2 네트워크 이동성(network mode)
        - 원격 데이터베이스로 직접 이동할 수 있는 기능
        0 중간 .dmp 파일을 생성하지 않고도 다른 오라클 인스턴스로 바로 전송 가능

2. 유연성 및 제어
    2-1 필터링 및 선택적 내보내기
        - 테이블, 인덱스등 특정 오브젝트만 내보거내거나 가져오는  세부적인 제어 기능

    2-2 데이터 변환
        - remap_schema, remap_tablespace, demap_data 등의 기능을 사용하여 내보낼 객체의 이름 변경 가능

    데이터 덤프 분할
        - 대용량의 데이터 덤프 파일을 여러 개의 파일로 나누어 저장할 수 있다.

3. 작업 복원력 및 관리
    3-1 로그 파일 생성
        - expdp, impdp  작업 시 로그파일을 생성하여 작업의 진행상태, 오류 원인 등을 쉽게 파악할 수 있음

4. 디렉토리 객체 사용
    - 파일 시스템 접근을 위해 디렉토리 객체를 사용
        -> 이는 보안과 관리의 효율성을 높이고 데이터가 저장될 위치를 명확하게 지정할 수 있게 해준다.

주요 기능

1. expdp(데이터 내보내기)
    1-1 기본 구문
        - expdp username/password DIRECTORY=디렉토리명 DUMPFILE=덤프파일명 LOGFILE=로그파일명 ...(그외 옵션)

    1-2 옵션
        - DIRECTORY: 덤프파일과 로그파일이 저장될 디렉토리 객체 이름
        - DUMPFILE: 내보낸 데이터가 저장될 파일명
        - LOGFILE: 작업 진행 상황을 기록할 로그 파일 이름
        - SCHEMA: 내보낼 스키마 지정(하나 이상 가능, 쉼표<,>로 구분
        - TABLES: 특정 테이블만 내보내기
        - CONTENT: 내보낼 데이터 종류
            - DATA_ONLY: 데이터만
            - METADATA_ONLY: 테이블 형태(테이블명, 컬럼, PK 등)만
            - ALL: 데이터 + 테이블 형태
        - QUERY: 조건절을 사용하여 일부 데이터만 내보내기
        - EXCLUDE / INCLUDE: 내보내거나 제외할 객체 유형 지정(TABLE/INDEX등)
        - PARALLEL: 병렬 작업 수행(빠르게 작업하기 위해 여러개의 프로세스로 동시에 작업. 프로세스 개수를 지정함 - ex: PARALLEL=8



2. impdp(데이터 가져오기)
- 기본구문, 옵션 동일 expdp -> impdp 만 바꾸면 됨)
728x90

댓글