安装
下载,解压,编译:
$ wget http://download.redis.io/releases/redis-4.0.10.tar.gz
$ tar xzf redis-4.0.10.tar.gz
$ yum install gcc #安装gcc依赖
$ 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服务了。
上面内容,命令部分都是实际操作测试无误。仅供参考。