오늘은 며칠간 시도했던 시놀로지> 도커 위에 올렸던 오라클리눅스에 샘플스키마 설치에 성공했다.
학원에서 vmware로 한번 설치한적은 있지만 환경변수가 달라서 경로를 찾는데에 상당한 시간이 걸렸지만
발상의 전환으로 드디어 성공했다
이 과정에서 중요한 점을 말하자면 지금 내가 사용하고 있는 오라클 리눅스라는 os는 Centos계열의
리눅스라 apt-get이 먹히지 않는다는 점이다.
그렇기에 보통 yum이 기본으로 설치되어 있을 건데 개인적으로는 wget이 깔끔하게 설치되었던 것 같다.
그래서 wget을 yum으로 설치해주면 간단하게 사용할 수 있다.
그래서 이때까지의 실패를 머릿속으로 정리해서 다시 한번 천천히 설치해 보기로 했다.
가장 먼저 해야할것은 당연히 docker 컨테이너의 ID를 알아내는 것이다.
이렇게 입력하여 id를 알아내고 그 id를 확인해서
docker exec -it [컨테이너ID] /bin/bash
로 오라클로 접속한다. 이렇게 접속을 하면 나 같은 경우
bash-4.2#
라고 뜰건데 이렇게 뜨고
whoami
라는 명령어를 입력하면 root라고 뜰 것이다.
그리고
샘플파일을 설치해 줄 것이다.
내가 설치한 파일은 ncs에서도 권장할 정도로 대중적인 샘플스키마로 인사관리 데이터가 정리되어 있다.
일단
yum -y install wget
으로 wget을 설치한다.
wget https://github.com/oracle-samples/db-sample-schemas/archive/refs/tags/v21.1.tar.gz
이렇게 설치가 끝났다면 위 링크로 샘플스키마 압축파일을 설치한다.
설치가 끝났다면
v21.1.tar.gz
이렇게 하나의 압출파일이 있을 건데 이것을
tar xf v21.1.tar.gz
으로 압축을 풀어준다.
그럼
db-sample-schemas-21.1 v21.1.tar.gz
이렇게 폴더가 생길 것이다.
이제 해야 할 것은 이 폴더에 있는 폴더 중 human_resources 폴더만 지정한 경로로 이동시켜줘야 한다.
mv db-sample-schemas-21.1/human_resources/ /opt/oracle/product/18c/dbhomeXE/demo/schema/
mv커멘드를 사용하면 이동이 가능하다. 간단히 설명하자면 원본파일/ /이동시킬 경로 정도로 생각하면 된다.
이 경로는 버전마다 다르니 직접 cd로 들어가 보고 경로를 정확하게 파악하고 이 커멘드를 입력하고
아무 알림도 뜨지 않았다면 이동이 된 것이다.
그다음은
cd /opt/oracle/product/18c/dbhomeXE/demo/schema/human_resources/
위 경로로 이동하여 hr_main.sql파일을 수정해 줘야 하는데
도커로 설치한 리눅스 오라클은 vi명령어가 안 먹힐 가능성이 높다.
그렇기에 vi를 설치해줘야 하는데
yum -y install vim
으로 설치를 하고 sql파일을 수정해 준다.
주의해야 할 점은 우분투 계열은 vi명령어를 사용하지만 centos계열에서는 vi대신
vim으로 써야 에디터를 열수 있다.
파일을 열고나면
위에 많은 글자들 사이에 @SUB_CWD라고 적인 부분이 있을 건데 이것을
자신의 서버에 있는 경로로 수정시켜줘야 한다.
:%s/@__SUB__CWD/@?\/demo\/schema
이렇게 입력을 하면 __SUB__CWD라는 글자를 찾아서 /demo/schema로 동시에 수정해 준다.
사진처럼 되었으면 준비는 끝났다.
전에 올렸던 포스팅을 보고 똑같이 이 os를 설치했다면 su - oracle로 oracle계정으로 접속한다.
그다음
SQL로 접속하기 위해 HOME_BASH폴더에 있는 sqlplus를 실행 단다.
cd $ORACLE_HOME
bin/sqlplus / as sysdba
이렇게 접속하고 나면
alter session set "_oracle_script"=true;
session의 수정권한을 수정해 주고
@?/demo/schema/human_resources/hr_main.sql
hr_main.sql파일을 실행한다.
specify password for HR as parameter 1:
Enter value for 1: hr -- hr계정의 PW
specify default tablespeace for HR as parameter 2:
Enter value for 2: users
specify temporary tablespace for HR as parameter 3:
Enter value for 3: temp
specify log path as parameter 4:
Enter value for 4: oracle
실행을 하면 이렇게 뜰 건데 순서대로 입력해 주면 계정이 생성되고 Oracle Developer로 hr계정으로
로그인하면 스키마가 있을 것이다.
이 모든 과정은 전에 올렸던 "시놀로지 도커에 오라클 18c XE구축" 글을 보고 같은 방법으로
설치를 한 사람에 한해서 가능한 방법이다.
어느 정도 비슷한 부분도 있겠지만 그건 아는 만큼 보이는 부분이라 다른 환경이고 이
방법이 안 먹힌다면 쉽지 않은 과정이 될 것이다.
요즘 학원에서 배운 내용도 블로그로 올려야 한다고 생각은 하고 있지만 스키마설치방법을 이해하고 도커에 대해서
조금이라도 더욱 친숙해지고 싶다는 마음으로 도전한 게 집착이 되어 이제야 성공했다.
이번에 이것을 설치하는 과정에서 도커의 환경변수, 폴더의 위치, 계정마다 접근가능한 폴더의 범위등
많은 것을 이해할 수 있었다. 학원에서 배운 내용도 올리면서 앞으로는 도커의 네트워크 보안에 대해서도
공부해서 올려보도록 하겠다.
그럼 오늘은 여기서 마치도록 하겠다.
-- 파일의 출처는 여기에 남겨놓겠다 https://github.com/oracle-samples/db-sample-schemas/releases --
'개인 서버(도커등)' 카테고리의 다른 글
톰캣서버 오라클db jdbc로 연동 (JSP) (0) | 2023.05.23 |
---|---|
시놀로지 도커 Tomcat8.5 서버구축 (0) | 2023.05.07 |
도메인을 시놀로지 Web Station의 하위폴더에 연결하기 (0) | 2023.04.23 |
오라클 DB계정관리 (0) | 2023.04.12 |
시놀로지 도커에 오라클18c XE구축 (1) | 2023.04.11 |