DataBase/STUDY

[Oracle] Docker를 이용한 Oracle 설치

코맹 2024. 6. 13. 11:40

윈도우 서비스 내(services.mnsc) Oracle관련 서비스 종료

[윈도우 + R] -> services.msc 입력

 

- OracleServiceXE 시작유형: 수동으로 바꾼 후 중지 시키기

 

Oracle과 관련된 service 모두 수동, 중지

 

 

Docker에서 Oracle 이미지 컨테이너를 다운로드 후 실행

Docker Desktop starting 클릭

 

명령 프롬프트창 켜기

  > docker --version
  Docker version 26.1.1, build 4cf5afa
  > docker pull container-registry.oracle.com/database/free:latest
  lastest: ....
  > docker images
  > docker run -d -p 1521:1521 --name oracle container-registry.oracle.com/database/free
  ...
  > docker logs oracle

 docker pull container-registry.oracle.com/database/free:latest 을 통해 docker 를 다운

docker images 를 통해 다운받은 이미지 확인

docker run -d -p 1521:1521 --name oracle container-registry.oracle.com/database/free 다운받은 이미지 실행

- docker desktop에 실행되고 있는 것을 확인할 수 있음

- 11521(윈도우 port번호):1521(docker port번호)

 

docker logs oracle 를 통해 DATABASE 사용준비 확인

  docker exec -it oracle bash
  
  Oracle system 사용자 비번 설정
  - bash-4.4$ ./setPassword.sh oracle

 

DBeaver 탐색기 > Create > Connection

 

더보기

Port번호: 11521
Database: FREE / SID
username: system
Password: oracle

 

- Test Connection 클릭시 해당 메시지 뜨면 성공!

 

 

연결 후 관리자 명령 프롬프트 창 열기(사용자 생성 후 DB 연결하기 위함)
SQL> select name from v$database;
//서비스명 확인
// 최신버전에서 사용자 생성시 C## prefix 방지 쿼리
SQL> ALTER SESSION SET "_ORACLE_SCRIPT"=true;
// 사용자 생성
SQL> create user pknusb identified by "pknu_p@ss";
// 사용자 권한
SQL> grant CONNECT, RESOURCE, CREATE SESSION, CREATE TABLE, CREATE SEQUENCE, CREATE VIEW to pknusb;
// 사용자 계정 테이블 공간설정, 공간쿼터
SQL> alter user pknusb default tablespace users;
SQL> alter user pknusb quota unlimited on users;

 

더보기

docker exec -it oracle bash

bash-4.4$sqlplus

user-name:system

password:oracle

select name from v$database;

FREE 인것 확인

 

- 최신버전에서 사용자 생성시 C## prefix 방지 쿼리

- 사용자 생성

- 사용자 권한

- 사용자 계정 테이블 공간 설정 및 공간 쿼터 할당

더보기

Port번호: 11521
Database: FREE / SID
username: PKNUSB
Password: pknu_p@ss