1. 拥有Redis压缩包,地址:http://redis.io/download 我的是3.07
2. 解压包和创建redis安装目录
tar -zxvf XXX
mkdir -p /usr/local/redis/bin
mkdir -p /usr/local/redis/etc
3. 编译
(1)redis的编译方式有点不一样, 不必configure, 直接make
make
(make之后会在目录下生成redis.conf文件和src文件夹)
(2)(进入src目录)
cd src
(3)安装
make install
4. 部署
(1)将Redis文件中刚刚生成的redis.conf扔去/usr/local/redis/ect
(2)将Redis文件中src文件夹中的mkreleasehdr.sh redis-benchmark redis-check-aof redis-check-dump redis-cli redis-sentinel redis-server redis-trib.rb 8个文件扔去/usr/local/redis/bin
5. 测试是否安装成功(出现图形表示安装成功)
(执行Redis-server 命令,启动Redis 服务)
cd /usr/local/redis/bin
./redis-server
注意:这里直接执行Redis-server 启动的Redis服务,是在前台直接运行的,也就是说,执行完该命令后,如果Lunix关闭当前会话,则Redis服务也随即关闭。正常情况下,启动Redis服务需要从后台启动,并且指定启动配置文件。
6. 配置后台运行
编辑conf文件,将daemonize属性改为yes(表明需要在后台运行)
cd /usr/local/redis/ect
vim redis.conf
vim快速查找 :/daemonize,将daemonize属性改为yes(原来是no的)
daemonize = yes
再跑, 后台运行成功!
7. 随机启动
(脚本已扔进文件夹)
(1)把脚本放进/etc/init.d/
(2)授予执行权限 chmod +x /etc/init.d/redis
(3)添加进系统服务chkconfig --add redis
(4)开机启动chkconfig --level 2345 redis on
8. 配置环境变量
vim /etc/profile
在最后行添加:
export PATH="$PATH:/usr/local/redis/bin"
刷一下
. /etc/profile(.与/是分开的)
9. 配置内核参数
vim /etc/sysctl.conf
放这句进去:
vm.overcommit_memory = 1
刷一下
sysctl -p
10. 成功!
附上随机启动脚本
s script starts and stops the redis-server daemon
#
# chkconfig: - 80 12
# description: Redis is a persistent key-value database
# processname: redis-server
# config: /etc/redis/redis.conf
# pidfile: /var/run/redis.pid source /etc/init.d/functions BIN="/usr/local/bin"
CONFIG="/usr/local/redis/etc/redis.conf"
PIDFILE="/var/run/redis.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