zoukankan      html  css  js  c++  java
  • Redis 的安装与使用(单节点)

    Redis 的安装与使用(单节点)  

    环境:CentOS 6.5

    Redis 版本:redis-3.0 (考虑到Redis3.0 在集群和性能提升方面的特性,rc 版为正式版的候选版,而且

    很快就出正式版)

    安装目录:/usr/local/redis


    编译和安装所需的包:

    # yum install gcc tcl


    用户:root

    下载redis:

    上传到服务器的/usr/local/src 目录下

    tar -zxvf redis-3.0.7.tar.gz

    创建安装目录:

    # mkdir /usr/local/redis

    解压: 

    ========================================

    Redis 的安装与使用(单节点)



    IP:192.168.100.111

    环境:CentOS 6.6

    Redis 版本:redis-3.0 (考虑到Redis3.0 在集群和性能提升方面的特性,rc 版为正式版的候选版,而且

    很快就出正式版)

    安装目录:/usr/local/redis

    用户:root



    编译和安装所需的包:

    # yum install gcc tcl



    下载3.0 版Redis (本人用的是redis-3.0.7.tar.gz,可以根据情况在安装时自行选用最新版)

    # cd /usr/local/src

    # wget https://github.com/antirez/redis/archive/redis-3.0.7.tar.gz



    创建安装目录:

    # mkdir /usr/local/redis


    解压:

    # tar -zxvf 3.0.0-rc5.tar.gz

    # mv redis-3.0.0-rc5 redis3.0

    # cd redis3.0


    安装(使用PREFIX 指定安装目录):

    # make PREFIX=/usr/local/redis install

    安装完成后,可以看到/usr/local/redis 目录下有一个bin 目录,bin 目录里就是redis 的命令脚本:

    redis-benchmark redis-check-aof redis-check-dump redis-cli redis-server


    将Redis 配置成服务:

    按上面的操作步骤,Redis 的启动脚本为:/usr/local/src/redis3.0/utils/redis_init_script

    将启动脚本复制到/etc/rc.d/init.d/ 目录下,并命名为redis :

    # cp /usr/local/src/redis3.0/utils/redis_init_script /etc/rc.d/init.d/redis

    编辑/etc/rc.d/init.d/redis,修改相应配置,使之能注册成为服务:

    # vi /etc/rc.d/init.d/redis

    #!/bin/sh
    #
    # Simple Redis init.d script conceived to work on Linux systems
    # as it does use of the /proc filesystem.
    REDISPORT=6379
    EXEC=/usr/local/bin/redis-server
    CLIEXEC=/usr/local/bin/redis-cli
    
    PIDFILE=/var/run/redis_${REDISPORT}.pid
    CONF="/etc/redis/${REDISPORT}.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
    ;;
    stop)
    if [ ! -f $PIDFILE ]
    then
    echo "$PIDFILE does not exist, process is not running"
    else
    PID=$(cat $PIDFILE)
    echo "Stopping ..."
    $CLIEXEC -p $REDISPORT shutdown
    while [ -x /proc/${PID} ]
    do
    echo "Waiting for Redis to shutdown ..."
    sleep 1
    done
    echo "Redis stopped"
    fi
    ;;
    *)
    echo "Please use start or stop as first argument"
    ;;
    esac


    查看以上redis 服务脚本,关注标为橙色的几个属性,做如下几个修改的准备:

    (1) 在脚本的第一行后面添加一行内容如下:

    chkconfig: 2345 80 90

    (如果不添加上面的内容,在注册服务时会提示:service redis does not support chkconfig

    (2) REDISPORT 端口保持6379 不变;(注意,端口名将与下面的配置文件名有关)

    (3) EXEC=/usr/local/bin/redis-server 改为 EXEC=/usr/local/redis/bin/redis-server

    (4) CLIEXEC=/usr/local/bin/redis-cli 改为CLIEXEC=/usr/local/redis/bin/redis-cli

    (5) 配置文件设置:

    创建redis 配置文件目录

    # mkdir /usr/local/redis/conf

    复制redis 配置文件/usr/local/src/redis3.0/redis.conf/usr/local/redis/conf 目录并按端口

    号重命名为6379.conf

    # cp /usr/local/src/redis3.0/redis.conf /usr/local/redis/conf/6379.conf

    做了以上准备后,再对CONF 属性作如下调整:

    CONF="/etc/redis/${REDISPORT}.conf" 改为 CONF="/usr/local/redis/conf/${REDISPORT}.conf"

    (6) 更改redis 开启的命令,以后台运行的方式执行:

    $EXEC $CONF &  # “&”作用是将服务转到后面运行

    修改后的/etc/rc.d/init.d/redis 服务脚本内容为: 

    #!/bin/sh
    #chkconfig: 2345 80 90
    #
    # Simple Redis init.d script conceived to work on Linux systems
    # as it does use of the /proc filesystem.
    REDISPORT=6379
    EXEC=/usr/local/redis/bin/redis-server
    CLIEXEC=/usr/local/redis/bin/redis-cli
    PIDFILE=/var/run/redis_${REDISPORT}.pid
    CONF="/usr/local/redis/conf/${REDISPORT}.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
    ;;
    stop)
    if [ ! -f $PIDFILE ]
    then
    echo "$PIDFILE does not exist, process is not running"
    else
    PID=$(cat $PIDFILE)
    echo "Stopping ..."
    $CLIEXEC -p $REDISPORT shutdown
    while [ -x /proc/${PID} ]
    do
    echo "Waiting for Redis to shutdown ..."
    
    sleep 1
    done
    echo "Redis stopped"
    fi
    ;;
    *)
    echo "Please use start or stop as first argument"
    ;;
    esac


    以上配置操作完成后,便可将Redis 注册成为服务:

    # chkconfig --add redis



    防火墙中打开对应的端口

    # vi /etc/sysconfig/iptables

    添加:

    -A INPUT -m state --state NEW -m tcp -p tcp --dport 6379 -j ACCEPT

    重启防火墙:

    # service iptables restart



    修改redis 配置文件设置:

    # vi /usr/local/redis/conf/6379.conf

    修改如下配置

    daemonize no 改为> daemonize yes

    pidfile /var/run/redis.pid 改为> pidfile /var/run/redis_6379.pid

    logfile "" 改为 logfile "/var/log/redis/redis.log"    --日志文件路径

    创建日志目录:

    mkdir /var/log/redis

    启动Redis 服务

    # service redis start



    将Redis 添加到环境变量中:

    # vi /etc/profile

    在最后添加以下内容:

    ## Redis env

    export PATH=$PATH:/usr/local/redis/bin

    使配置生效:

    # source /etc/profile

    现在就可以直接使用redis-cli 等redis 命令了:


    关闭Redis 服务

    # service redis stop



    默认情况下,Redis 开启安全认证,可以通过/usr/local/redis/conf/6379.conf 的requirepass 指定一个

    验证密码。

  • 相关阅读:
    【leetcode】1365. How Many Numbers Are Smaller Than the Current Number
    【leetcode】1363. Largest Multiple of Three
    【leetcode】1362. Closest Divisors
    【leetcode】1361. Validate Binary Tree Nodes
    【leetcode】1360. Number of Days Between Two Dates
    【leetcode】1359. Count All Valid Pickup and Delivery Options
    【leetcode】1357. Apply Discount Every n Orders
    【leetcode】1356. Sort Integers by The Number of 1 Bits
    ISE应用入门的一些问题
    DDR的型号问题
  • 原文地址:https://www.cnblogs.com/gmq-sh/p/6978789.html
Copyright © 2011-2022 走看看