Redis 설치 버전 확인
MacOS에서 Redis는 홈브류(HomeBrew)로 설치합니다.
Redis를 설치하기 앞서 현재 PC에 설치 버전과 Redis 패키지의 정보를 출력합니다.
홈브류가 구버전인 경우 먼저 brew update 명령문을 실행하여 홈브류를 업데이트합니다.
$ brew info redis
Redis가 설치되지 않았으면 Not installed됩니다.
$ brew info redis
redis: stable 6.2.3, HEAD
Persistent key-value database, with built-in net interface
https://redis.io/
Not installed
From: https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/redis.rb
License: BSD-3-Clause
==> Dependencies
Required: openssl@1.1 ✔
==> Options
--HEAD
Install HEAD version
==> Caveats
To have launchd start redis now and restart at login:
brew services start redis
Or, if you don't want/need a background service you can just run:
redis-server /usr/local/etc/redis.conf
==> Analytics
install: 35,610 (30 days), 122,254 (90 days), 714,113 (365 days)
install-on-request: 35,426 (30 days), 121,657 (90 days), 708,488 (365 days)
build-error: 13 (30 days)
이미 Redis가 설치되어 있다면 다음과 같이 출력됩니다.
$ brew info redis
redis: stable 6.2.6 (bottled), HEAD
Persistent key-value database, with built-in net interface
https://redis.io/
/usr/local/Cellar/redis/6.0.10 (13 files, 3.9MB) *
Poured from bottle on 2021-01-29 at 13:01:36
From: https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/redis.rb
License: BSD-3-Clause
==> Dependencies
Required: openssl@1.1 ✔
==> Options
--HEAD
Install HEAD version
==> Caveats
To restart redis after an upgrade:
brew services restart redis
Or, if you don't want/need a background service you can just run:
/usr/local/opt/redis/bin/redis-server /usr/local/etc/redis.conf
==> Analytics
install: 35,610 (30 days), 122,254 (90 days), 714,113 (365 days)
install-on-request: 35,426 (30 days), 121,657 (90 days), 708,488 (365 days)
build-error: 13 (30 days)
또는 다음 명령문을 사용하여 현재 PC에 설치된 Redis 버전만 출력 할 수 있습니다.
$ redis-server --version
Redis server v=6.2.6 sha=00000000:0 malloc=libc bits=64 build=c6f3693d1aced7d9
다음 명령문은 redis-server --version을 대신 사용 할 수 있습니다.
$ redis-server -v
Redis server v=6.2.6 sha=00000000:0 malloc=libc bits=64 build=c6f3693d1aced7d9
Redis 설치
brew install redis를 입력하여 Stable 버전의 Redis를 설치합니다.
$ brew install redis
Redis 설치가 완료되면 정상 설치를 확인하기 위해서 Redis 버전을 출력합니다.
$ redis-server --version
Redis server v=6.2.6 sha=00000000:0 malloc=libc bits=64 build=c6f3693d1aced7d9
Redis 삭제
다음 명령문을 입력하여 현재 PC에 설치된 Redis를 삭제합니다.
$ brew uninstall redis
만약 일부 config 관련 파일이 삭제되지 않았을 수 있습니다.
$ brew uninstall redis
Uninstalling /usr/local/Cellar/redis/6.2.3... (11 files, 1.8MB)
Warning: The following may be redis configuration files and have not been removed!
If desired, remove them manually with `rm -rf`:
/usr/local/etc/redis-sentinel.conf
/usr/local/etc/redis-sentinel.conf.default
/usr/local/etc/redis.conf
/usr/local/etc/redis.conf.default
이 경우 삭제가 누락된 파일을 수동으로 삭제해야 합니다.
$ rm -rf /usr/local/etc/redis-sentinel.conf
$ rm -rf /usr/local/etc/redis-sentinel.conf.default
$ rm -rf /usr/local/etc/redis.conf
$ rm -rf /usr/local/etc/redis.conf.default
Redis 설치 및 환경 설정 경로
MacOS에서는 디폴트로 다음 경로 /usr/local/bin/에서 Redis와 관련된 링크가 생성됩니다.
Redis 서버를 운영시키기 위한 redis-server 그리고 Redis 서버에 접속하여 데이터 생성/삭제/관리 등의 요청을 보낼 수 있는 redis-client가 존재합니다.
$ cd /usr/local/bin/
$ ls -l | grep redis
lrwxr-xr-x 1 namepgb admin 41 2 4 19:53 redis-benchmark -> ../Cellar/redis/6.2.6/bin/redis-benchmark
lrwxr-xr-x 1 namepgb admin 41 2 4 19:53 redis-check-aof -> ../Cellar/redis/6.2.6/bin/redis-check-aof
lrwxr-xr-x 1 namepgb admin 41 2 4 19:53 redis-check-rdb -> ../Cellar/redis/6.2.6/bin/redis-check-rdb
lrwxr-xr-x 1 namepgb admin 35 2 4 19:53 redis-cli -> ../Cellar/redis/6.2.6/bin/redis-cli
lrwxr-xr-x 1 namepgb admin 40 2 4 19:53 redis-sentinel -> ../Cellar/redis/6.2.6/bin/redis-sentinel
lrwxr-xr-x 1 namepgb admin 38 2 4 19:53 redis-server -> ../Cellar/redis/6.2.6/bin/redis-server
Redis 서버의 환경 설정을 위한 파일 redis.conf은 다음 경로 /usr/local/etc/에 생성됩니다.
redis.conf 파일은 Redis 서버를 실행하면서 파라미터로 전달 할 수 있습니다.
$ ls -l | grep redis
-rw-r--r-- 1 namepgb admin 13768 10 4 19:59 redis-sentinel.conf
-rw-r--r-- 1 namepgb admin 93765 2 4 19:53 redis.conf
Redis 서버 실행
Redis 서버를 실행하는 명령문은 다음 두 가지입니다.
우선 redis-server 명령문을 이용한 Redis 서버의 실행입니다. 이 명령문을 사용하면 Redis 서버가 포그라운드(Foreground) 프로세스로 시작합니다.
포그라운드 상태의 프로세스는 키보드 Ctrl+C를 입력하여 서비스를 종료 할 수 있습니다.
$ redis-server
15444:C 04 Feb 2022 20:21:48.591 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
15444:C 04 Feb 2022 20:21:48.591 # Redis version=6.2.6, bits=64, commit=00000000, modified=0, pid=15444, just started
15444:C 04 Feb 2022 20:21:48.591 # Warning: no config file specified, using the default config. In order to specify a config file use redis-server /path/to/redis.conf
15444:M 04 Feb 2022 20:21:48.592 * Increased maximum number of open files to 10032 (it was originally set to 256).
15444:M 04 Feb 2022 20:21:48.592 * monotonic clock: POSIX clock_gettime
_._
_.-``__ ''-._
_.-`` `. `_. ''-._ Redis 6.2.6 (00000000/0) 64 bit
.-`` .-```. ```\/ _.,_ ''-._
( ' , .-` | `, ) Running in standalone mode
|`-._`-...-` __...-.``-._|'` _.-'| Port: 6379
| `-._ `._ / _.-' | PID: 15444
`-._ `-._ `-./ _.-' _.-'
|`-._`-._ `-.__.-' _.-'_.-'|
| `-._`-._ _.-'_.-' | https://redis.io
`-._ `-._`-.__.-'_.-' _.-'
|`-._`-._ `-.__.-' _.-'_.-'|
| `-._`-._ _.-'_.-' |
`-._ `-._`-.__.-'_.-' _.-'
`-._ `-.__.-' _.-'
`-._ _.-'
`-.__.-'
15444:M 04 Feb 2022 20:21:48.593 # Server initialized
15444:M 04 Feb 2022 20:21:48.593 * Loading RDB produced by version 6.2.6
15444:M 04 Feb 2022 20:21:48.593 * RDB age 972 seconds
15444:M 04 Feb 2022 20:21:48.594 * RDB memory usage when created 0.96 Mb
15444:M 04 Feb 2022 20:21:48.594 # Done loading RDB, keys loaded: 0, keys expired: 0.
15444:M 04 Feb 2022 20:21:48.594 * DB loaded from disk: 0.000 seconds
15444:M 04 Feb 2022 20:21:48.594 * Ready to accept connections
다음은 홈브류를 이용한 Redis 서버 실행입니다.
brew 명령문을 사용하여 Redis 서버를 실행하면 서비스가 백그라운드(Background) 프로세스로 시작합니다.
$ brew services start redis
==> Successfully started `redis` (label: homebrew.mxcl.redis)
Redis 서버 환경 지정 및 백그라운드로 실행
홈브류를 사용하지 않고 Redis 서버를 실행하면 서비스가 포그라운드 프로세스로 동작합니다.
서비스를 백그라운드 프로세스로 시작하려면 환경 설정 파일 /usr/local/etc/redis.conf의 내용을 수정합니다.
# daemonize no
daemonize yes
기존 daemonize no 환경 설정 값을 주석 #으로 처리하고 daemonize yes로 수정합니다.
이 환경 설정 값을 Redis 서버의 백그라운드(daemonize yes) 또는 포그라운드(daemonize no) 여부를 결정합니다.
지정된 환경 설정 파일을 기준으로 Redis 서버를 실행하려면 다음 명령문을 사용합니다.
$ redis-server /usr/local/etc/redis.conf
Redis 서버 종료
Redis 서버가 brew 명령문에 의해 실행 중이라면 다음 명령문을 입력합니다.
$ brew services stop redis
Stopping `redis`... (might take a while)
==> Successfully stopped `redis` (label: homebrew.mxcl.redis)
또는 Redis 클라이언트를 사용하여 서버 종료를 요청 할 수 있습니다.
$ redis-cli shutdown
Redis 서버 실행 상태 확인
Redis 클라이언트를 통해 접속 서버의 상태를 검사 할 수 있습니다.
$ redis-cli ping
PONG
이 클라이언트 명령문은 Redis 서버로부터 단순 응답을 기대하는 PING 요청을 보냅니다.
Redis 서버가 실행중이 아니라면 다음과 같이 출력됩니다.
$ redis-cli ping
Could not connect to Redis [host:port]: Connection refused
다음은 Redis 서버의 활성 포트를 기준으로 PC에서 실행중인 프로세스를 검색하는 방법입니다.
별도의 환경 설정 값을 변경하지 않았다면 Redis 서버는 6379번 포트를 사용합니다.
$ ps -ef | grep 6379
501 17635 1 0 8:47PM ?? 0:00.16 /usr/local/opt/redis/bin/redis-server 127.0.0.1:6379
'DB & Storage & Stream > Redis' 카테고리의 다른 글
Windows 10에서 Redis 설치하기 (0) | 2024.02.18 |
---|---|
MacOS에서 Redis 클라이언트 실행, 종료, 원격 접속하기 (0) | 2022.02.04 |