본문 바로가기

study/DB

Docker Container로 Oracle을 띄워서 Database 실행 0. 서론데이터베이스전문가(SQLP) 자격증 취득을 위해 공부하던 중, mac M1에 오라클을 띄워서 실습 공부를 해야할 필요가 있었다. 그러나, 맥북 Apple Silicon(M1)에서는 로컬로 오라클을 띄울 수가 없다.그래도, 아래 블로그를 찾아 Docker/Colima를 활용해서 Oracle을 띄울 수 있게 되었다.참고 블로그1. 설치1.1 colimadocker desktop은 매우 무거운 프로그램이어서, 가벼운 CLI 환경에서 도커를 실행할 수 있는 오픈 소스인 colima를 사용한다.brew install colima 1.2 dockerdocker desktop은 docker 공식 웹 홈페이지에서 설치할 수 있다.Docker 웹 홈페이지아니면, brew로 설치해도 된다.# Docker Desk.. 더보기
docker 도커 이미지와 컨테이너 삭제 docker ps 실행중이 도커 보기docker ps -a전체 도커 보기docker rm [컨테이너 id]도커에서 컨테이너 삭제 하기docker imagesdocker rmi[이미지id]도커 이미지 삭제 하기docker rmi -f [이미지id] 더보기
DOCKER 로 오라클 띄워주기 $ docker search oracle-xe-11gNAME DESCRIPTION STARS OFFICIAL AUTOMATEDoracleinanutshell/oracle-xe-11g 206wnameless/oracle-xe-11g-r2 Oracle Express Edition 11g Release 2 on Ubun… 79orangehrm/oracle-xe-11g docker container with Oracle Express Editio… 16 [OK]jaspeen/oracle-xe-11g Fork from sath89/docker-oracle-xe-11g - smal… 6 [OK]christophesurmont/oracle-xe-11g Clone of the wnameless/oracle-xe-11g.. 더보기
ORACLE 테이블간 업데이트 다른 테이블의 SELECT 한 결과물을 참조하여 현재 테이블을 UPDATE 해야 하는 상황이 있습니다. Oracle, MS-SQL, Maria DB, Mysql DBMS마다 다른 문법을 지원하므로 방법도 각자 다릅니다. 저는 Oracle을 사용 중인데 다른 DBMS 보다 조금 문법이 어려운 것 같네요 이 방법에 한해서는요 ㅎㅎ table master, table user 두 개의 테이블이 있다고 가정하겠습니다. master 테이블의 Status을 user 테이블의 Status의 값을 참조하여 변경하는 쿼리를 작성해보겠습니다. MS-SQL UPDATE master SET master.status = cust.status FROM master m INNER JOIN cust c ON m.id = c.id; .. 더보기