Redis는 메모리 기반의 키-값 저장소로, 빠른 속도와 다양한 자료구조 지원 덕분에 백엔드 시스템에서 널리 사용됩니다. 이 글에서는 Redis의 기본 CLI 도구인 redis-cli의 설치부터 주요 명령어 사용법까지 단계별로 안내합니다.
redis-cli는 Redis 서버와 직접 통신할 수 있는 커맨드라인 도구입니다. Redis의 데이터를 읽고 쓰고 관리하는 모든 명령을 터미널에서 실행할 수 있게 해줍니다.
보통 Redis를 설치하면 redis-cli도 함께 설치됩니다. 플랫폼별 설치 방법은 아래와 같습니다:
brew install redis
sudo apt update
sudo apt install redis
redis-cli --version
redis-cli
기본적으로 로컬 Redis 서버 (localhost:6379)에 접속합니다. 다른 호스트에 접속하려면 다음과 같이 합니다:
redis-cli -h 127.0.0.1 -p 6379
SET name "redis" # 'name'이라는 키에 'redis'라는 값을 저장합니다.
GET name # 'name' 키에 저장된 값을 조회합니다.
DEL name # 'name' 키를 삭제합니다.
EXISTS name # 'name' 키가 존재하는지 확인합니다. (1이면 존재, 0이면 없음)
KEYS * # 현재 저장된 모든 키를 조회합니다.
KEYS a* # 'a'로 시작하는 모든 키를 조회합니다.
KEYS *user* # 키 이름에 'user'가 포함된 모든 키를 조회합니다.
KEYS data:2023:* # 'data:2023:'로 시작하는 키들을 조회합니다.
TTL name # 'name' 키의 남은 TTL(Time To Live, 초 단위)을 확인합니다.
TYPE name # 'name' 키의 데이터 타입을 확인합니다. (string, list 등)
주의: KEYS 명령은 많은 키가 있는 운영 환경에서 성능 저하를 일으킬 수 있으므로, SCAN 명령으로 대체하는 것이 좋습니다.
SCAN 0 # 모든 키를 점진적으로 탐색합니다 (출력된 커서로 다음 호출)
SCAN 0 MATCH a* # 'a'로 시작하는 키를 점진적으로 탐색합니다
SCAN 0 MATCH user:* COUNT 100 # 'user:'로 시작하는 키를 100개 단위로 탐색합니다
# 반복 호출 예시
SCAN 0 MATCH user:\* COUNT 100
SCAN 23 MATCH user:\* COUNT 100
SCAN 56 MATCH user:\* COUNT 100
SCAN 명령은 서버에 부담을 주지 않고 안전하게 키를 조회할 수 있으며, 커서를 반환하여 반복적으로 호출해야 합니다. 대용량 데이터 처리에 적합합니다.
DEL name # 'name' 키를 삭제합니다.
DEL key1 key2 key3 # 여러 개의 키를 한 번에 삭제합니다.
UNLINK key1 key2 # DEL과 유사하지만, 비동기적으로 삭제하여 성능 영향을 줄입니다.
FLUSHALL # 현재 Redis에 저장된 모든 데이터를 삭제합니다.
FLUSHDB # 현재 선택된 DB의 모든 데이터를 삭제합니다.
주의: FLUSHALL과 FLUSHDB는 복구 불가능한 명령이므로 주의해서 사용해야 합니다. 반드시 테스트 환경 또는 초기화 목적일 때만 사용하세요.
LPUSH fruits "apple" # 'fruits' 리스트의 왼쪽에 'apple'을 추가합니다.
RPUSH fruits "banana" # 'fruits' 리스트의 오른쪽에 'banana'를 추가합니다.
LRANGE fruits 0 -1 # 'fruits' 리스트의 전체 요소를 조회합니다.
SADD colors "red" # 'colors' 집합(Set)에 'red'를 추가합니다.
SADD colors "blue" # 'colors' 집합(Set)에 'blue'를 추가합니다.
SMEMBERS colors # 'colors' 집합에 포함된 모든 값을 조회합니다.
HSET user:1000 name "Alice" # 'user:1000' 해시(Hash)에 name 필드를 추가하고 "Alice" 값을 설정합니다.
HGET user:1000 name # 'user:1000' 해시에서 name 필드의 값을 조회합니다.
HGETALL user:1000 # 'user:1000' 해시에 저장된 모든 필드와 값을 조회합니다.
PING # 서버가 살아있는지 확인. 응답으로 PONG 반환
INFO # Redis 서버의 통계 및 상태 정보를 출력합니다.
MONITOR # 실시간으로 Redis에서 실행되는 모든 명령어를 출력합니다. 디버깅에 유용합니다.
AUTH yourpassword # Redis 인증 비밀번호를 입력하여 인증합니다.
이 글에서는 redis-cli를 사용하여 Redis의 기본적인 기능들을 실습해보았습니다. 다음 단계로는 Redis를 Java 애플리케이션과 연동하거나, 캐싱 전략에 대한 글을 읽어보는 것을 추천드립니다.
질문이 있다면 댓글로 남겨주세요! 😊
| [입문 필독] Spring 계층 구조 예제와 자주 하는 실수 정리 (0) | 2025.06.12 |
|---|---|
| JPA 실무에서 자주 묻는 질문 Top 5 + 팀장님이 좋아하는 질문법 (0) | 2025.06.08 |
| 초보 백엔드 개발자를 위한 HTTP 상태코드 (0) | 2025.06.01 |
| Spring Boot에서 CORS 오류 완벽 해결하기 – @CrossOrigin, WebMvcConfigurer, 예외 처리까지 (0) | 2025.06.01 |
| 비동기 처리란? 언제, 왜, 어떻게 사용하는가 (0) | 2025.05.29 |