文档章节

Redis的安装

longload
 longload
发布于 2016/08/14 19:07
字数 983
阅读 20
收藏 0
点赞 0
评论 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
成都
程序员

暂无相关文章

如何使用serverchan微信推送告警

之前实现推送告警信息到微信的方法有如下几种: 1、通过企业公众号实现----收费: 2、通过QQ邮箱,在微信平台上开启收到邮件进行提醒; 3、第三方告警平台API,一般也是收费的; 不过最近看文...

问题终结者 ⋅ 34分钟前 ⋅ 0

TCP的RPC

RPC就是远程方法调用(Remote Process Call ),包含了客户端和服务端,涉及了对象的序列化传输。 1.服务端启动,注册远程调用的类2.客户端发送请求信息包含类、方法、参数的一些信息、序列化传...

Cobbage ⋅ 54分钟前 ⋅ 0

IOS-UI UI初步代码布局添加事件

ISO开发界面,UI是必须学习的一部分,其实很早之前想学来了,一直没有沉下心来学习。看到IOS的代码风格和布局就别扭的不行,跟java代码和android布局比较显得不是那么方便,所以一直到现在。...

京一 ⋅ 今天 ⋅ 0

浅谈OpenDaylight的二次开发

OpenDaylight作为一款开源SDN网络控制器,依托于强大的社区支持以及功能特性,成为了目前主流的SDN网络控制器开发平台。在比较稳定的OpenDaylight Helium版本中,已经为开发者提供了大量的网...

wangxuwei ⋅ 今天 ⋅ 0

API 开发中可选择传递 token 接口遇到的一个坑

在做 API 开发时,不可避免会涉及到登录验证,我使用的是jwt-auth 在登录中会经常遇到一个token过期的问题,在config/jwt.php默认设置中,这个过期时间是一个小时,不过为了安全也可以设置更...

等月人 ⋅ 今天 ⋅ 0

Java NIO之文件处理

程序要操作本地操作系统的一个文件,可以分为以下三个部分: 对文件位置的操作 对文件的操作 对文件内容的操作 其中,对文件内容的操作在 Java NIO之Channel 中已经有了介绍,通过FileChann...

士别三日 ⋅ 今天 ⋅ 0

Maven的pom.xml配置文件详解

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.......

小海bug ⋅ 今天 ⋅ 0

解决httpclient超时设置不生效的问题

最近公司有项目需要通过http调用第三方服务,且第三方服务偶有超时,故需要设置一定的超时时间防止不响应的情况出现。 初始设置如下: [java] view plain copy //超时设置 RequestConfig re...

Mr_Tea伯奕 ⋅ 今天 ⋅ 0

过滤器Filter和拦截器HandlerInterceptor

过滤器 依赖于servlet容器。在实现上基于函数回调,可以对几乎所有请求进行过滤,但是缺点是一个过滤器实例只能在容器初始化时调用一次。使用过滤器的目的是用来做一些过滤操作,获取我们想要...

hutaishi ⋅ 今天 ⋅ 0

Redis入门详解(转)

Redis入门详解 Redis简介 Redis安装 Redis配置 Redis数据类型 Redis功能 持久化 主从复制 事务支持 发布订阅 管道 虚拟内存 Redis性能 Redis部署 Redis应用场景 Redis总结 Redis简介: Redi...

xiaoyaoyoufang ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部