zoukankan      html  css  js  c++  java
  • CentOS 7 源码编译安装 Redis

    1.下载源码并解压

    wget http://download.redis.io/releases/redis-4.0.10.tar.gz
    tar -xzf redis-4.0.10.tar.gz
    cd redis-4.0.10

    2.编译

    yum -y install gcc gcc-c++ kernel-devel
    make

    等待编译完成

    3.安装

    make PREFIX=/usr/local/redis install
    mkdir /usr/local/redis/etc/
    cp redis.conf /usr/local/redis/etc/
    cd /usr/local/redis/bin/
    cp redis-benchmark redis-cli redis-server /usr/bin/

    4.更改配置

    vim /usr/local/redis/etc/redis.conf
    
    # 修改一下配置
    # redis以守护进程的方式运行
    # no表示不以守护进程的方式运行(会占用一个终端)  
    daemonize yes
    
    # 客户端闲置多长时间后断开连接,默认为0关闭此功能                                      
    timeout 300
    
    # 设置redis日志级别,默认级别:notice                    
    loglevel verbose
    
    # 设置日志文件的输出方式,如果以守护进程的方式运行redis 默认:"" 
    # 并且日志输出设置为stdout,那么日志信息就输出到/dev/null里面去了 
    logfile stdout
    # 设置密码授权
    requirepass <设置密码>
    # 监听ip
    bind 127.0.0.1 

    5.配置环境变量

    vim /etc/profile
    export PATH="$PATH:/usr/local/redis/bin"
    # 保存退出
    
    # 让环境变量立即生效
    source /etc/profile

    6.配置启动脚本

    #!/bin/bash
    #chkconfig: 2345 80 90
    # Simple Redis init.d script conceived to work on Linux systems
    # as it does use of the /proc filesystem.
    
    PATH=/usr/local/bin:/sbin:/usr/bin:/bin
    REDISPORT=6379
    EXEC=/usr/local/redis/bin/redis-server
    REDIS_CLI=/usr/local/redis/bin/redis-cli
       
    PIDFILE=/var/run/redis.pid
    CONF="/usr/local/redis/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

    7.开启自启动设置

    # 复制脚本文件到init.d目录下
    cp redis /etc/init.d/
    
    # 给脚本增加运行权限
    chmod +x /etc/init.d/redis
    
    # 查看服务列表
    chkconfig --list
    
    # 添加服务
    chkconfig --add redis
    
    # 配置启动级别
    chkconfig --level 2345 redis on

    8.启动测试

    systemctl start redis   #或者 /etc/init.d/redis start  
    systemctl stop redis   #或者 /etc/init.d/redis stop
    
    # 查看redis进程
    ps -el|grep redis
    
    # 端口查看
    netstat -an|grep 6379

    参考资料:

    https://segmentfault.com/a/1190000003084917

    https://www.cnblogs.com/smail-bao/p/6164132.html

    https://www.cnblogs.com/joshua317/p/5635483.html

  • 相关阅读:
    DES、RC4、AES等加密算法优势及应用
    Jupyter Notebook 快捷键
    python 清华镜像pip install
    anaconda下载 (清华镜像)
    pycharm 授权/激活
    python序列中添加高斯噪声
    python 如何在一个.py文件中调用另一个.py文件的类
    pycharm 变量批量重命名
    pycharm常用快捷键
    C++中获取时间
  • 原文地址:https://www.cnblogs.com/jianmingyuan/p/11089412.html
Copyright © 2011-2022 走看看