[Redis][실전레디스] 레디스 트랜잭션 MULTI-EXEC & Lua 스크립트
·
DB/Redis
Redis의 트랜잭션과 원자적 처리 방식Redis는 기본적으로 단일 스레드 기반으로 동작하며, 이를 활용한 단순한 트랜잭션 기능과 고급 제어를 위한 Lua 스크립트 기능을 제공합니다. 이 글에서는 Redis의 트랜잭션 개념과 그 한계, 그리고 Lua 스크립트를 통한 원자적 처리 방식에 대해 설명합니다. 1. Redis 트랜잭션 (MULTI / EXEC)Redis의 트랜잭션은 RDBMS의 ACID 트랜잭션과는 다르게, 명령어를 일괄적으로 순차 실행하는 방식입니다. 사용 예시MULTISET key1 "value1"SET key2 "value2"EXECMULTI로 트랜잭션을 시작하고,여러 명령을 큐에 쌓은 뒤,EXEC 명령을 통해 한 번에 실행합니다. 특징트랜잭션 내부의 명령어는 순차적으로 실행되며, 실행 중..
[Redis][실전레디스] 레디스 운용관리 - 스냅샷 심화
·
DB/Redis
Redis 스냅샷(RDB: Redis Database File)RDB는 Redis의 데이터를 특정 시점에 복제해 디스크에 저장하는 방식입니다. 이 저장본을 **스냅샷(Snapshot)**이라고 하며, .rdb 파일로 저장됩니다. Redis 서버가 재시작되면 해당 파일을 불러와 데이터를 복원합니다. RDB 저장 트리거 (자동 + 수동)1. 자동 저장설정 파일(redis.conf)에서 save 옵션으로 조건 정의조건 중 하나라도 만족하면 RDB 스냅샷 생성save 900 1 # 15분(900초) 동안 1개 이상의 키 변경 발생 시 저장save 300 10 # 5분 동안 10개 이상save 60 10000 # 1분 동안 1만 개 이상 2. 수동 저장명령어 사용SAVE: 동기식 저장 (Redis가 멈추고 저장 ..
[Redis][실전레디스] 레디스 운용관리 - 스냅샷 & AOF
·
DB/Redis
Redis 데이터 영속성(Persistence)에 대한 이해와 운영관리 관점의 접근Redis는 대표적인 인메모리 데이터 저장소로, 빠른 응답성과 높은 처리량을 강점으로 갖고 있습니다. 하지만 그 특성상 서버가 종료되거나 장애가 발생하면 메모리에 존재하던 데이터가 모두 유실될 수 있다는 단점도 내포하고 있습니다. 이를 보완하기 위해 Redis는 데이터 영속성(Persistence) 기능을 제공하며, 이는 운영관리 측면에서 서비스의 안정성과 신뢰성을 확보하는 데 매우 중요한 요소입니다.Redis는 두 가지 방식의 영속성 메커니즘을 지원합니다. 각각의 방식은 장단점이 뚜렷하므로, 서비스 특성과 운영 전략에 따라 적절히 선택하거나 병행하여 사용하는 것이 중요합니다. 데이터 영속성 관리1. RDB 스냅샷 (Red..
[MySQL][MAC] brew services start mysql와 mysql.server start 차이
·
DB/MySQL
brew services start mysql와 mysql.server start는 MySQL을 시작하는 두 가지 다른 방법입니다. 이 둘 사이의 주요 차이점은 관리 방법과 사용되는 시스템 서비스 관리자에 있습니다. 각각에 대해 자세히 설명하겠습니다. brew services start mysql Homebrew 서비스를 사용: macOS에서 Homebrew 패키지 매니저를 통해 설치된 MySQL 인스턴스를 시작합니다. Homebrew는 macOS (또는 Linux)용 패키지 매니저로, 소프트웨어의 설치와 관리를 쉽게 해줍니다. 백그라운드에서 실행: brew services start mysql 명령은 MySQL을 백그라운드 서비스로 시작합니다. 이는 시스템 부팅 시 MySQL이 자동으로 시작되도록 설정..
[MySQL][MAC] MAC에서 MySQL 설치 방법
·
DB/MySQL
MySQL 설치 가이드 (macOS 기준)MySQL을 설치하는 과정을 간단하고 깔끔하게 정리했습니다. 아래 단계를 따라 설치를 완료하세요.1. 터미널 실행2. Homebrew 업데이트brew update만약 Homebrew가 오래된 경우 아래 명령어로 업그레이드합니다.brew upgrade3. MySQL 설치brew install mysql4. 설치 확인mysql --version정상적으로 설치되었다면, 다음과 유사한 메시지가 출력됩니다.mysql Ver X.X.X for macosXX.X on arm64 (Homebrew)본인의 운영체제와 MySQL 버전을 확인하세요.5. MySQL 서버 시작mysql.server start정상적으로 실행되면 아래와 같은 메시지가 출력됩니다.Starting MySQL...
[DB] 데이터베이스 관련 개념 - 01
·
DB/MySQL
DB관련 개념 데이터 (Data): 의미를 가지면서 기록될 수 있는 사실 데이터 베이스 (DataBase): 관련있는 데이터들의 모임 데이터베이스 관리 시스템 (DBMS, DataBase Management System): 데이터베이스의 생성과 관리를 담당하는 소프트웨어 패키지, 직역 그대로 DataBase(데이터베이스) Management(관리) System(시스템)이다. 데이터베이스 시스템 (DataBase System):데이터베이스와 그를 관리하는 소프트웨어(DBMS,응용프로그램) 모두를 칭하는 용어 작은 세계(mini-world): 데이터베이스 구축의 대상이 되는 실세계의 일부분 데이터베이스 시스템 구조 크게 나누어서 데이터베이스 시스템은 데이터베이스, 데이터베이스 관리 시스템, 데이터 모델로 나..
개발자 성현
'DB' 카테고리의 글 목록