目录

CentOS下的Redis安装+开机自启动

CentOS上安装Redis

很久没有折腾Redis了,最近为了实现在Oauth的服务端使用Redis缓存code和accessToken之类的数据又开始重操旧业,中间遇上一些问题顺便记录下来避免下回再遇上还得慢慢百度。

首先确定下你的系统版本是否为 CentOS release 6.5 (Final) ,如果不是可能中间会有少许出入。(centos版本号查看方法:cat /etc/redhat-release

然后开始动手下载安装吧:

一、安装

  1. 从官网下载最新的稳定版(你看到这篇文章的时候也许redis已经更新了新的稳定版本,建议先查看是否为最新的稳定版 http://www.redis.io/download
wget http://download.redis.io/releases/redis-2.8.17.tar.gz

2. 解压
tar xzf redis-2.8.17.tar.gz

3. 编译(编译的时间可能会有些长,可以去喝杯茶)
cd redis-2.8.17
make
  1. 测试是否安装成功(这个测试会比较花时间,非必要步骤,不赶时间的建议还是测试一下)
make test

有可能你会遇上 You need tcl 8.5 or newer in order to run the Redis test 这个错误提示,好吧,我们再更新一下tcl(这个是已经下好放百度云盘的大伙儿可以下好传服务器上,需要别的可以自行下载)

4.1 下载

tcl8.6.1-src.tar.gz

4.2 解压安装

tar xzf tcl8.6.1-src.tar.gz
cd tcl8.6.1/unix/
./configure
make
sudo make install

4.3 回到redis刚刚的安装目录 make test 试试吧。

  1. 复制/移动需要的文件到你的server目录
sudo mkdir /Your Server/redis
sudo mkdir /Your Server/redis/src
cd redis-2.8.17
sudo cp redis.conf /Your Server/redis
sudo cp src/redis-server /Your Server/redis/src
sudo cp src/redis-benchmark /Your Server/redis/src
sudo cp src/src/redis-cli /Your Server/redis/src
  1. 修改redis配置(我只改了守护进程模式启动)
vim /Your Server/redis/redis.conf
daemonize = yes

二、配置开机自启动

(网上有些教程说需要修改内核文件配置vm.overcommit_memory = 1,看下了这个参数的作用是"强占"内核的做法,感觉似乎不妥而且也没找到原文件有这个配置项,所以这步不做)

  1. 写shell脚本(资料来源网上,转载太多无法确定原作者,望原作者看到可以告知我一声)
#!/bin/bash

# redis - this script starts and stops the redis-server daemon
#
# chkconfig:  - 80 12
# description: Redis is a persistent key-value database
# processname: redis-server
# config:   /usr/local/redis/etc/redis.conf
# pidfile:   /usr/local/redis/var/redis.pid

source /etc/init.d/functions

BIN="/Your Server/redis/src"
CONFIG="/Your Server/redis/redis.conf"
PIDFILE="/Your Server/redis/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
  1. 添加到自启中
sudo chmod 755 /etc/init.d/redis
sudo chkconfig --add redis
sudo chkconfig --level 345 redis on
sudo chkconfig --list redis
  1. 启动redis
sudo /etc/init.d/redis start

提示:Starting Redis Server: [ OK ]

  1. 测试添加数据
/Your Server/redis/src/redis-cli

127.0.0.1:6379> set test 'Hello Mudoom'
OK
127.0.0.1:6379> get test
"Hello Mudoom"

自此Redis安装大功告成。

PS:如有疑问,欢迎留言

But,记得留下你的联系方式方便我回复 :)

转载请注明文章出处:https://www.mudoom.com 谢谢:)