πŸŽ„ μ„±μž₯일지 3.1

μ±… ν–‰λ³΅ν•œ 이기주의자(웨인 닀이어)의 λ‚΄μš©μ— μžκ·Ήλ°›μ•„ μ‹œμž‘ν•˜λŠ” μ†Œλ°•ν•œ μ„±μž₯기둝

μ‚΄μ•„μžˆλŠ” 꽃과 죽은 꽃은 μ–΄λ–»κ²Œ κ΅¬λ³„ν•˜λŠ”κ°€?
μ„±μž₯ν•˜κ³  μžˆλŠ” 것이 μ‚΄μ•„ μžˆλŠ” 것이닀.
생λͺ…μ˜ μœ μΌν•œ μ¦κ±°λŠ” μ„±μž₯이닀!

🌳 ν‚€μ›Œλ“œ (1.0)
μ΅œλŒ€ν•œ κ°„λ‹¨ν•˜κ²Œ 정리, 좔후에 λ³΄λ©΄μ„œ 슀슀둜 μ„€λͺ…
πŸ‰ κ²½ν—˜ μœ„μ£Όλ‘œ (2.0)
λ‹¨μˆœ 정보λ₯Ό μ „λ‹¬ν•˜κΈ°λ³΄λ‹€ 무엇을 λ°°μ› κ³  μ–΄λ–»κ²Œ ν•΄κ²°ν–ˆλŠ”μ§€ 짧고 κ°„λ‹¨ν•˜κ²Œ μž‘μ„±
❄️ 정해진 ν…œν”Œλ¦Ώμ— λ§žμΆ°μ„œ (3.0)
ν‚€μ›Œλ“œ, κ²½ν—˜ λͺ¨λ‘ μ’‹λ‹€. λ‹€λ§Œ 맀일 μž‘μ„±ν•˜κΈ°λ‘œ 마음 λ¨Ήμ€λ§ŒνΌ ν•΅μ‹¬λ§Œ κ°„κ²°ν•˜κ²Œ 정리할 수 있게 ν…œν”Œλ¦Ώμ„ μž‘μ„± (3.1) 230102λΆ€ν„° μ‹œμž‘λ˜λŠ” ν•™μŠ΅μ— κ΄€ν•œ λ‚΄μš© μΆ”κ°€

πŸ”‘ 였늘의 ν‚€μ›Œλ“œ

λ°μ΄ν„°λ² μ΄μŠ€

  • λ°μ΄ν„°μ˜ 집합, ν”νžˆ DB(DataBase)라고 λΆ€λ₯Έλ‹€.
  • 일반적으둜 κ·Έλƒ₯ λ°μ΄ν„°λ² μ΄μŠ€λΌκ³  ν•˜λ©΄ 보톡 κ΄€κ³„ν˜• λ°μ΄ν„°λ² μ΄μŠ€λ₯Ό λ§ν•œλ‹€.
  • λ˜ν•œ, μ—„λ°€νžˆ DBλŠ” 데이터 μ €μž₯μ†Œλ₯Ό μ˜λ―Έν•˜κ³  μš°λ¦¬κ°€ μ‚¬μš©ν•˜λŠ” MySQL, MariaDB, MongoDB 등은 DBMS(DataBase Management System)이닀.

SQL

  • Structured Query Language의 μ•½μžλ‘œ, λ°μ΄ν„°λ² μ΄μŠ€μ—κ²Œ μ§ˆλ¬Έν•˜λ“―μ΄ μ‚¬μš©ν•˜λŠ” κ΅¬μ‘°ν™”λœ 질의 언어이닀.
  • SHOW, SELECT, DELETE λ“±μ˜ 쿼리 λͺ…령은 κ°€λŠ₯ν•˜λ©΄ λŒ€λ¬Έμžλ‘œ μž‘μ„±ν•˜λ©° 쿼리 λ§ˆμ§€λ§‰μ— ; λ₯Ό 뢙여주도둝 ν•˜μž!

