보라코딩

docker로 oracle 사용하기 본문

코딩/DB

docker로 oracle 사용하기

new 보라 2023. 10. 15. 10:40

Docker Image Pull 

docker pull jaspeen/oracle-xe-11g

Docker Run

docker run --name (컨테이너 이름) -d -p 8080:8080 -p 1521:1521 jaspeen/oracle-xe-11g

잠깐! 여기에 volume도 설정하기 (오라클 db 저장될 공간 설정)

docker run --name (컨테이너 이름) -d -p 8080:8080 -p 1521:1521 -v (위치) jaspeen/oracle-xe-11g

 

 

잠깐! 공부하기!
  • --name (컨테이너 이름): 이 부분은 Docker 컨테이너에 이름을 할당하는 옵션입니다. "(컨테이너 이름)" 자리에 원하는 컨테이너 이름을 지정할 수 있습니다. 컨테이너를 고유하게 식별하는 데 사용됩니다.
  • -d: 이 옵션은 컨테이너를 백그라운드에서 실행하도록 지시하는 옵션입니다. 컨테이너를 백그라운드에서 실행하려면 이 옵션을 사용합니다.
  • -p 8080:8080: 이 부분은 포트 포워딩 또는 포트 매핑을 설정하는 부분입니다. 이 부분은 로컬 시스템의 8080 포트를 컨테이너 내의 8080 포트로 연결합니다. 이것은 컨테이너 내에서 실행 중인 애플리케이션 또는 서비스가 로컬 시스템의 8080 포트를 통해 액세스할 수 있도록 만듭니다. 예를 들어, 웹 애플리케이션을 컨테이너에서 실행하고 8080 포트를 통해 웹 브라우저에서 액세스하려는 경우에 유용합니다.
  • -p 1521: 이 부분은 또 다른 포트 포워딩을 설정하는 부분입니다. 하지만 이것은 오라클 데이터베이스의 포트를 컨테이너 내의 1521 포트로 연결하는 것입니다. 오라클 데이터베이스는 주로 1521 포트를 사용하여 클라이언트와 데이터베이스 간의 통신에 사용됩니다. 따라서 컨테이너에서 실행 중인 오라클 데이터베이스에 접속하려면 호스트 시스템의 1521 포트를 통해 연결할 수 있게 됩니다.

 

 

오라클 실행하기

docker exec -it (컨테이너이름) sqlplus

 

기본 설정값을 입력한다!

userName:system
password:oracle

 

 

sql developer 

사용자이름에 system

비밀번호에 oracle넣고

 

Name에는 원하는 테이블 이름 넣는다!

 

완료! 인줄 알았으나...

 

 

 

 

 

으잉 갑자기 이상한 에러가..!

the password will expire within 7 days

 

해결방법
SELECT RESOURCE_NAME, LIMIT
FROM DBA_PROFILES
WHERE PROFILE = 'DEFAULT' AND RESOURCE_TYPE = 'PASSWORD';

 

ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;

 

 

 


 

docker ps 하면 현재 실행 중인 오라클이 보이고

중지는 아래 참고!

 

 

# 개별 컨테이너 중지
$ docker container stop {컨테이너ID 앞 3자리}
# 개별 컨테이너 삭제
$ docker container rm {컨테이너ID 앞 3자리}
# 모든 컨테이너 중지
$ docker stop $(docker ps -a -q)
# 모든 컨테이너 삭제
$ docker rm $(docker ps -a -q)

 

'코딩 > DB' 카테고리의 다른 글

MySQL 옵티마이저  (0) 2024.06.28
Postgres 장점 (MVCC)  (0) 2024.06.13
몽고DB 설치  (0) 2023.08.25
MySQL 블로그 테이블 생성  (0) 2023.08.10
MariaDB 데이터베이스 설정  (0) 2023.07.24