레디스에는 다양한 커멘드를 지원한다.
그 중 가장 많이 쓰는 커멘드를 알아 보겠다.
set
일단 제일 기본적인 set 이다. 말그대로 데이터를 입력하는 것이다.
127.0.0.1:6379> set key hi
OK
127.0.0.1:6379> set key1 wonwoo
OK
get
데이터를 넣었으니 가져와야 한다.
127.0.0.1:6379> get key
"hi"
127.0.0.1:6379> get key1
"wonwoo"
del
데이터를 지우는 연산이다.
127.0.0.1:6379> get key
"hi"
127.0.0.1:6379> del key
(integer) 1
127.0.0.1:6379> get key
(nil)
incr
숫자를 증가 시키는 연산이다.
127.0.0.1:6379> set count 10
OK
127.0.0.1:6379> incr count
(integer) 11
127.0.0.1:6379> incr count
(integer) 12
만약 숫자가 아닌 문자를 했을 경우에는 에러가 난다.
incrby
숫자만큼 더해주는 연산이다.
127.0.0.1:6379> set count 100
OK
127.0.0.1:6379> incrby count 40
(integer) 140
lpush
list의 자료구조 연산이다. 왼쪽부터 차례대로 넣는다.
127.0.0.1:6379> lpush mylist hi
(integer) 1
127.0.0.1:6379> lpush mylist wonwoo
(integer) 2
127.0.0.1:6379> lpush mylist hello
(integer) 3
127.0.0.1:6379> lpush mylist world
(integer) 4
lpop
넣었으니 빼야 된다. 여기서 주의할점은 빼는거다 가져오는것이 아니라 정확히는 가져와서 빼는거지...
127.0.0.1:6379> lpop mylist
"world"
127.0.0.1:6379> lpop mylist
"hello"
lrange
list의 값을 읽을수 있는 연산이다. 파라미터 2개가 주어지는데 첫번째는 시작점 두번째는 끝점이다.
만약 -(마이너스) 일경우에는 한바퀴도는 셈이다. 한번 보자
127.0.0.1:6379> lpush mylist hi wonwoo hello world hello
(integer) 5
127.0.0.1:6379> lrange mylist 0 -1
1) "hello"
2) "world"
3) "hello"
4) "wonwoo"
5) "hi"
127.0.0.1:6379> LRANGE mylist 2 3
1) "hello"
2) "wonwoo"
127.0.0.1:6379> LRANGE mylist 0 -3
1) "hello"
2) "world"
3) "hello"
한번 해보면 더 이해가 갈 것이다.
rpush
lpush와 마찬가지 이지만 자료구조 오른쪽에 넣는 것이다.
127.0.0.1:6379> rpush mylist right
(integer) 6
127.0.0.1:6379> lrange mylist 0 -1
1) "hello"
2) "world"
3) "hello"
4) "wonwoo"
5) "hi"
6) "right"
rpop은 있는데 rrange은 없는 듯하다.
sadd
자료 구조 Set으로 이해하면 되겠다. 중복을 허용하지 않는다.
127.0.0.1:6379> sadd myset 1 10 222
(integer) 3
127.0.0.1:6379> SMEMBERS myset
1) "1"
2) "10"
3) "222"
127.0.0.1:6379> sadd myset 1
(integer) 0
smembers
Set의 데이터를 가져오는 연산이다.
127.0.0.1:6379> smembers myset
1) "1"
2) "10"
3) "222"
spop
Set의 값을 꺼내오는 듯하다. 하지만 Set은 순서를 보장하지 않기에 순서가 자기 마음 대로다.
127.0.0.1:6379> sadd myset 1 2 3
(integer) 3
127.0.0.1:6379> spop myset
"1"
127.0.0.1:6379> spop myset
"3"
127.0.0.1:6379> spop myset
"2"
127.0.0.1:6379> sadd myset 1 2 3
(integer) 3
127.0.0.1:6379> spop myset
"3"
127.0.0.1:6379> spop myset
"2"
127.0.0.1:6379> spop myset
"1"
hmset
해쉬형태의 자료구조이다 key value로 입력가능하다.
127.0.0.1:6379> hmset myhash key1 hello key2 world
OK
hget
해쉬형태의 값을 가져오는 연산이다.
127.0.0.1:6379> hget myhash key1
"hello"
hdel
해쉬값을 지우는 연산이다.
127.0.0.1:6379> hdel myhash key1
(integer) 1
127.0.0.1:6379> hget myhash key1
(nil)
일단 자주 쓰는 듯한 것을 알아 봤다.
더 많이 알아보고 싶다면
여기 자세히 나와 있다.