MySQL

  • κ°€μž₯ 널리 μ‚¬μš©λ˜κ³  μžˆλŠ” RDBMS(Relational DBMS; κ΄€κ³„ν˜•)으둜 썬 λ§ˆμ΄ν¬λ‘œμ‹œμŠ€ν…œμ¦ˆκ°€ κ°œλ°œν•˜κ³  μΆ”ν›„ μ˜€λΌν΄μ— μΈμˆ˜λλ‹€.
  • κΈ°λ³Έμ μœΌλ‘œλŠ” μ˜€ν”ˆ μ†ŒμŠ€ λΌμ΄μ„ΌμŠ€μ΄μ§€λ§Œ μƒμ—…μ μœΌλ‘œ μ‚¬μš© μ‹œ, μƒμ—…μš© λΌμ΄μ„ΌμŠ€λ₯Ό κ΅¬μž…ν•΄μ•Όν•œλ‹€.
  • 15년도 11월에 λ°œν‘œλœ 5.7버전이 λ²”μš©μ μœΌλ‘œ 많이 μ‚¬μš©λ˜κ³  μžˆλ‹€.(κΈ€μž‘μ„± κΈ°μ€€ 8.0κΉŒμ§€ μΆœμ‹œ)
npm i -D mysql mysql2
const mysql = require('mysql2');

const connection = mysql.createConnection({
  host: 'localhost',
  user: 'jayden',
  password: '1234',
  port: 3306,
  database: 'databasename',
});

// 보톡 portλŠ” 3306을 μ‚¬μš©ν•˜μ§€λ§Œ, λ§Œμ•½ λ‘œμ»¬μ— MySQL이 μ„€μΉ˜λ˜μ–΄μžˆλŠ” μƒνƒœλ‘œ
// docker에 mysql containerλ₯Ό λ§Œλ“€μ–΄ μ‚¬μš©ν•œλ‹€λ©΄ portλ₯Ό 3307κ³Ό 같은 λΉ„μ–΄μžˆλŠ” 포트λ₯Ό ν• λ‹Ήν•΄μ€˜μ•Ό ν•œλ‹€.

도컀(docker)

  • 당신이 μ–΄λ–€ 인프라λ₯Ό κ°–κ³  μžˆλ“ μ§€, 도컀λ₯Ό μ‚¬μš©ν•΄μ„œ λ°°ν¬ν•˜λ©΄ μ–΄λ””μ„œλ“  λ˜‘κ°™μ΄ 개발, μ‹€ν–‰, 배포가 κ°€λŠ₯ν•˜λ‹€! (feat. docker)
  • μ‹€μ œλ‘œ 도컀 없이 λ‘œμ»¬μ—μ„œ 개발 ν›„ μ‹€ν–‰ μ™„λ£ŒκΉŒμ§€ ν…ŒμŠ€νŠΈκ°€ λλ‚˜λ„, μ„œλ²„μ— λ°°ν¬ν•˜λ©΄ μ•ˆλ˜λŠ” κ²½μš°κ°€ ν—ˆλ‹€ν•˜λ‹€!
  • λ„μ»€λŠ” os(linux)μ—μ„œ μ œκ³΅ν•˜λŠ” μ–΄λ–»κ²Œ 보면 μ•„μ£Ό 기본적인 κΈ°λŠ₯을 톡해 λ§Œλ“€μ–΄μ‘Œλ‹€.
  • 이미지(image): ν”„λ‘œκ·Έλž¨, μ»¨ν…Œμ΄λ„ˆ(container): 각 ν”„λ‘œκ·Έλž¨μ˜ 이미지λ₯Ό μ»¨ν…Œμ΄λ„ˆλ‘œ λ„μ›Œμ„œ μ‹€ν–‰ν•˜λŠ” λŠλ‚Œ?!(ν”„λ‘œμ„ΈμŠ€ λŠλ‚Œ)

기얡해두면 쒋을 λ„μ»€μ˜ 기반 기술 3가지(OS의 κΈ°λŠ₯이기도 ν•˜λ‹€.)

  1. Namespaces: ν”„λ‘œμ„ΈμŠ€λ₯Ό μ‹€ν–‰ν•  λ•Œ μ‹œμŠ€ν…œμ˜ λ¦¬μ†ŒμŠ€λ₯Ό λΆ„λ¦¬ν•΄μ„œ μ‹€ν–‰(ν”„λ‘œμ„ΈμŠ€λ§ˆλ‹€ 같은 Namespace에 속해야 λ¦¬μ†ŒμŠ€ 곡유 κ°€λŠ₯)
  2. Cgroups: μ‹œμŠ€ν…œ μžμ›μ˜ 할당을 컨트둀 ν•  수 있게 ν•œλ‹€.(β€˜1번 ν”„λ‘œμ„ΈμŠ€λŠ” cpu 10%만 μ“Έ 것!’과 같은 κΈ°λŠ₯)
  3. Chroot: 루트 디렉토리λ₯Ό λ³€κ²½ν•˜λŠ” λ¦¬λˆ…μŠ€ λͺ…λ Ή(λ‚΄κ°€ μ›ν•˜λŠ” 디렉토리λ₯Ό 루트 λ””λ ‰ν† λ¦¬λ‘œ μ§€μ •ν•˜λŠ” 것)

