View a markdown version of this page

3단계 - 전송 단계(소스 데이터베이스는 읽기 전용) - AWS 권장 가이드

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

3단계 - 전송 단계(소스 데이터베이스는 읽기 전용)

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

1단계: 소스 데이터베이스의 테이블스페이스를 읽기 전용으로 설정

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

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

2단계: 최종 증분 백업 생성

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

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단계: 메타데이터 내보내기

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

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

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단계: 파일 전송 및 최종 증분 백업 적용

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

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단계: 객체 메타데이터 가져오기

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>