본문 바로가기

Database

Ubuntu에서 REDIS DB 설치 및 설정

반응형

 

1. Overview

REDIS (REmote DIctionary Server)는 높은 성능과 유연성을 자랑하는 오픈 소스 인메모리 데이터 구조 서버입니다. NoSQL 데이터베이스로 분류되며, 키-값(key-value) 저장소로 주로 사용됩니다. REDIS는 빠른 읽기/쓰기 속도와 다양한 데이터 구조(스트링, 해시, 리스트, 셋, 정렬된 셋)를 지원하여 캐싱, 세션 관리, 메시지 브로커 등 다양한 용도로 활용됩니다. 메모리는 최소 16GB가 필요하다고 하여, 미니PC하나에 구성해 볼 예정입니다.

 

2. REDIS Server 설치

- 패키지 업데이트:

sudo apt update

- REDIS 설치:

sudo apt install redis-server

- 설치 확인:

redis-server --version

 

위 명령어를 통해 설치가 정상적으로 완료되었는지 확인할 수 있습니다.

 

3. REDIS Server 설정

- 설정 파일 편집:

sudo vi /etc/redis/redis.conf

 

vi 편집기를 사용하여 설정 파일을 엽니다. 설정 파일에서 기본 설정과 접속 관련 설정을 수정할 수 있습니다.

 

1) 기본 설정:

  • bind 127.0.0.1 : REDIS가 로컬 호스트에서만 접속을 허용하도록 설정합니다.
  • protected-mode yes : 보호 모드를 활성화하여 외부에서의 무단 접속을 방지합니다.

2) 접속 관련 설정:

- IP 주소 및 포트 설정:

bind 0.0.0.0 ::1
port 6379

 

모든 IP에서 접속을 허용하고, 기본 포트로 6379를 사용합니다.

 

- 비밀번호 설정:

requirepass yourpassword

 

yourpassword 부분에 원하는 비밀번호를 설정하여 접속 시 인증을 요구합니다.

 

3) REDIS 서비스 재시작:

sudo systemctl restart redis-server

 

설정 변경 후 REDIS 서비스를 재시작하여 변경 사항을 적용합니다.

 

4) REDIS 서비스 상태 확인:

sudo systemctl status redis-server

 

REDIS 서비스가 정상적으로 작동하는지 확인합니다.

 

4. 간단한 사용방법

설치 및 설정이 완료된 후, 간단한 REDIS 사용 방법을 소개합니다.

- REDIS 클라이언트 접속:

redis-cli
> AUTH yourpassword
> ACL SETUSER yourusername on >yourpassword allkeys allcommands

 

- 데이터 추가:

set mykey "Hello, World!"

 

- 데이터 조회:

keys *
get mykey

 

데이터의 만료 날짜 설정: 데이터를 일정 시간 후에 자동으로 삭제되도록 하기 위해 만료 시간을 설정할 수 있습니다.

아래 명령어를 사용합니다:

setex mykey 3600 "Hello, Redis!"

 

위 명령어는 mykey에 3600초(1시간) 동안 "Hello, Redis!" 값을 설정합니다.

또한 expire 명령어를 사용하여 기존 키의 만료 시간을 설정할 수도 있습니다:

expire mykey 3600

 

남은 만료 시간을 확인하는 방법은 아래와 같습니다.

ttl mykey

 

5. 정리

글에서는 Ubuntu에서 REDIS 설치하고 설정하는 기본 과정을 설명하였습니다. REDIS 다양한 애플리케이션에서 활용될 있으며, 적절한 설정과 관리로 시스템 성능을 크게 향상시킬 있습니다. 저는 Spring에서 세션 클러스터링이나 캐싱 용도로 사용해볼까 합니다.