ABOUT ME

Today
Yesterday
Total
  • DB - 데이터베이스 내용 dmp파일로 백업하기
    DataBase/Oracle 2025. 2. 19. 09:56
    반응형

    dmp파일 생성하기

    exp {SchemasName}/{PWD} file={fileName}.dmp log={fileName}_export.log owner={SchemasName}

     

    • {SchemasName}: 백업하려는 스키마 이름.
    • {PWD}: 해당 스키마의 비밀번호.
    • {fileName}.dmp: 백업된 덤프 파일의 이름입니다. 예: KRXVOC.dmp.
    • {fileName}_export.log: 백업 로그 파일의 이름입니다. 예: KRXVOC_export.log.
    • owner={SchemasName}: 백업할 스키마 이름을 지정합니다.

    위와같이 파일위치를 지정하지않으면 작업을 진행하던 cmd창에서 실행된 디렉토리에 .dmp파일이 생성된다.

     

    예시:

    exp test/test file=test.dmp log=test_export.log owner=test

     

     

    파일 위치를 지정

    exp {SchemasName}/{PWD} file=C:\backup\KRXVOC.dmp log={fileName}_export.log owner={SchemasName}

     


    1. 데이터를 삽입할 대상 스키마 생성

    CREATE USER {username} IDENTIFIED BY {userpwd};
    GRANT CONNECT, RESOURCE TO {username};
    • CREATE USER {username} IDENTIFIED BY {userpwd};
      • {username}: 생성하려는 사용자의 이름 
      • {userpwd}: 사용자의 비밀번호
    • GRANT CONNECT, RESOURCE TO {username};
      • CONNECT: 사용자가 데이터베이스에 접속할 수 있도록 기본 권한을 부여합니다.
      • RESOURCE: 사용자가 테이블 등을 생성할 수 있는 권한을 부여합니다.

    2. DMP파일 데이터를 새로운 schema에 복원

    imp {SchemasName}/{PWD} file={fileName}.dmp log={fileName}_import.log fromuser={SourceSchema} touser={TargetSchema}

     

    • {SchemasName}/{PWD}: 연결할 사용자 이름과 비밀번호입니다.
    • file={fileName}.dmp: 백업된 덤프 파일의 경로와 파일 이름입니다.
    • log={fileName}_import.log: 복원 과정의 로그 파일 이름입니다.
    • fromuser={SourceSchema}: 덤프 파일에서 데이터를 추출한 원본 스키마 이름입니다.
    • touser={TargetSchema}: 데이터를 삽입할 대상 스키마 이름입니다.

     

    imp test2/test2 file=test.dmp log=test_import.log fromuser=test touser=test2

     

    • 이 명령어는 test.dmp 덤프 파일을 test스키마에서 test2스키마로 복원합니다.
    • fromuser=test는 데이터를 원본 스키마에서 가져오고, touser=test2는 복원할 대상 스키마입니다.

     

    • fromuser: 원본 스키마에서 데이터를 가져옵니다.
    • touser: 데이터를 복원할 대상 스키마를 지정합니다.
    • file: 덤프 파일을 지정합니다.
    • log: 복원 과정의 로그 파일을 생성합니다.

     

    주의 사항:

    1. 스키마 생성: touser에 지정된 대상 스키마가 미리 생성되어 있어야 합니다.
    2. 권한 부여: 대상 스키마에 필요한 권한(CONNECT, RESOURCE 등)이 있어야 합니다.
    3. 데이터베이스 연결: @DBNAME 부분은 실제 데이터베이스의 이름을 입력해야 하며, TNS 설정이 정확히 되어 있어야 합니다.

     

     

    반응형

    'DataBase > Oracle' 카테고리의 다른 글

    댓글

Designed by Tistory.