CentOS上安装redis

Redis 版本号采用标准惯例:主版本号.副版本号.补丁级别,一个副版本号就标记为一个标准发行版本,例如 1.2,2.0,2.2,2.4,2.6,2.8,奇数的副版本号用来表示非标准版本,例如2.9.x发行版本是Redis 3.0标准版本的非标准发行版本。

  • 标准版本 (3.0)

    Redis 3.0 包含了Redis集群,一个分布式特性的Redis,能够自动分片数据,错误容忍,并提升了在工作负载下的处理速度,改善了AOF重写等。
  • 旧的 (2.8)

    Redis 2.8 是相对较旧的标准版本. 和2.6相比, 该版本更加完善,提供了部分再同步的复制机制,IPv6的支持,配置文件动态重写,通过Pub/Sub实现的键空间通知等诸多特性。

1.安装tcl支持

yum install tcl

2.安装redis我们以最新的2.8.9为例

$ wget http://download.redis.io/releases/redis-2.8.9.tar.gz
$ tar xzf redis-2.8.9.tar.gz
$ cd redis-2.8.9
$ make
$ make test
$ make install

测试通过后安装,安装后会自动把redis-server,redis-cli,redis-benchmark,redis-check-aof,redis-check-dump复制到/usr/local/bin目录下。

编辑redis.conf文件

vi redis.conf

修改daemonize no改成yes。

我们手动复制redis.conf到/etc目录下

cp redis.conf /etc

编写自init.d脚本。

内容如下:

复制代码
###########################
#chkconfig: 2345 10 90
#description: Start and Stop redis
PATH=/usr/local/bin:/sbin:/usr/bin:/bin
   
REDISPORT=6379
EXEC=/usr/local/bin/redis-server
REDIS_CLI=/usr/local/bin/redis-cli
   
PIDFILE=/var/run/redis.pid
CONF="/etc/redis.conf"
   
case "$1" in
    start)
        if [ -f $PIDFILE ]
        then
                echo "$PIDFILE exists, process is already running or crashed"
        else
                echo "Starting Redis server..."
                $EXEC $CONF
        fi
        if [ "$?"="0" ] 
        then
              echo "Redis is running..."
        fi
        ;;
    stop)
        if [ ! -f $PIDFILE ]
        then
                echo "$PIDFILE does not exist, process is not running"
        else
                PID=$(cat $PIDFILE)
                echo "Stopping ..."
                $REDIS_CLI -p $REDISPORT SHUTDOWN
                while [ -x ${PIDFILE} ]
               do
                    echo "Waiting for Redis to shutdown ..."
                    sleep 1
                done
                echo "Redis stopped"
        fi
        ;;
   restart|force-reload)
        ${0} stop
        ${0} start
        ;;
  *)
    echo "Usage: /etc/init.d/redis {start|stop|restart|force-reload}" >&2
        exit 1
esac
##############################
复制代码

可以通过winscp上传到/etc/init.d/目录下

修改权限,可以运行

chmod +x /etc/init.d/redis

设置开机自动启动服务

sudo chkconfig redis on

启动服务:

service redis start

停止服务:

service redis stop

配置防火墙打开对应的端口:

vi /etc/sysconfig/iptables
-A INPUT -m state --state NEW -m tcp -p tcp --dport 6379 -j ACCEPT

 重启防火墙

service iptables restart
原文地址:https://www.cnblogs.com/duyinqiang/p/5696491.html