레디스 설치하기
wget을 사용해 Redis 7.0.8 소스 패키지 다운로드 (해당 실습에서 레디스 7 버전을 사용)
# 특정 버전(7.0.8)을 명시적으로 다운로드
$ wget http://download.redis.io/releases/redis-7.0.8.tar.gz
# 최신 안정(stable) 버전을 다운로드
$ wget http://download.redis.io/redis-stable.tar.gz
실습 환경 - macOS
# Homebrew를 사용해 GCC 설치
$ brew install gcc
# 다운로드한 Redis 압축 해제
$ tar -zxvf redis-7.0.8.tar.gz
# 디렉토리 이름 변경
$ mv redis-7.0.8 redis
# Redis 디렉토리로 이동
$ cd redis
# Redis 컴파일
$ make
Redis를 설치하는 과정에서 예상치 못한 컴파일 에러가 발생한 경우 이 글을 참고해주세요.
위 과정까지 진행하면 Redis 소스 코드 컴파일까지 완료된 상태
즉, make 명령어를 통해 Redis 실행 파일(redis-server, redis-cli 등)이 생성된 상태이고, 아직 시스템에 설치된 것은 아님
이제 생성된 실행 파일을 원하는 디렉토리에 설치하기 위해 다음 명령어를 실행해야 함
꼭 Redis 소스 디렉토리 안에 설치할 필요는 없기 때문에, 사용자가 접근하기 편한 디렉토리 경로로 설치
Ex) /usr/local/bin이나 ${HOME}/redis
# PREFIX= 뒤에 지정한 경로에 Redis 실행 파일과 관련 파일이 설치됨
$ make PREFIX=${redis 디렉터리 경로}/redis install
이후 redis 디렉토리로 이동하면 bin 디렉토리가 생성된 것을 확인할 수 있다.
$ cd ~
$ cd redis
$ ls
bin 디렉토리에는 다음과 같은 실행 파일들이 있는데 간단히 정리하면 아래와 같다.
- redis-server → Redis 서버 실행, 실제 Redis 구동
- redis-cli → Redis 클라이언트, 터미널에서 명령어 입력 가능
- redis-sentinel → Redis Sentinel 실행, 클러스터 모니터링 및 자동 장애 조치
- redis-benchmark → Redis 성능 측정, 명령어 처리 속도 테스트
- redis-check-aof → AOF 파일 점검 및 복구
- redis-check-rdb → RDB 파일 점검 및 복구
설치 후에는 ${설치한_경로}/bin/redis-server 또는 ${설치한_경로}/bin/redis-cli 형태로 실행할 수 있는데, 터미널 어디서든 redis-server를 실행할 수 있도록 PATH 환경 변수를 추가하면 편리하다.
$ echo 'export PATH=$HOME/redis/bin:$PATH' >> ~/.zshrc
$ source ~/.zshrc
redis-server → 데이터베이스 서버를 실행할 때 사용 (데이터를 저장하고 요청을 처리)
redis-cli → 서버에 명령을 보내고 결과를 확인할 때 사용 (명령어를 보내거나 데이터를 조회, 조작)
실행화면

MacOS에서 Homebrew 패키지 매니저를 통해 redis를 설치하는 방법도 있다.
# redis 설치
$ brew install redis
# redis 구동
$ brew services start redis
레디스 환경 구성
이전에 실행시킨 레디스 프로세스를 중지시키고 설정 파일을 변경해보자.
서버 환경 설정 변경
- Open files 확인
- Redis의 기본 maxclients 값은 10000
- 예약 파일 32개이므로, maxclients + 32 보다 서버의 최대 파일 디스크립터 수가 커야한다. (더 작으면 조정해야 함)
- THP 비활성화
- 커맨드로 비활성화 가능 (리눅스 환경별 다를 수 있음)
- vm.overcommit_memory = 1로 변경
- Redis 프로세스 실행 도중 메모리를 순간적으로 초과할 상황에 대비
- somaxconn과 syn_backlog 설정 변경
- Redis의 기본 tcp-backlog 값은 511
- 서버 OS 설정이 최소 이 값 이상이 되도록 설정해야 함
레디스 설정 기본 값
- port: 6379
- Redis 기본 포트
- bind: 127.0.0.1 -::1
- 로컬호스트(localhost)에서만 접근 허용 (외부 접속 차단)
- protected-mode: yes
- 보안 모드 활성화 (bind 없이 실행 시 외부 접근 차단)
- requirepass / masterauth: 없음
- 기본적으로 비밀번호 인증 없음 (직접 설정 필요)
- daemonize: no
- 기본적으로 포그라운드(foreground) 실행 (백그라운드 실행 원하면 yes로 변경)
- dir: ./
- 현재 디렉토리를 데이터 저장 경로로 사용
레디스 실행하기
# 프로세스 시작 (redis.conf 설정 파일을 적용하여 Redis 서버 실행)
$ redis-server redis.conf
# 프로세스 종료 (클라이언트 프로그램인 redis-cli에서 서버에 명령을 보내서 서버 종료를 요청)
$ redis-cli shutdown
위에서 환경변수를 설정하지 않았다면, 현재 위치에서 (redis 디렉토리에서) bin/redis-server redis.conf
- $ redis-server redis.conf → Redis 서버 프로세스 실행 (설정 파일 적용해서 서버를 띄움)
- $ redis-cli shutdown → 클라이언트(redis-cli) 를 사용해서 서버 종료 명령을 보낸 것
레디스 접속
# 옵션이 없다면 기본값으로 할당
$ redis-cli -h ${ip주소} -p ${포트번호} -a ${비밀번호}
-h → 기본값 127.0.0.1
-p → 기본값 6379
-a → 비밀번호가 없으면 인증 없이 접속
데이터 저장과 조회

'Study Notes > 개발자를 위한 레디스' 카테고리의 다른 글
| [개발자를 위한 레디스] 6장 레디스를 메시지 브로커로 사용하기 (0) | 2025.11.15 |
|---|---|
| [개발자를 위한 레디스] 5장 레디스를 캐시로 사용하기 (0) | 2025.11.10 |
| [개발자를 위한 레디스] 4장 레디스 자료 구조 활용 사례 (0) | 2025.11.03 |
| [개발자를 위한 레디스] 3장 레디스 기본 개념 (1) | 2025.10.11 |
| [개발자를 위한 레디스] 1장 마이크로서비스 아키텍처와 레디스 (0) | 2025.08.13 |