본문 바로가기

개발자노트/혼자 끄적끄적

Docker Oracle 연결하기

1. JDBC를 사용하기 위해 OJDBC.jar 추가하기

- 추가할 때 web에서 읽기 위해선

WEB-INF / lib 폴더에 넣어주어야한다.

 

 

2. applicationContext.xml 파일 DataSource 설정해주기

url 을 localhost로 했을 때 오류 발생, 그래서 해당 내부 ip를 작성하여서 고정함

이걸 하기 전에는

The Network Adapter could not establish the connection 오류가 발생했었음

 

 

 

 

3. Oracle 기본 포트인 1521 포트를 로컬 포트와 컨테이너 포트 모두 고정으로 할당

 

 

4. 그 후 Oracle 컨테이너를 만들고 bash 에서 sqlplus / as sysdba

계정만들고 계정권한주고 테이블 생성함 처음에 이것도 안돼서

hr / tiger 계정 활성화 하는 과정을 했었음 → 하단에 설명

 

 

 

Docker에선 내가 깐 이미지에서 System의 기본 비밀번호는 oracle 이였음!!!

맨 아랫줄 참고

 

1. bash 창에서 sqlplus

user-name: hr

passowrd: 공백

엔터하면

ORA-28000 이 뜰것이다.

계정이 잠겨있다고 뜬다. 그럼 unlock 시켜줘야겠다.

 

다시 sqlplus를 실행하고

system 계정으로 접속, 이 때 기본 비밀번호를 설정하지 않았더라면 oracle이 기본 비밀번호였을 것임 아마

 

접속이 되었다면

bash가 가르키는 곳이 SQL>로 바뀜

이렇게 되면 HR의 잠금이 풀림 unlock을 lock 으로 바꾸면 계정을 잠구는 것

다음과 같이 hr 계정의 비밀번호까지 바꾸면 hr 계정을 사용할 수 있다.

 

전체과정

 

 

 

2. bash 창에서 권한 불충분 ORA - 01031 = sqlplus /nolog로 접속

다음과 같이 01031 에러가 뜨면

conn system 을 통해 system계정에 접속 후

show user를 통해 system 계정이 접속 된 것을 확인하고 비밀번호를 수정 후 유저 create 를 진행해도 되고,

저번에 했을 땐 show user에 접속한 계정이 아무것도 없어서 기본 계정인 hr 계정을 사용했던 것으로 기억함

 

 

 

3. System 기본 비밀번호 등 

sqlplus /nolog 후

system / system 안돼서

system / 공백 했는데도 null이라 안된대서

system/ oracle 로 하니 접속 성공함