安裝
下載,解壓,編譯:
$ wget http://download.redis.io/releases/redis-4.0.10.tar.gz
$ tar xzf redis-4.0.10.tar.gz
$ cd redis-4.0.10
$ make
$ cd src
$ make install
當出現下面情景時,證明安裝完成:
二進制文件是編譯完成後在src目錄下,通過下面的命令啓動Redis服務:
$ cd src
$ ./redis-server
此法會使用默認的redis.conf配置啓動,也可以指定配置文件:
$ ./redis-server /u01/server/redis/redis-4.0.10/redis.conf
或
$ ./redis-server ../redis.conf
後面你可以使用內置的客戶端命令redis-cli進行redis命令的使用:
$ cd src
$ ./redis-cli
redis> set foo bar
OK
redis> get foo
"bar"
後臺啓動redis服務
編輯redis.conf文件,將daemonize屬性改爲yes(表明需要在後臺運行)
$ vim redis.conf
daemonize yes
爲了方便我們使用也可以編輯成服務啓動腳本
$ vim /etc/init.d/redis
#!/bin/sh
#
# redis Startup script for Redis Server
#
# chkconfig: - 80 12
# description: Redis is an open source, advanced key-value store.
#
# processname: redis-server
# config: /u01/server/redis/redis-4.0.10/redis.conf
# pidfile: /var/run/redis_6379.pid
source /etc/init.d/functions
BIN="/u01/server/redis/redis-4.0.10/src"
CONFIG="/u01/server/redis/redis-4.0.10/redis.conf"
PIDFILE="/var/run/redis_6379.pid"
### Read configuration
[ -r "$SYSCONFIG" ] && source "$SYSCONFIG"
RETVAL=0
prog="redis-server"
desc="Redis Server"
start() {
if [ -e $PIDFILE ];then
echo "$desc already running...."
exit 1
fi
echo -n $"Starting $desc: "
daemon $BIN/$prog $CONFIG
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && touch /var/lock/subsys/$prog
return $RETVAL
}
stop() {
echo -n $"Stop $desc: "
killproc $prog
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/$prog $PIDFILE
return $RETVAL
}
restart() {
stop
start
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
restart
;;
condrestart)
[ -e /var/lock/subsys/$prog ] && restart
RETVAL=$?
;;
status)
status $prog
RETVAL=$?
;;
*)
echo $"Usage: $0 {start|stop|restart|condrestart|status}"
RETVAL=1
esac
exit $RETVAL
:wq
$ chmod +x /etc/init.d/redis
$ service redis start
$ service redis stop
$ chkconfig --add redis
設置環境變量,使其生效:
$ vim /etc/profile.d/redis.sh
export REDIS_HOME=/u01/server/redis/redis-4.0.10
export PATH=$PATH:$REDIS_HOME/src
$ source /etc/profile.d/redis.sh
配置下面的內核參數,否則Redis腳本在重啓或停止redis時,將會報錯,並且不能自動在停止服務前同步數據到磁盤上/etc/sysctl.conf加上:
$ vim /etc/sysctl.conf
vm.overcommit_memory = 1
$ sysctl -p
以後就可以使用:
service redis start
service redis stop
啓動和停止redis服務了。
上面內容,命令部分都是實際操作測試無誤。僅供參考。