Day 4

Hello World ์‹คํ–‰ํ•˜๊ธฐ

Docker๋กœ MySQL ๋„์šฐ๊ธฐ..

ํ˜„์žฌ MySQL์„ Docker๋ฅผ ํ†ตํ•ด์„œ ๋„์šฐ๊ณ  ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋‹ค. Docker๋กœ MySQL ์„ค์น˜ ์•ˆํƒ€๊น๊ฒŒ๋„ M1์€ image๋ฅผ pull ๋ฐ›์„ ๋•Œ๋„ ํ”Œ๋žซํผ์„ ๋ช…์‹œํ•ด์ฃผ๊ณ  ๋ฐ›์•„์•ผ ํ•œ๋‹ค๋Š” ์ ..!

docker run --platform linux/amd64 -p 3306:3306 
--name [์ปจํ…Œ์ด๋„ˆ ์ด๋ฆ„] 
-e MYSQL_ROOT_PASSWORD=[๋ฃจํŠธ ์œ ์ € ๋น„๋ฐ€๋ฒˆํ˜ธ] 
-e MYSQL_DATABASE=[๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ด๋ฆ„] 
-e MYSQL_PASSWORD=[๋น„๋ฐ€๋ฒˆํ˜ธ]
 -d mysql

์ด๋ ‡๊ฒŒ ์‹คํ–‰ํ•˜๋ฉด ์ž๋™์œผ๋กœ docker์—์„œ ์„ค์น˜ํ•œ mysql์ด ๋Œ์•„๊ฐ€๊ฒŒ ๋œ๋‹ค. ์ž ๋Œ์•„๊ฐ€๋Š”๊ฒŒ ํ™•์ธ๋ฌ์œผ๋ฉด docker์—์„œ cli์„ ํ†ตํ•ด์„œ ์ ‘์†ํ•˜๋Š” ๊ฒƒ๋„ ๋ฐฉ๋ฒ•์ด๊ณ 

docker exec -it mysql bash

๋ฅผ ํ†ตํ•ด์„œ ์ ‘์†ํ•˜๋Š” ๊ฒƒ๋„ ๋ฐฉ๋ฒ•์ž„ ์ด์ œ๋Š”

mysql -u root -p

๋ฅผ ํ†ตํ•ด์„œ mysql์— ์ ‘์†

show databases;

๋ฅผ ํ†ตํ•ด์„œ ์กด์žฌํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ํ™•์ธ -> ํ˜„์žฌ ์ฑ…์—์„œ ์‚ฌ์šฉํ•  ์ƒ˜ํ”Œ์€ Sample์ž„

use sample;

์„ ํ†ตํ•ด์„œ sample์ด๋ž€๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค๊ฒ ๋‹ค๊ณ  ์„ ์–ธ ๊ทธ๋Ÿฌ๋ฉด ์ผ๋‹จ docker์— ๋„์›Œ๋‘” ์ปจํ…Œ์ด๋„ˆ์— ์ƒ˜ํ”Œ ํŒŒ์ผ์„ ๋„ฃ์–ด์ค˜์•ผํ•œ๋‹ค.

docker ps๋กœ ํ™•์ธํ•œ container id๋ฅผ ๋ฝ‘์•„์„œ ๊ธฐ์–ตํ•ด๋‘์ž

docker cp ํŒŒ์ผ ์ปจํ…Œ์ด๋„ˆ์•„์ด๋””:/

๋ฅผ ํ†ตํ•ด์„œ ์ปจํ…Œ์ด๋„ˆ์— ํŒŒ์ผ ๋ณต์‚ฌ -> ์ปจํ…Œ์ด๋„ˆ์— ์ ‘์† -> ํŒŒ์ผ์ ์šฉ

์ด์ œ๋Š” select๋ฌธ์„ ์‚ฌ์šฉํ•ด์„œ ์กฐํšŒ๋ฅผ ํ•ด๋ณด๋ ค๊ณ  ํ–ˆ๋Š”๋ฐ -> ํ•œ๊ตญ์–ด๋กœ ๋‚˜์™€์•ผ ํ•˜๋Š” ๊ณณ์— ???๊ฐ€ ์ฐํ˜€์„œ ๋‚˜์˜จ๋‹ค docker mysql ํ•œ๊ธ€ ๊นจ์ง์œผ๋กœ ๊ฒ€์ƒ‰ํ•ด๋ณด๋‹ˆ๊นŒ... config์—์„œ ์ˆ˜์ •ํ•ด์•ผ ํ•˜๋Š” ๋ถ€๋ถ„์ด ์žˆ๋”๋ผ ํ—ˆํ—ˆ ์—ญ์‹œ vim๋„ ์—†๊ธฐ ๋•Œ๋ฌธ์— ์นจ์ฐฉํ•˜๊ฒŒ vim ๋จผ์ € ์„ค์น˜ํ•˜์ž

apt-get update
apt-get install vim

