AWS, Docker를 활용한 MYSQL실행.
1.
AWS에서 스팟 인스턴스 시작하기.
1-1. 이름 작성
1-2. ubuntu 선택
1-3. 인스턴스 유형은 “t3.small”
1-4. 키 페어는 새 키 페어 생성( 이미 있다면 있는 것 사용)해서 다운로드.
1-5. 네트워크 설정은 아래와 같이!
1-6. 고급 세부 정보 에서 “스팟 인스턴스 요청” 필수!!!
1-7. 인스턴스 시작하기(성공화면)
2.
Git bash로 AWS 인스턴스 접속 후, Docker 설치하기.
2-1. AWS에서 인스턴스 주소 복사 후, Git bash에서 인스턴스 접속
명령어 : ssh ubuntu@인스턴스 주소 –i ~/Downloads/펌키
2-2. 권한설정
2-3. git 디렉토리 만든 후, docker 다운로드 스크립트 git clone 하기.
2-4. git clone한 디렉토리로 가서 install 실행하기
2-5. docker 입력 후, 명령어 설명서가 나오면 docker 다운로드 끝.
3.
MYSQL실행.
3-1. ‘cd ~’ 커맨드로 루트 디렉토리로 돌아가 MYSQL 실행문 입력
3-2. ‘docker ps’ 입력 후 아래와 같이 나오면 MYSQL 실행 완료.
4.
MYSQL Workbench 와 연동.
4-1. MYSQL Workbench 다운로드 해 실행 후 MySQL Connections ‘+’하기
4-2. Connection Name 작성
4-3. Hostname에는 인스턴스 주소 입력
4-4. Store in Vault 누르고 비밀번호에 ‘password’입력
4-5. AWS에서 보안그룹 - 인바운드 규칙 편집에서 아래와 같이 작성 후 규칙 추가
4-6. MYSQL Workbench로 돌아와 OK 누르고 MYSQL 연동하면 끝.
MySQL Workbench 사용하기.
1.
스키마(=데이터베이스) 만들기
2.
테이블 만들기.
2-1. 원하는 조건을 붙여서 생성하면 됨.
•
PK : 기본키. 중복값 X, 빈값 X
•
NN : Not Null = 빈값 X
•
UQ : 중복값 X
•
B : 데이터를 이진 문자열로 저장
•
UN : 부호 미 사용 = 음수 범위 삭제 ex ) -10 ~ 10 의 범위가 0 ~ 20 으로 변함
•
ZF : Zero Filled = 열 크기보다 작은 값을 넣으면 0을 채움 ex) 000005
•
AI : 데이터 삽입 시 자동으로 1씩 증가.
•
G : 다른 열을 기반으로 한 수식으로 생성된 값
•
Default/Expression : 기본값 / 기본값에 수식 설정.
3.
테이블에 데이터 입력
4.
입력된 데이터 확인
외래키??
1.
외래키의 의미
: 두 테이블의 데이터 간 연결을 설정하고 강제 적용함
→ 외래 키 테이블에 저장될 수 있는 데이터를 제어 할 수 있음.
2.
외래키 설정
: 한 테이블의 기본키를 다른 테이블에서 참조 할때 외래키 관계 형성
2-1. My SQL Workbench에서 해보기 (book 테이블에 publisher 테이블의 publisher_id 열을 외래키로 설정.
2-2 . publisher 테이블에 존재 하지 않는 publisher_id 를 사용해 book 테이블에 정보를 입력하자 오류 발생 = 외래키의 강제성
테이블 정의서??
1.
테이블 정의서의 의미
: 프로그램을 위해 데이터 베이스를 구축 할 때, 개발자가 원하는 기능을 실현하기 위한 데이터 베이스의 형태를 설계해 두는 것.
2.
테이블 정의서의 예시.