zoukankan      html  css  js  c++  java
  • Linux安装Redis步骤和make遇到的坑

    Linux安装Redis服务步骤

    1.获取redis资源

    ​​​​​​​cd /usr/local
    
    wget https://mirrors.huaweicloud.com/redis/redis-6.0.10.tar.gz
    

    2.解压

    tar xzvf redis-6.0.10.tar.gz

    3.安装

    cd redis-6.0.10
     
    make
     
    cd src
     
    make install PREFIX=/usr/local/redis
    

    4.移动配置文件到安装目录下

     cd ../
     
     mkdir /usr/local/redis/etc
     
     mv redis.conf /usr/local/redis/etc
    

    5.redis配置调整:vim redis.conf

    配置redis为后台启动:将daemonize no 改成daemonize yes
    配置远程访问:将protected-mode yes 改为 no

    1、关闭protected-mode模式,此时外部网络可以直接访问

    2、开启protected-mode保护模式,需配置bind ip或者设置访问密码

    设置密码:# requirepass foobared 修改成 : requirepass 123456

    6.将redis加入开机启动:vim /etc/rc.local

    添加命令:/usr/local/redis/bin/redis-server /usr/local/redis-6.0.10/etc/redis.conf

    7.启动redis服务

    /usr/local/redis/bin/redis-server /usr/local/redis-6.0.1/etc/redis.conf

    停止redis服务:pkill redis

    卸载redis

    rm -rf /usr/local/redis-6.0.1 //删除安装目录
     
    rm -rf /usr/bin/redis-* //删除所有redis相关命令脚本
     
    rm -rf /root/download/redis-6.0.1 //删除redis解压文件夹
    

    8.redis安装过程中make遇到的问题

    安装gcc:yum install gcc

    再次执行:make install PREFIX=/usr/local/redis

    如果仍然报错:

    make[1]: *** [server.o] 错误 1
    make[1]: 离开目录“/usr/redis-6.0.1/src”
    make: *** [all] 错误 2
    server.c:2402:11: 错误:‘struct redisServer’没有名为‘assert_file’的成员
         server.assert_file = "<no file>";
               ^
    server.c:2403:11: 错误:‘struct redisServer’没有名为‘assert_line’的成员
         server.assert_line = 0;
               ^
    server.c:2404:11: 错误:‘struct redisServer’没有名为‘bug_report_start’的成员
         server.bug_report_start = 0;
               ^
    server.c:2405:11: 错误:‘struct redisServer’没有名为‘watchdog_period’的成员
         server.watchdog_period = 0;
               ^
    server.c:2411:11: 错误:‘struct redisServer’没有名为‘lua_always_replicate_commands’的成员
         server.lua_always_replicate_commands = 1;
    

    解决办法:

    [root@localhost redis-6.0.1]# gcc -v                             # 查看gcc版本
    [root@localhost redis-6.0.1]# yum -y install centos-release-scl  # 升级到9.1版本
    [root@localhost redis-6.0.1]# yum -y install devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutils
    [root@localhost redis-6.0.1]# scl enable devtoolset-9 bash
    以上为临时启用,如果要长期使用gcc 9.1的话:
    [root@localhost redis-6.0.1]# echo "source /opt/rh/devtoolset-9/enable" >>/etc/profile
    

    再次执行:

    make install PREFIX=/usr/local/redis
    

    安装成功会出现:Hint: It's a good idea to run 'make test'

    执行make test 进行测试,如果出现如下错误:

    [root@localhost redis-6.0.1]# make test
    cd src && make test
    make[1]: 进入目录“/usr/redis-6.0.1/src”
        CC Makefile.dep
    make[1]: 离开目录“/usr/redis-6.0.1/src”
    make[1]: 进入目录“/usr/redis-6.0.1/src”
    You need tcl 8.5 or newer in order to run the Redis test
    make[1]: *** [test] 错误 1
    make[1]: 离开目录“/usr/redis-6.0.1/src”
    

    解决方法:

    [root@localhost redis-6.0.1]# yum install tcl
    [root@localhost redis-6.0.1]# make test
    

    执行make test成功,安装成功!!!

    转自 冰颜

  • 相关阅读:
    国外摄影网站
    网络基础之子网划分
    Java-多线程第三篇3种创建的线程方式、线程的生命周期、线程控制、线程同步、线程通信
    Java-多线程第二篇多线程相关认识(2)
    设计模式-第八篇之桥接模式
    设计模式-第七篇之门面模式
    设计模式-第六篇之策略模式
    设计模式-第五篇之命令模式
    设计模式-第四篇之代理模式
    设计模式-第九篇之观察者模式
  • 原文地址:https://www.cnblogs.com/Fzeng/p/14383690.html
Copyright © 2011-2022 走看看