개발 메모장

[Redis] Redis CLI 명령어 모음 본문

DBMS

[Redis] Redis CLI 명령어 모음

yyyyMMdd 2024. 4. 12. 14:52
728x90
  • Redis 서버와 직접 상호작용 할 수 있는 방법 중 하나로 기본적으로 알아두면 좋을 내용입니다.

  • 물론 GUI를 제공하는 툴도 많지만 redis에 대해 좀 더 깊이 있게 이해할 수 있을 것입니다.

#. Redis 연결하기

 

  • REDIS-CLI
    - localhost로 연결되며 레디스의 기본 포트인 6379로 연결

  • REDIS-CLI -H <호스트명> -P <포트>
    - 기본 로컬 연결이 아닌 특정 서버의 특정 포트로 연결

#. 키-값 설정

 

1) String

 

  • SET KEY VALUE
    - key와 value를 저장합니다.

  • SETEX KEY SECONDS VALUE
    - key와 value를 생성하며 입력한 시간 이후 만료시킵니다.

  • MSET KEY1 VALUE1 KEY2 VALUE2 ...
    - 여러 개의 key와 value를 저장할 때 사용합니다.

  • GET KEY
    - redis에 저장된 key의 value를 조회합니다.
    - key가 없다면 nil을 리턴합니다.

  • MGET KEY1 KEY2 ...
    - 여러개의 key에 대한 value를 조회합니다.

  • DEL KEY
    - key를 삭제합니다.
    - del, exist 등 데이터를 처리하는 경우 정상처리 시 1을 리턴, 에러 시 0을 리턴합니다.

  • INCR / DECR KEY
    - value 값을 1만큼 증가 / 감소시킵니다.
    - value가 문자인 경우 value is not an integer or out of range 에러가 발생합니다.

  • INCRBY / DECRBY KEY INCREMENT / DECREMENT
    - value 값을 지정한 수만큼 증가 / 감소시킵니다.

  • APPEND KEY VALUE
    - key의 기존 value에 신규 value를 추가합니다.

2) List

 

  • LPUSH / RPUSH KEY VALUE1 VALUE2 ...
    - value를 오른쪽에 / 왼쪽에 리스트로 저장합니다.

  • LRANGE KEY START STOP
    - 리스트로 저장한 value를 호출합니다.
    - 몇 번째부터 몇 번째까지에 대한 값을 넣어줍니다.
    - LRANGE key 0 -1 : 모든 값을 리턴합니다.

  • LPOP / RPOP KEY
    - 왼쪽 / 오른쪽의 요소를 반환한 뒤 삭제합니다.

3) Set

 

  • SADD KEY MEMBER1 MEMBER2 ... 
    - 셋에 하나 이상의 멤버를 추가합니다.

  • SREM KEY MEMBER1 MEMBER2 ...
    - 셋에서 하나 이상의 멤버를 제거합니다.

  • SMEMBERS KEY 
    - 셋의 모든 멤버를 리턴합니다.

  • SUNION KEY1 KEY2 ...
    - 여러 셋의 합집합을 리턴합니다.

  • SINTER KEY1 KEY2 ...
    - 여러 셋의 교집합을 리턴합니다.

  • SDIFF KEY1 KEY2 ...
    - 첫 번째 셋과 모든 연속 셋 간의 차이를 리턴합니다.

4) Hash

  • HSET KEY FIELD VALUE
    - 입력한 key와 field에 값을 설정합니다.

  • HGET KEY FIELD
    - 입력한 key와 field에 값을 조회합니다.

  • HGETALL KEY
    - 해시 key의 모든 필드와 값을 리턴합니다.

  • HKEYS KEY
    - 해시 key의 모든 필드를 리턴합니다.

  • HINCRBYFLOAT KEY FIELD INCREMENT
    - 해시 필드의 부동 소수점 값을 입력한 값만큼 증가시킵니다.

#. 만료 시간 확인

  • TTL KEY
    - 시간제한이 설정된 key의 남은 수명을 초로 리턴합니다.
    - key가 없거나 시간제한이 없는 key는 -2를 리턴하고 key는 있으나 시간제한이 없다면 -1을 리턴합니다.

  • PTTL KEY
    - 시간제한이 설정된 key의 남은 수명을 밀리초로 리턴합니다.

  • EXPIRE KEY SECONDS
    - key를 설정한 초만큼 후에 만료시킵니다.

  • PEXPIRE KEY MILLISECONDS
    - key를 설정한 밀리초만큼 후에 만료시킵니다.

  • PERSIST KEY
    - 만료시간이 있는 key를 영구키로 전환합니다.

#. 기타

  • DBSIZE
    - redis에 있는 key의 전체 개수를 리턴합니다.

  • SELECT 1~15
    - 1~15까지 각각의 데이터베이스에 들어갈 수 있습니다.
    - 기본 값은 0입니다.

  • FLUSHALL
    - 모든 데이터베이스의 모든 key를 제거합니다.

  • FLUSHDB
    - 현재 데이터베이스의 모든 key를 제거합니다.

  • KEYS PATTERN
    - 패턴에 맞는 key를 불러옵니다.
    - keys * → 모든 키 호출
    - keys a* → a로 시작하는 모든 키 호출

  • TYPE KEY
    - key의 자료형을 조회합니다.
    - hash 또는 키가 없을 경우 none을 리턴합니다.

  • EXIST KEY
    - key가 존재하는지 확인합니다.

  • RENAMENX OLDKEY NEWKEY
    - key를 변경할 때 사용합니다.
    - 정상적으로 변경 시 1을 리턴하며 변경하고자 하는 newkey가 존재하는 경우 변경하지 않고 0을 리턴합니다.
    - 실수로 기존 키를 덮어쓰는 것을 방지할 수 있습니다.

  • MONITOR
    - 모니터링 모드로 변환하여 실시간 활동을 모니터링, 디버깅 등을 제공하나 데이터 처리가 많을 시 아웃풋이 많이 출력되어 부하상태에 걸릴 수 있습니다.

 

===========================================================
틀린 내용이 있거나 이견 있으시면 언제든 가감 없이 말씀 부탁드립니다!
===========================================================

728x90