잘 정리해보자

redis-cli 명령어 - string 본문

DB/Redis

redis-cli 명령어 - string

토마토오이 2024. 5. 1. 11:28

Rdis 설치 후 설치한 경로에서 redis-cli 실행해서 명령어 확인하기 전에, Redis명령어는 버전에 따라 차이가 어느정도 있는 것 같으니 꼭 버전 확인이 필요!

 

Redis 버전 조회

$ redis-cli --version
redis-cli 7.2.4

 

 

Redis는 key-value로 값이 저장되며, string 타입은  set/get 으로 값을 저장하고 가져온다.

 

set : key-value 를 저장, get : key값으로 value값 호출

set [key값] [value값]

get [key값]

127.0.0.1:6379> set os_key window
OK
127.0.0.1:6379> get os_key
"window"

 

 

mset : 여러개의 key-value를 저장, mget : 여러개의 key값으로 value값 조회.

mset [key값] [value값] [key값] [value값] ...
mget [key값] [key값]

127.0.0.1:6379> mset test_key1 value1 test_key2 value2
OK
127.0.0.1:6379> mget test_key1 test_key2
1) "value1"
2) "value2"

> mset 으로 key-value 를 순차적으로 나열하면 여러 값들을 한 번에 저장 할 수 있다.

 

del : key값으로 key-value 모두 삭제

del [key값]

127.0.0.1:6379> keys *
1) "test_key2"
2) "test_key1"
3) "os_key"
127.0.0.1:6379> del test_key2
(integer) 1
127.0.0.1:6379> del test_key2
(integer) 0
127.0.0.1:6379> keys *
1) "test_key1"
2) "os_key"

> test_key2 삭제 후 1 경우, 데이터가 존재했었고 삭제되었음을 의미.

> test_key2 삭제 후 0 경우, 삭제할 값이 없음.

 

 

getdel : value값을 삭제 후 값 내용을 리턴

getdel [key값]

127.0.0.1:6379> getdel test_key1
"value1"
127.0.0.1:6379> get test_key1
(nil)

> 해당 명령어는 redis 버전 6.2 이상에서만 지원해서 필요한 경우 업데이트 필요!

> 레디스 공식 문서

https://redis.io/docs/latest/commands/getdel/

 

GETDEL

Returns the string value of a key after deleting the key.

redis.io

 

 

 

setex : 설정한 시간만큼 key-value가 유지

setex [key값] [설정할시간:초 단위] [value값]

127.0.0.1:6379> setex time_test 10 time_value
OK
127.0.0.1:6379> keys *
1) "os"
2) "time_test"
127.0.0.1:6379> get time_test
"time_value"
127.0.0.1:6379> get time_test
(nil)
127.0.0.1:6379> keys *
1) "os"

 

 

ttl / pttl : 시간이 제한된 key값에 남은 시간 (ttl : 초 단위, pttl : ms단위)

ttl [key값] / pttl [key값]

127.0.0.1:6379> setex time_test 180 time_value
OK
127.0.0.1:6379> ttl time_test
(integer) 175
127.0.0.1:6379> pttl time_test
(integer) 166364
127.0.0.1:6379> ttl time_test
(integer) 152

 

exists : key값으로 존재여부 확인

exists [key값]

127.0.0.1:6379> exists time_test
(integer) 0

 

 

type : 저장된 value의 타입 조회

type [key값]

127.0.0.1:6379> set int_value_key 1234
OK
127.0.0.1:6379> get int_value_key
"1234"
127.0.0.1:6379> type int_value_key
string

> String경우 value값에 따로 타입이 없으며, 기본 String으로 저장.

> 하지만 아래와 같이 계산이 가능.

 

incr / decr : value값을 1씩 더하고 빼기

incr [key값] / decr [key값]

127.0.0.1:6379> incr int_value_key
(integer) 1235
127.0.0.1:6379> get int_value_key
"1235"
127.0.0.1:6379> decr int_value_key
(integer) 1234

 

 

 

DB 크기나 모든 key값 조회 경우

dbsize : DB의 크기를 조회

keys * : DB내의 모든 key값을 조회

127.0.0.1:6379> dbsize
(integer) 2
127.0.0.1:6379> keys *
1) "int_value_key"
2) "os_key"

 

 

select : DB를 선택 - Default 0이며, 동일 Key값 관리할 경우 DB이동해서 관리

select [index]

127.0.0.1:6379> select 1
OK
127.0.0.1:6379[1]> select 2
OK
127.0.0.1:6379[2]> select 0
OK
127.0.0.1:6379> dbsize
(integer) 2
127.0.0.1:6379> select 1
OK
127.0.0.1:6379[1]> dbsize
(integer) 0

> 기본 db 0 에서 size가 2였는데, 1로 이동해서 size는 0 

 

 

 

'DB > Redis' 카테고리의 다른 글

Redis 설치 - window  (0) 2024.05.01
Redis 개념 정리  (1) 2024.04.21
Comments