Post

Redis[RDB]

Redis

RDB

Redis는 In-Memory방식으로 데이터를 저장합니다.

하지만 이로인해 Redis Server가 예기치 못한일로 다운되거나 꺼져버리면 데이터가 손실 된다는 단점이 있습니다. ( 휘발성 )

이런 단점을 해결하고자 Redis에서는 주 저장소로 쓰이도록 지원하는 방식이 2가지 존재합니다.

그중 1개가 RDB방식입니다.

RDB는 스냅샷(snapshot)을 디스크에 저장하여 데이터를 보관하는 방식입니다.

RDB는 Redis의 메모리 상태를 특정 시간 간격으로 스냅샷으로 저장하므로, 서버가 비정상적으로 종료되어도 해당 시점의 데이터를 복구할 수 있습니다.

그럼 RDB를 설정하는 방법에 대해 알아 보겠습니다.

RDB 설정 방법

설정하는 방법은 간단합니다.

RDB 활성

1
CONFIG SET save "900 1 300 10 60 10000"

900 1 300 10 60 10000 의미

  • 900 1: 900초(15분)마다 변경된 키가 1개 이상이면 스냅샷을 수행합니다.
  • 300 10: 300초(5분)마다 변경된 키가 10개 이상이면 스냅샷을 수행합니다.
  • 60 10000: 60초마다(1분) 변경된 키가 10000개 이상이면 스냅샷을 수행합니다.
  1. 첫 번째 숫자 (시간 간격):
    • 이 숫자는 스냅샷을 수행하는 주기를 지정합니다. 즉, Redis가 스냅샷을 수행하는 주기를 설정하는데 사용됩니다.
    • 시간은 초 단위로 지정되며, 해당 시간이 지나면 스냅샷이 수행됩니다.
  2. 두 번째 숫자 (변경된 키의 수):
    • 이 숫자는 스냅샷을 수행하는 조건으로 변경된 키의 수를 지정합니다. 즉, 변경된 키의 수가 이 숫자 이상이면 스냅샷이 수행됩니다.
    • 변경된 키의 수가 지정된 값 이상이면 스냅샷이 수행됩니다.

RDB파일 저장 경로 및 파일 이름설정

저장경로

1
CONFIG SET dir /path/to/dump.rdb

파일이름

1
CONFIG SET dbfilename <filename>.rdb

위 명령어에서 자리에는 원하는 RDB 파일 이름을 입력하면 됩니다.

이렇게 설정하면 RDB 파일이 해당 경로와 파일 이름으로 저장됩니다.

This post is licensed under CC BY 4.0 by the author.