zoukankan      html  css  js  c++  java
  • Redis安装以及常见问题

    安装

    下载

    redis官网地址:https://redis.io/

    centos安装

    1. 创建软件放置目录mkdir soft
    2. 进入soft目录并下载redis安装包。
    cd soft 
    wget https://download.redis.io/releases/redis-6.0.9.tar.gz
    
    1. 解压 tar -zxvf redis-6.0.9.tar.gz
    2. 进入解压后目录,并查看README文件。了解软件说明和使用方式。
    # 阅读README,查看软件说明。可以得知在根目录下执行make命令
    vi README
    
    1. 执行make 命令进行编译。正确编译后可在src目录下看到运行redis的方法
    2. 创建服务,便于日后进行管理
    make PREFIX=/opt/endea/redis install
    #设置环境变量
    vi /etc/profile
        REDIS_HOME=/opt/endea/redis
        export PATH=$PATH:$REDIS_HOME/bin
    source /etc/profile
    cd /utils
    ./install_server.sh
    #一步一步安装,选择端口号,配置文件目录,日志目录,数据目录;可以执行多次,执行一次安装创建一个redis实例进程,但是端口号不能一致
    

    常见问题

    make失败问题

    根据日志进行查看,结合日志进行查看

    未安装编译工具引起

    yum install gcc

    gcc版本问题引起

    报错如下:

    server.c:5127:29: 错误:‘struct redisServer’没有名为‘pidfile’的成员
         if (background || server.pidfile) createPidFile();
                                 ^
    server.c:5132:16: 错误:‘struct redisServer’没有名为‘sentinel_mode’的成员
         if (!server.sentinel_mode) {
                    ^
    server.c:5142:19: 错误:‘struct redisServer’没有名为‘cluster_enabled’的成员
             if (server.cluster_enabled) {
                       ^
    server.c:5150:19: 错误:‘struct redisServer’没有名为‘ipfd_count’的成员
             if (server.ipfd_count > 0 || server.tlsfd_count > 0)
                       ^
    server.c:5150:44: 错误:‘struct redisServer’没有名为‘tlsfd_count’的成员
             if (server.ipfd_count > 0 || server.tlsfd_count > 0)
    

    原因: gcc版本和redis版本不兼容
    查看gcc版本:

    gcc -v
    

    解决方法:升级gcc版本

    yum -y install centos-release-scl  # 升级到9.1版本
    yum -y install devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutils
    #永久使用gcc9.1版本
    echo "source /opt/rh/devtoolset-9/enable" >>/etc/profile
    #临时使用gcc9.1版本
    scl enable devtoolset-9 bash
    

    ./install_server.sh安装失败问题

    问题如下

    This systems seems to use systemd.
    Please take a look at the provided example service unit files in this directory, and adapt and install them. Sorry!
    

    解决方案
    打开install_server.sh文件(vi install_server.sh),注释如下内容即可。

    #bail if this system is managed by systemd
    #_pid_1_exe="$(readlink -f /proc/1/exe)"
    #if [ "${_pid_1_exe##*/}" = systemd ]
    #then
    #       echo "This systems seems to use systemd."
    #       echo "Please take a look at the provided example service unit files in this directory, and adapt and install them. Sorry!"
    #       exit 1
    #fi
    
  • 相关阅读:
    在Oracle中添加用户 赋权 修改暗码 解锁
    Ubuntu Linux 8.04 Vsftp 假造用户设置
    用一个实例讲解DB2数据库游标轮回的成果
    解说Oracle数据库自动增长列的完成过程
    MSN登录错误“80072efd”解决办法
    再学 GDI+[61]: 路径画刷(1) SetCenterColor、SetSurroundColors
    WinAPI: 测试 BitBlt
    两个 CopyRect
    再学 GDI+[58]: 路径 保存与读取路径数据
    再学 GDI+[62]: 路径画刷(2) SetCenterPoint、GetCenterPoint
  • 原文地址:https://www.cnblogs.com/brilliantl/p/14022983.html
Copyright © 2011-2022 走看看