SAP R3trans 를 사용한 테이블 Export/Import__ R3trans Table Export / Import Guide

감귤은탱귤·2024년 1월 8일
0

SAP BC - 기초

목록 보기
4/37
post-thumbnail

R3trans 를 이용한 테이블 Export / Import 는 <SID>adm 계정을 사용한다.

R3trans 는 SAP 시스템 간에 마이그레이션 등의 사례에서 데이터를 전송하는데 사용되는 SAP 도구이다.

SAP Notes 1942 - How does R3trans work?

SAP 시스템을 운영하다 보면, 가끔 단일 테이블 또는 소수의 테이블에 대해서 DEV-QAS-PRD 시스템 사이, 또는 다른 SAP 시스템으로 데이터를 이관해야 하는 일이 생긴다. (테이블 복구, 테스트 데이터셋 필요, 데이터 정합성 맞추기 등등)

테이블 데이터를 이관 방법에 대해서는 여러가지 방법이 있는데, 여기서는 R3trans 를 통해 테이블 데이터를 이관하는 방법에 대해 설명한다.

여러 방법 중 R3trans 를 사용하는 방법은 다음과 같은 장점이 있다.

  1. OS, DB 와 독립적(Independent) 이다.
    따라서, 옮기는 시스템 사이에 OS, DB 차이가 있어도 이관이 된다. 또한 Oracle, HANA 관계없이 R3trans 만 있다면 가능하다.
    (ECC/Oracle -> S4/HANA 이관도 가능하다.)

  2. Export 조건을 설정할 수 있다.
    전체 데이터 또는, 필요한 데이터에 대해서만 Export 가 가능하다.

  3. 클라이언트 번호를 변경하여 Import 가 가능하다.

R3trans 외 에도 다음과 같은 방법으로 테이블 데이터를 이관할 수 있다.
1. SAP CTS 를 이용한 테이블 엔트리 전송 (복사전송)
2. 마이그레이션 툴 사용
3. (오라클 DB의 경우) 오라클 export, import
4. (오라클 DB의 경우) 오라클 Data Pump expdp, impdp

R3trans Export

1. Export Control 파일 작성

Export 조건을 설정할 Control 파일을 작성한다. 작성 구문은 다음과 같다.

export
client = 'Export 시스템의 클라이언트'
file = 'Export 파일이 저장되는 위치'
SQL 조건 구문
  • Export Control 파일 예시
  1. 개발시스템 300 클라이언트에서 ZTEST1 테이블 전체를 Export 하여, /usr/sap/trans/exp_test 에 덤프파일 ZTEST1.dump 저장

    export
    client = 300
    file = '/usr/sap/trans/exp_test/ZTEST1.dump'
    select * from ZTEST1
  2. 개발시스템 320 클라이언트에서 ZSET1, ZSET2, ZSET3 테이블 전체를 Export 하여, /SAP_NAS 에 덤프파일 ZSET.dump 저장

    export
    client = 320
    file = '/SAP_NAS/ZSET.dump'
    select * from ZSET1
    select * from ZSET2
    select * from ZSET3
  3. 운영시스템 100 클라이언트에서 ZPRD1 테이블의 ZFLAG = 'X' 인 값만 Export 하여, /SAP_NAS 에 덤프파일 ZPRD1_ZFLAG_X.dump 저장

    export
    client = 100
    file = '/SAP_NAS/ZPRD1_ZFLAG_X.dump'
    select * from ZPRD1 where ZFLAG = 'X'
  4. 품질시스템 210 클라이언트에서 ZQAS1 테이블전체를 Export 하여, /SAP_NAS 에 덤프파일 ZQAS1.dump 저장, Import 전에 ZQAS1 테이블의 모든 데이터를 삭제하고 Import 하도록 설정

    export
    client = 210
    file = '/SAP_NAS/ZQAS1.dump'
    delete from ZQAS1
    select * from ZQAS1

Export Control 파일 SQL 구문은 명령이 아니므로 delete 구문은 Export 시스템의 데이터에 영향을 주지 않는다.
여기서 delete 구문은 Import 전에 Import 대상 시스템에서 이전 내용을 삭제할때 사용된다.

2. R3trans Export 실행

작성된 Export Control 파일을 사용하여, Export 를 수행한다.

R3trans -w <Export Log 파일 위치> <Export Control 파일 위치>

  • Export 수행 예시
  1. 현재 프롬프트 위치에 로그파일 exp_test.log 를 남기고, 현재 위치의 컨트롤 파일 exp_test.ctl 를 사용하여 R3trans Export 수행
    R3trans -w exp_test.log exp_test.ctl

  2. 현재 프롬프트 위치에 로그파일 exp_Z1.log 를 남기고, /usr/sap/trans/exp_test 위치의 exp_Z1.ctl 컨트롤 파일을 사용하여 R3trans Export 수행
    R3trans -w exp_ZZ.log /usr/sap/trasn/exp_test/exp_Z1.ctl

R3trans Import

1. Import Control 파일 작성

Export 때와 마찬가지로, Import Control 파일을 작성한다. 구문의 다음과 같다.

import
client = 'Import 시스템의 클라이언트'
file = 'Import 할 파일의 저장 위치'
  • Import Control 파일 예시
  1. 개발시스템 350 클라이언트에 /usr/sap/trans/exp_test/ZTEST1.dump 덤프 파일을 Import

    improt
    client = 350
    file = 'usr/sap/trans/exp_test/ZTEST1.dump'
  2. 품질시스템 200 클라이언트에 /SAP_NAS/ZSET.dump 덤프 파일을 10만건 당 Commit 하여 Import

    import
    client = 200
    file = '/SAP_NAS/ZSET.dump'
    commit = 100000

2. R3trans Import 실행

작성된 Import Control 파일을 사용하여, Import 를 수행한다.

R3trans -w <Import Log 파일 위치> <Import Control 파일 위치>

  • Import 수행 예시
  1. 현재 프롬프트 위치에 로그파일 imp_test.log 를 남기고, 현재 위치의 컨트롤 파일 imp_test.ctl 를 사용하여 R3trans Import 수행
    R3trans -w imp_test.log imp_test.ctl
profile
SAP BC (2019 ~ )

0개의 댓글