๐งฐ Redis (01) - Redis ๊ธฐ๋ณธ ๋ช ๋ น์ด, Key ๋ค์ด๋ฐ ์ปจ๋ฒค์
ํ์ต ํ๊ฒฝ : Mac, iTerm
Redis ๊ธฐ๋ณธ ๋ช ๋ น์ด
โ๏ธ ย Redis ์คํ / ์คํ ์ฌ๋ถ ํ์ธ / ์ค์ง
1
2
3
4
5
6
7
8
# redis ์คํ
brew services start redis
# redis ์คํ ์ฌ๋ถ ํ์ธ
brew services info redis
# redis ์ค์ง
brew services stop redis
โ๏ธ ย Redis ์ ์
1
2
3
4
redis-cli # Redis์ ์ ์
127.0.0.1:6379> ping
PONG # ์ด๋ ๊ฒ ์ถ๋ ฅ๋๋ฉด ์ ์์ ์ผ๋ก Redis๊ฐ ์คํ๋๊ณ ์๋ค๋ ๋ป
โ๏ธ ย ๋ฐ์ดํฐ(Key, Value) ์ ์ฅํ๊ธฐ
1
2
3
4
5
# set [key ์ด๋ฆ] [value]
# ๋ฐ์ดํฐ ์ ์ฅ ์ฑ๊ณต ์ OK๊ฐ ์ถ๋ ฅ๋จ
set bokyung:name "bokyung kim" # ๋์ด์ฐ๊ธฐํด์ ์ ์ฅํ๋ ค๋ฉด ์๋ฐ์ดํ๋ก ๋ฌถ์ด์ฃผ๋ฉด ๋จ
set bokyung:hobby game
โ๏ธ ย ๋ฐ์ดํฐ ์กฐํํ๊ธฐ (Key ๊ฐ์ผ๋ก Value ๊ฐ ์กฐํํ๊ธฐ)
1
2
3
4
5
6
7
# get [key ์ด๋ฆ]
# key ๊ฐ์ ํด๋นํ๋ value ๊ฐ์ด ์ถ๋ ฅ๋จ
get bokyung:name # "bokyung kim" ์ถ๋ ฅ๋จ
get bokyung:hobby # game ์ถ๋ ฅ๋จ
get bk:name # ์๋ ๋ฐ์ดํฐ๋ฅผ ์กฐํํ ๊ฒฝ์ฐ (nil)์ด๋ผ๊ณ ์ถ๋ ฅ๋จ
โ๏ธ ย ์ ์ฅ๋ ๋ชจ๋ key ์กฐํํ๊ธฐ
1
2
3
4
5
6
keys *
# 1) "bokyung:name"
# 2) "bokyung:hobby"
# key๊ฐ ์๋ ๊ฒฝ์ฐ (empty array) ์ถ๋ ฅ
โ๏ธ ย ๋ฐ์ดํฐ ์ญ์ ํ๊ธฐ (Key ๊ฐ์ผ๋ก ๋ฐ์ดํฐ ์ญ์ ํ๊ธฐ)
1
2
3
4
5
6
# del [key ์ด๋ฆ]
# ์ญ์ ๋ key์ index๋ฅผ ์ถ๋ ฅ
del bokyung:hobby # (integer) 1 ์ถ๋ ฅ
get bokyung:hobby # ์ญ์ ๋๋ ์ง ํ์ธ -> (nil) ์ถ๋ ฅ
โ๏ธ ย ๋ฐ์ดํฐ ์ ์ฅ ์ ๋ง๋ฃ์๊ฐ(TTL) ์ ํ๊ธฐ
1
2
3
4
5
# set [key ์ด๋ฆ] [value] ex [๋ง๋ฃ ์๊ฐ(์ด)]
# ์๊ตฌ์ ์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ์ง ์๊ณ ์๊ณ์ ์ ์ ํด ์ ์ฅํ ์ ์์
# (์ธ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ด๊ธฐ ๋๋ฌธ์ ๋์คํฌ๋ณด๋ค ์๊ธฐ ๋๋ฌธ์ TTL์ ์์ฃผ ์ ์ฉ)
set bokyung:pet cat ex 15
โ๏ธ ย ๋ง๋ฃ์๊ฐ(TTL) ํ์ธํ๊ธฐ
1
2
3
4
5
6
7
8
# ttl [key ์ด๋ฆ]
# ๋ง๋ฃ ์๊ฐ์ด ๋ช ์ด ๋จ์๋ ์ง ๋ฐํ
# ํค๊ฐ ์๋ ๊ฒฝ์ฐ -2๋ฅผ ๋ฐํ
# ํค๋ ์กด์ฌํ์ง๋ง ๋ง๋ฃ ์๊ฐ์ด ์ค์ ๋ผ ์์ง ์์ ๊ฒฝ์ฐ์๋ -1์ ๋ฐํ
ttl bokyung:pet # ๋จ์ ์๊ฐ ์ถ๋ ฅ -> ์) (integer) 10 , ๋ง๋ฃ๋์๋ค๋ฉด (integer) -2 ์ถ๋ ฅ
ttl bokyung:name # (integer) -1 ์ถ๋ ฅ
ttl bk:name # (integer) -2 ์ถ๋ ฅ
โ๏ธ ย ๋ชจ๋ ๋ฐ์ดํฐ ์ญ์ ํ๊ธฐ
1
flushall # ์ฑ๊ณต ์ OK ์ถ๋ ฅ
Key ๋ค์ด๋ฐ ์ปจ๋ฒค์
โ๏ธ ย ์ฝ๋ก (:)์ ํ์ฉํด ๊ณ์ธต์ ์ผ๋ก ์๋ฏธ๋ฅผ ๊ตฌ๋ถํด ์ฌ์ฉ
- users:100:profiles : ์ฌ์ฉ์๋ค(users)์ค์์ PK๊ฐ 100์ธ ์ฌ์ฉ์(user)์ ํ๋กํ(profile)
- products:123:details : ์ํ๋ค(products)์ค์์ PK๊ฐ 123์ธ ์ํ(product)์ ์ธ๋ถ์ฌํญ(details)
๐ ย ํ์ต ๊ฐ์ ์์
This post is licensed under CC BY 4.0 by the author.