μœ„μ˜ 기반 κΈ°μˆ λ“€μ΄ ν•©μ³μ Έμ„œ 마치 가상 μ†Œν”„νŠΈμ›¨μ–΄κ°€ λŒμ•„κ°€λŠ” κ²ƒμ²˜λŸΌ 싀행이 λœλ‹€!(μ»¨ν…Œμ΄λ„ˆλ₯Ό λ„μšΈ 수 μžˆλ‹€!)

DDL

  • Data Definition Language의 μ•½μžλ‘œ, 데이터 μ •μ˜ μ–Έμ–΄ μ •λ„λ‘œ λ²ˆμ—­ν•  수 μžˆλ‹€.
  • 즉, μ—¬λŸ¬ SQL 쿼리 λͺ…λ Ήλ“€ 쀑 λ°μ΄ν„°λ² μ΄μŠ€μ˜ μŠ€ν‚€λ§ˆλ₯Ό μ •μ˜ν•˜κ³  μ‘°μž‘ν•  수 μžˆλŠ” λͺ…령듀을 λ§ν•œλ‹€.
  • λŒ€ν‘œμ μœΌλ‘œ CREATE, ALTER, DROP, RENAME 등이 μžˆλ‹€.
  • 참고둜 DDL의 경우 μ‹€ν–‰ν•˜λ©΄ AUTO COMMIT이 λœλ‹€.(μ‹€ν–‰ μ¦‰μ‹œ λ°˜μ˜λœλ‹€. -> 둀백이 μ•ˆλœλ‹€.)

ν…Œμ΄λΈ”

  • λ°μ΄ν„°λ² μ΄μŠ€μ— μ‹€μ œ 데이터가 μ €μž₯λ˜λŠ” ν˜•νƒœ
  • 행에 ν•΄λ‹Ήν•˜λŠ” row, 열에 ν•΄λ‹Ήν•˜λŠ” column을 κ°–λŠ”λ‹€.
  • 이 λ•Œ, rowλŠ” Record, column을 field라고도 ν•œλ‹€.
  • 각 fieldλŠ” λ™μΌν•œ 데이터 νƒ€μž…μ„ κ°–λŠ”λ‹€.(엑셀을 μƒκ°ν•˜λ©΄ νŽΈν•˜λ‹€.)

μ°Έκ³ 

πŸ“ μš”μ•½ 및 ν•˜λ£¨ 간단 회고

잊고 μžˆμ—ˆλ˜ db와 sql 그리고 dockerλ₯Ό λ‹€μ‹œ μ ‘ν–ˆλ‹€. ν™•μ‹€νžˆ 데이터 뢄석 λ•Œ λ°°μ› λ˜ 게 도움이 λΌμ„œ 재미있게 곡뢀할 수 μžˆμ—ˆλ‹€.(λ¬Όλ‘  μ—λŸ¬λŠ” 계속 λ§Œλ‚˜μ§€λ§Œβ€¦)
ꡳ이 λ‚˜λˆŒ 건 μ—†μ§€λ§Œ, 따지면 λ°±μ—”λ“œμ˜ μ˜μ—­μ΄λΌ μ²˜μŒμ—” μͺΌκΈˆ λˆˆμ— μ•ˆλ³΄μ΄λŠ” 게 λ‹΅λ‹΅ν–ˆλ‹€. ν•˜μ§€λ§Œ 이내 머리에 κ·Έλ¦¬λ©΄μ„œ ν•˜λ‹ˆκΉŒ 금방 μ΅μˆ™ν•˜κ²Œ μ“Έ 수 μžˆμ—ˆλ‹€.

였늘의 μž˜ν•œ 점

  • μ—¬ν–‰ λ‹€λ…€μ˜€κ³  아침에 μ™€μ„œ μ½”μ–΄νƒ€μž„μ„ μ—΄μ‹¬νžˆ 지킨 점

였늘의 μ•„μ‰¬μš΄ 점

  • 와… ν™•μ‹€νžˆ λ„ˆλ¬΄ νž˜λ“  μΌμ •μ΄μ—ˆλ‚˜, μ½”μ–΄νƒ€μž… λλ‚˜κ³  μ§„μ§œ 뻗어버렸닀…