

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# 3단계 - 전송 단계(소스 데이터베이스는 읽기 전용)
<a name="phase3"></a>

이 단계에서는 소스 시스템이 읽기 전용이 됩니다. 대상 시스템의 데이터 파일은 최종 증분 백업을 적용하여 소스 시스템과 일치시킵니다. 그런 다음 소스 시스템에서 객체 메타데이터를 내보내고 대상 시스템으로 가져옵니다.

## 1단계: 소스 데이터베이스의 테이블스페이스를 읽기 전용으로 설정
<a name="phase3-step1"></a>

SYSDBA로 소스 시스템에서 전송 중인 모든 테이블스페이스`READ ONLY`를 만듭니다.

가동 중지 시간을 줄이기 위해 다음 두 단계를 동시에 실행할 수 있습니다.

## 2단계: 최종 증분 백업 생성
<a name="phase3-step2"></a>

소스 시스템에서 전송 중인 테이블스페이스의 최종 증분 백업을 생성합니다.

```
cd /u01/oracle/expimp/xtt<nn>
export TMPDIR=/u01/oracle/expimp/out/out<nn>
$ORACLE_HOME/perl/bin/perl xttdriver.pl --backup --debug 3
```

이 단계에서는 "ORA-20001: TABLESPACE(S) IS READONLY"와 같은 오류를 반환합니다. 오류가 예상되므로 무시해도 됩니다.

## 3단계: 메타데이터 내보내기
<a name="phase3-step3"></a>

소스 데이터베이스에서 전송 가능한 테이블스페이스의 메타데이터를 내보냅니다.

다음은 전송 가능한 테이블스페이스의 메타데이터를 내보내기 위한 파라미터 파일의 예입니다.

```
directory=dmpdir
metrics=y
dumpfile=xttsmeta%U.dmp
filesize=1048576000
logfile=expxtts.log
transport_tablespaces=
APPS_TS_ARCHIVE,
APPS_TS_INTERFACE,
APPS_TS_MEDIA,
APPS_TS_NOLOGGING,
….
exclude=table_statistics,index_statistics
```

또한 소스 시스템에 테이블과 인덱스가 많은 경우 통계를 제외하여 내보내는 동안 시간을 절약할 수 있습니다. 전송 가능한 테이블스페이스를 가져온 후 대상 시스템으로 통계를 가져옵니다.

를 실행하기 전에 소스 시스템에 덤프 파일이 저장되는 데이터베이스 디렉터리를 `expdp`생성합니다.

```
SQL> create directory dmpdir as <location>;
expdp system/<system password> parfile=<parameter file>
```

다음 두 단계는 RMAN 증분 백업을 사용하는 플랫폼 간 전송 가능한 테이블스페이스의 마지막 단계입니다. 이러한 단계는 순차적으로 수행해야 합니다.

## 4단계: 파일 전송 및 최종 증분 백업 적용
<a name="phase3-step4"></a>

최종 증분 백업 및 내보내기 덤프 파일을 대상 시스템으로 전송하고, 변환하고, 최종 증분 백업을 적용합니다.

 Direct Connect 를 사용하여 최종 증분 백업 복사본과 res.txt 파일을 대상으로 전송합니다. VPN 연결을 사용할 수 있지만 대역폭이 충분하면를 사용하면 가동 중지 시간이 크게 Direct Connect 줄어듭니다.

최종 증분 백업을 복원하려면 대상 시스템에서 옵션을 사용하여 각 테이블스페이스 그룹에 `--restore` 대해 다음 명령을 실행합니다.

```
cd /u01/oracle/expimp/xtt<nn>
export TMPDIR=/u01/oracle/expimp/out/out<nn>
$ORACLE_HOME/perl/bin/perl xttdriver.pl --restore --debug 3
```

## 5단계: 객체 메타데이터 가져오기
<a name="phase3-step5"></a>

Oracle Data Pump를 사용하여 객체 메타데이터를 대상 시스템으로 가져옵니다. 다음 명령을 실행하여 대상 시스템의 `transport_datafiles=` 파라미터에 대한 데이터 파일 목록을 가져옵니다.

```
cd /u01/oracle/expimp/xtt<nn>
export TMPDIR=/u01/oracle/expimp/out/out<nn>
$ORACLE_HOME/perl/bin/perl xttdriver.pl -e
```

이전 명령을 실행할 때마다 `transport_datafiles=` 파라미터가 있는 `xttplugin.txt` 파일을 가져옵니다. 모든 `xttplugin.txt` 파일에서 한 줄`transport_datafiles=`로 병합하고 데이터 파일 목록을 가져오기 메타데이터에 대한 파라미터 파일의 `transport_datafiles` 인수에 넣습니다.

다음 코드 조각은 대상 시스템에서 전송 가능한 테이블스페이스를 가져오기 위한 파라미터 파일을 보여줍니다.

```
directory=dmpdir
metrics=y
dumpfile=xttsmeta%U.dmp
logfile=impxtts.log
exclude=TYPE
transport_datafiles= '+EBSDATA/APPS_TS_TX_DATA_2.dbf','+EBSDATA/APPS_TS_TX_DATA_11.dbf','+EBSDATA/APPS_TS_TX_DATA_22.dbf','+EBSDATA/APPS_TS_TX_DATA_183.dbf','+EBSDATA/APPS_TS_TX_DATA_204.dbf','+EBSDATA/APPS_TS_TX_DATA_219.dbf','+EBSDATA/APPS_TS_TX_DATA_227.dbf'…..
```

를 실행하기 전에 내보내기 덤프 파일의 위치를 가리키는 데이터베이스 디렉터리를 `impdp`생성합니다.

```
SQL> create directory dmpdir as <location>;
impdp system/<system password> parfile=<parameter file>
```