[Redis] Ubuntu에 Redis 설치하기
Ubuntu에 Redis를 설치해보도록 하겠습니다
Redis 설치하기
redis를 다운받고 압축을 풀어줍니다
wget http://download.redis.io/redis-stable.tar.gz
tar xvzf redis-stable.tar.gz
redis-stable 폴더로 이동하여 컴파일을 합니다
cd redis-stable
make
이때, make가 설치가 안됐다며 다음과 같은 오류가 발생할 수 있습니다
Command 'make' not found, but can be installed with:
apt install make
apt install make-guile
root권한을 사용하여 make를 설치해주면 오류가 해결됩니다
sudo apt install make
make를 설치후 다시 make 명령어를 치면 다음과 같은 오류가 발생할 수 있습니다
cd src && make all
make[1]: Entering directory '/usr/local/redis/redis-stable/src'
CC adlist.o
In file included from adlist.c:34:0:
zmalloc.h:50:10: fatal error: jemalloc/jemalloc.h: No such file or directory
#include <jemalloc/jemalloc.h>
^~~~~~~~~~~~~~~~~~~~~
compilation terminated.
Makefile:248: recipe for target 'adlist.o' failed
make[1]: *** [adlist.o] Error 1
make[1]: Leaving directory '/usr/local/redis/redis-stable/src'
Makefile:6: recipe for target 'all' failed
make: *** [all] Error 2
distclean 명령어로 압축을 처음 푼 상태로 되돌리고 다시 설치를 해줍니다
make distclean
sudo make install
Redis 실행하기
컴파일이 완료되면 redis를 실행해보도록 하겠습니다
단순 실행 명령어는 다음과 같습니다
redis-server
하지만 보통 redis server와 다른 server를 동시에 실행하기 때문에 redis를 백그라운드로
실행하는 법에 대해서 알아보겠습니다
Z3 204
Redis 백그라운드로 실행하기 (using DAEMON)
redis를 백그라운드로 실행하는 법은 손쉽게 daemon으로 돌리는 법과 systemd service를 이용하는 방법이 있습니다
daemon 으로 먼저 실행해보겠습니다
redis-server --daemonize yes
잘 돌아가는지 확인해보겠습니다
redis-cli ping
다음과 같이 pong 이라고 응답이 온다면 성공입니다!
Redis 백그라운드로 실행하기 (using Systemd)
이번에는 systemd service 로 redis를 백그라운드에서 실행해보도록 하겠습니다
sudo systemctl start redis
위의 명령어를 입력했을 때 다음과 같은 오류가 발생할 수 있습니다
Failed to start redis.service: Unit redis.service not found.
stackoverflow에서 해결법을 찾아보니 다음과 같습니다
sudo nano /etc/systemd/system/redis.service
nano 를 사용하여 redis.service파일을 만들고 다음과 같이 입력한 후 저장합니다
[Unit]
Description=Redis In-Memory Data Store
After=network.target
[Service]
User=redis
Group=redis
ExecStart=/usr/local/bin/redis-server /etc/redis/redis.conf
ExecStop=/usr/local/bin/redis-cli shutdown
Restart=always
[Install]
WantedBy=multi-user.target
(nano파일 저장방법은 ctrl+X 를 누르신 후 Y , enter 를 차례대로 입력하시면 됩니다)
다시 sudo systemctl start redis 명령어를 실행합니다
redis가 잘 돌아가고 있는지 확인해보겠습니다
sudo systemctl status redis
Active : active(running)이라고 뜬다면 성공한것입니다!