Sakila 데이터베이스로 MySQL 실습하기

이해하기 쉽고, 장황하지 않은 자료를 기반으로 강의를 진행합니다.
잔재미코딩 소식 공유
좀더 제약없이, IT 컨텐츠를 공유하고자, 자체 온라인 사이트와, 다음 두 채널도 오픈하였습니다
응원해주시면, 곧 좋은 컨텐츠를 만들어서 공유하겠습니다
●  잔재미코딩 뉴스레터 오픈 [구독해보기]
●  잔재미코딩 유투브 오픈 [구독해보기]

1. Sakila 데이터베이스로 MySQL 실습하기

mysql workbench 설치 - 실습

도커 이미지 가져오기

  • docker pull jhleeroot/dave_ubuntu:1.0.1

도커 처음 실행하기

  • docker run -Pit -i -t -p 8888:8888 -p 8787:8787 -p 8022:22 -p 3306:3306 --name ubuntu jhleeroot/dave_ubuntu:1.0.1
  • docker attach ubuntu
    • PC 껐다 켜서 실행할 때는 docker start ubuntu 를 먼저 해주신 후 진행

sakila database sql 파일 실행하기

  • Mysql Workbench

    • File -> Open SQL Script -> sakila-schema.sql
    • File -> Open SQL Script -> sakila-data.sql
  • 도커에 sql 복사 후, mysql 실행해서 SOURCE 명령으로 sql 실행

    • 이미 /root/DataScience 디렉토리에 해당 SQL 파일 넣어놓고, mysql에도 넣어놓았습니다.
    • 도커에 파일 복사 방법
      • docker cp sakila-data.sql dave_ubuntu:/root/sakila-data.sql
      • docker cp sakila-schema.sql dave_ubuntu:/root/sakila-schema.sql
      • docker cp sakila.mwb dave_ubuntu:/root/sakila.mwb
본 자료와 같이 IT 기술을 잘 정리하여, 온라인 강의로 제공하고 있습니다
체계적으로 전문가 레벨까지 익힐 수 있도록 온라인 강의 로드맵을 제공합니다

참고: Docker for Windows CPU Core 4개로 만들기

Docker for Windows 설정 (CPU를 4개로 만들기)

도커 안에서 mysql 데몬 시작하기

  • sudo service mysql start
  • sudo service mysql status

mysql 실행하기

  • mysql -u root -p (암호는 korea123 입니다.)

도커에 쥬피터 노트북 연결해서 실행하기 (크롬 브라우저로 실행)

  • jupyter-notebook --allow-root >> /var/log/jupyter.log 2>&1 &
    • 맥북: 오픈 크롬 브라우저 -> http://0.0.0.0:8888/ 주소 입력 -> 처음 암호: korea123
    • 윈도우 Docker for Windows: 오픈 크롬 브라우저 -> http://127.0.0.1:8888 주소 입력 -> 처음 암호: korea123
    • 윈도우 Docker Tookbox: 오픈 크롬 브라우저 -> http://도커 컨테이너 IP:8888 주소 입력 -> 처음 암호: korea123
      • docker-machine ip 명령으로 도커 컨테이너 IP를 알아낼 수 있음
    • 서버 로그는 vim /var/log/jupyter.log 에서 보실 수 있음
본 자료와 같이 IT 기술을 잘 정리하여, 온라인 강의로 제공하고 있습니다
체계적으로 전문가 레벨까지 익힐 수 있도록 온라인 강의 로드맵을 제공합니다

sakila 데이터베이스는 다음 링크에서 다운로드 받았습니다.

이렇게 직접 컨테이너에 작업해서, sakila 데이터베이스/테이블 만들어놓았습니다.

shell> cd /root/DataScience

shell> mysql -u root -p

mysql> SOURCE sakila-schema.sql;

mysql> SOURCE sakila-data.sql;

mysql> USE sakila;

mysql> SHOW TABLES;