文档章节

Redis的安装

longload
 longload
发布于 2016/08/14 19:07
字数 983
阅读 21
收藏 0
  1. Redis的下载

     下载redis-3.2.3.tar.gz,或者最新下载地址为http://redis.io/download  或者liunx命令

    # wget https://download.redis.io/releases/redis-3.2.3.tar.gz
  2. 安装编译和安装所需要的包

    因为Redis是基于C编写,需要安装编译和安装所需要的包。执行下面命令(需要Root权限)

    # yum install gcc tcl
  3. 创建安装目录

    # mkdir /usr/local/redis
  4. 解压并安装

    解压并进入目录

    # tar -zxvf redis-3.2.3.tar.gz
    # cd redis-3.2.3

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

    # make PREFIX=/usr/local/redis install

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

  5.  Redis 配置成服务

    • 复制启动脚本到/etc/rc.d/init.d中

      Redis 的启动脚本为(下载文件解压目录里面utils/redis_init_script中):/home/longload/redis-3.2.3/utils/redis_init_script

      # cd /home/longload/redis-3.2.3/utils
      

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

      # cp /home/longload/redis-3.2.3/utils/redis_init_script  /etc/rc.d/init.d/redis
    • 修改配置

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

      # vi /etc/rc.d/init.d/redis
      • 增加chkconfig标识

         在“#!/bin/sh“下面增加。 提示:如果不添加上面的内容,在注册服务时会提示:service redis does not support chkconfig

        #!/bin/sh
        #chkconfig: 2345 80 90
      • 端口配置

        REDISPORT 端口 6379。(注意:端口名将与下面的配置文件名有关) 

      • 修改EXEC路径

         EXEC=/usr/local/bin/redis-server 改为 EXEC=/usr/local/redis/bin/redis-server

      • 修改CLIEXEC路径

         CLIEXEC=/usr/local/bin/redis-cli 改为 CLIEXEC=/usr/local/redis/bin/redis-cli

      • 配置文件设置(创建redis 配置)

        创建conf目录

        # cd /usr/local/redis
        # mkdir conf

         redis 配置文件/home/longload/redis-3.2.3/redis.conf 到/usr/local/redis/conf 目录并按端口号重命名为 6379.conf

        # cp /home/longload/redis-3.2.3/redis.conf /usr/local/redis/conf/6379.conf
      • 修改CONF路径

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

      • 修改 redis 开启的命令,以后台运行的方式执行

        在21行 $EXEC $CONF后面增加&,   $EXEC $CONF &

    • 完整脚本

      #!/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
      
  6. 将 Redis 注册成为服务

    # chkconfig --add redis
  7. 防火墙中打开对应的端口 

    编辑iptables文件(如果Centos7中未安装iptables 、可以参照linux环境下zookeeper部署中的安装)

    # vi /etc/sysconfig/iptables

    加端口配置

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

     重启防火墙

    # systemctl restart iptables.service

    查看端口状态 

    # iptables -L -n
  8. 修改redis 配置文件设置

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

    修改如下配置:      daemonize 为No的时候Pid文件不能生成,不生成Stop不能使用。pid文件名与shell文件对应

    • daemonize no 改为> daemonize yes 

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

    • 注释掉 bind 127.0.0.1 

      注释掉本机,局域网内的所有计算机都能访问.不然会提示Connection refused: connect 

      bind  局域网IP    只能局域网内IP的机器访问, 本地localhost都无法访问。但是可以同时绑定多个Id,例如:bind  192.168.48.111 127.0.0.1   这样局域网和本机都可以访问

    默认情况下,Redis 开启安全认证,可以通过6379.conf 的 requirepass 指定一个验证密码

  9. 启动 Redis 服务

    # service redis start
  10. 将 Redis 添加到环境变量中

    # vi /etc/profile

    增加如下内容(最后)

    ## Redis env
    export PATH=$PATH:/usr/local/redis/bin

    是配置立即生效

    # source /etc/profile
  11. 测试

    使用 redis-cli 等 redis 命令

  12. 关闭 Redis 服务

    # service redis stop

       

© 著作权归作者所有

共有 人打赏支持
longload
粉丝 3
博文 66
码字总数 104702
作品 0
成都
程序员
私信 提问

暂无文章

RestClientUtil和ConfigRestClientUtil区别说明

RestClientUtil directly executes the DSL defined in the code. ConfigRestClientUtil gets the DSL defined in the configuration file by the DSL name and executes it. RestClientUtil......

bboss
37分钟前
6
0

中国龙-扬科
昨天
1
0
Linux系统设置全局的默认网络代理

更改全局配置文件/etc/profile all_proxy="all_proxy=socks://rahowviahva.ml:80/"ftp_proxy="ftp_proxy=http://rahowviahva.ml:80/"http_proxy="http_proxy=http://rahowviahva.ml:80/"......

临江仙卜算子
昨天
5
0
java框架学习日志-6(bean作用域和自动装配)

本章补充bean的作用域和自动装配 bean作用域 之前提到可以用scope来设置单例模式 <bean id="type" class="cn.dota2.tpye.Type" scope="singleton"></bean> 除此之外还有几种用法 singleton:......

白话
昨天
8
0
在PC上测试移动端网站和模拟手机浏览器的5大方法

总结很全面,保存下来以备不时之需。原文地址:https://www.cnblogs.com/coolfeng/p/4708942.html

kitty1116
昨天
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部