Docker로 실행중인 경우

Docker로 실행중인 경우 데이터 불러오기/내보내기

docker를 이용하여 오라클을 실행 중인 경우 데이터베이스를 내보내거나 불러오기 위해서는 docker에 명령을 내려야 한다. 결과 파일 역시 docker 내부에 생성되며 이를 외부 OS로 복사하여 가져와야 사용할 수 있다.

데이터베이스 전체 내보내기

docker exec 명령 뒤에 기존처럼 exp 명령을 사용하여 전체 내보내기를 수행할 수 있다.

> docker exec -it 컨테이너이름 exp userid=system/관리자비밀번호 file=덤프파일위치 full=y

데이터베이스 전체 불러오기

docker exec 명령 뒤에 기존처럼 imp 명령을 사용하여 전체 불러오기를 수행할 수 있다.

> docker exec it 컨테이너이름 imp userid=system/관리자비밀번호 file=덤프파일위치 full=y

데이터베이스 계정 내보내기

위와 마찬가지로 docker 명령만 추가되며, 내보내기 / 불러오기를 참조한다.

> docker exec it 컨테이너이름 exp userid=system/관리자비밀번호 file=덤프파일위치 owner=내보낼계정명

Docker 내보내기 경로 설정

docker에서 덤프파일 위치는 어떤 이미지냐에 따라 위치가 다르다. 대부분의 oracle container는 linux 기반이므로 다음과 같이 /usr경로를 설정하면 종류 무관하고 사용할 수 있다.

docker exec it 컨테이너이름 exp userid=system/비밀번호 file=/usr/database.dmp owner=계정명

Docker에서 내보낸 덤프 Local로 복사

다음 명령으로 Docker의 파일을 Local로 복사한다.

docker cp 컨테이너명:컨테이너파일위치 로컬파일위치

oracle11g 컨테이너의 /usr/database.dmpmac의 사용자 폴더에 같은 이름으로 복사하기 위한 구문은 다음과 같다.

docker cp oracle11g:/usr/database.dmp ~/database.dmp

데이터베이스 계정 불러오기

위와 마찬가지로 docker 명령만 추가되며, 내보내기 / 불러오기를 참조한다.

Last updated