์ž์ผ๋‹จ ์„ค์น˜ํ–ˆ์œผ๋ฉด vim etc/mysql/my.cnf๋กœ ํŒŒ์ผ์— ๋“ค์–ด๊ฐ€๋ณด๋ฉด 2๊ฐœ์˜ ํŒŒ์ผ์ด ์žˆ๋Š”๋ฐ ์ฒซ ๋ฒˆ์งธ ํŒŒ์ผ๋กœ ๋“ค์–ด๊ฐ€๋ฉด ๊ฑฐ์˜? ๋ฐ˜ ํŒŒ์ผ์ด ์žˆ์„ํ…๋ฐ ๊ฑฐ๊ธฐ์—

[client]
default-character-set=utf8

[mysql]
default-character-set=utf8


[mysqld]
collation-server = utf8_unicode_ci
init-connect='SET NAMES utf8'
character-set-server = utf8

์ด๋ ‡๊ฒŒ ์ž…๋ ฅํ•ด์ฃผ๊ณ  ์ปจํ…Œ์ด๋„ˆ๋ฅผ ์žฌ์‹œ์ž‘ํ•ด์ฃผ๊ณ  mysql์— ์ ‘์† ํ›„ show variables like 'c%'; ์ด๊ฑธ๋กœ ์ ์šฉ๋œ ๊ฒƒ์„ ํ™•์ธํ•ด์ฃผ๋ฉด ํ•œ๊ตญ์–ด ํŒจ์น˜ ๋..! ์„ธํŒ… ๋””๋Ÿฝ๊ฒŒ์˜ค๋ž˜๊ฑธ๋ ธ๋„ค...

Selectํ•ด๋ณด์ž

select * from sample21;

์ž SQL์„ ์ž‘์„ฑํ•  ๋•Œ ์ŠคํŽ˜์ด์Šค๋ฐ”์— ์ฃผ์˜ํ•ด์„œ ์ž‘์„ฑํ•˜์ž ๊ทธ๋ฆฌ๊ณ  ํ•ญ์ƒ **๋งˆ์ง€๋ง‰์— ์„ธ๋ฏธ์ฝœ๋ก (;)**์„ ๋„ฃ์–ด์ฃผ์ž ๋‹ค์Œ์œผ๋กœ ๋ด์•ผํ•˜๋Š” ๊ฒƒ์€ *(์™€์ผ๋“œ์นด๋“œ)์ด๋‹ค *์€ ๋ชจ๋“  ์—ด(ํ•„๋“œ)๋ฅผ ์˜๋ฏธํ•œ๋‹ค. ์œ„์˜ ๋ช…๋ น์–ด๋ฅผ ์ž˜๋ผ์„œ ๋ณด๋ฉด -> select, *, from, ํ…Œ์ด๋ธ”๋ช… ์ด๋ ‡๊ฒŒ ๋‚˜๋ˆ„์–ด์ ธ์žˆ๋‹ค ํฌ๊ฒŒ select, *, from์„ ๋ณด๊ณ  ์˜ˆ์•ฝ์–ด๋ผ๊ณ  ๋ถ€๋ฅธ๋‹ค ๊ฐ€์žฅ ์ค‘์š”ํ•œ๊ฑด -> ์˜ˆ์•ฝ์–ด, ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ฐ์ฒด๋ช…์€ ๋Œ€์†Œ๋ฌธ์ž๋ฅผ ๊ตฌ๋ณ„ํ•˜์ง€ ์•Š๋Š”๋‹ค๋Š” ์ !

๊ธฐ๋ณธ์ ์œผ๋กœ select(์กฐํšŒ)๋ฅผ ํ•˜๊ฒŒ ๋˜๋ฉด ํ‘œ ํ˜•์‹์˜ ๋ฐ์ดํ„ฐ๊ฐ€ ์ถœ๋ ฅ๋จ ํ•ด๋‹น ํ‘œ๋Š” ํ–‰ + ์—ด์œผ๋กœ ๊ตฌ์„ฑ๋˜์–ด์žˆ์Œ ํ–‰ = record ์—ด = ์ปฌ๋Ÿผ(ํ•„๋“œ) ๊ฐ ๋ฐ์ดํ„ฐ์—๋Š” ํ•„๋“œ์— ๋งž๋Š” ๋ฐ์ดํ„ฐ ํƒ€์ž…์ด ์กด์žฌํ•œ๋‹ค ์ˆซ์ž๋กœ ๊ตฌ์„ฑ๋œ ๋ฐ์ดํ„ฐ : ์ˆ˜์น˜ํ˜• ๋ฐ์ดํ„ฐ ์ž„์˜์˜ ๋ฌธ์ž๋กœ ๊ตฌ์„ฑ๋œ ๋ฐ์ดํ„ฐ : ๋ฌธ์ž์—ดํ˜• ๋ฐ์ดํ„ฐ ๋‚ ์งœ์™€ ์‹œ๊ฐ„์„ ๋‚˜ํƒ€๋‚ด๋Š” ๋ฐ์ดํ„ฐ : ๋‚ ์งœ์‹œ๊ฐ„ํ˜• ๋ฐ์ดํ„ฐ ์•„๋ฌด ๊ฒƒ๋„ ์ €์žฅ๋˜์–ด ์žˆ์ง€ ์•Š์€ ์ƒํƒœ : null

Last updated

Was this helpful?