1. 直接上redis官网安装包, 然后上传服务器

  https://redis.io/download

  

2. 解压

  tar -zxvf redis-5.0.6.tar.gz

3. 进入redis根目标

   cd redis-5.0.6

4.编译安装

  直接make, 但是我这虚拟机报错了, 报错信息如下

  

cd hiredis && make static
make[3]: Entering directory `/root/redis-5.0.6/deps/hiredis'
gcc -std=c99 -pedantic -c -O3 -fPIC -Wall -W -Wstrict-prototypes -Wwrite-strings -g -ggdb net.c
make[]: gcc: Command not found
make[3]: *** [net.o] Error 127
make[3]: Leaving directory `/root/redis-5.0.6/deps/hiredis'
make[2]: *** [hiredis] Error 2
make[2]: Leaving directory `/root/redis-5.0.6/deps'
make[1]: [persist-settings] Error 2 (ignored)
CC adlist.o
/bin/sh: cc: command not found
make[1]: *** [adlist.o] Error 127
make[1]: Leaving directory `/root/redis-5.0.6/src'
make: *** [all] Error 2

看起来,就是没有gcc库, 我们可以使用whereis 命令查看一下

果真没有gcc库,我们使用yum 安装 ,执行以下命令

yum install -y gcc

install安装gcc之后,我们可以再使用whereis命令查看

这下子,gcc已经安装好了!

然后,我们再使用make命令编译安装redis

然而,忧伤的事发生了, 还是报错:

百度一把,解决方案如下

To force compiling against libc malloc, use:

% make MALLOC=libc

To compile against jemalloc on Mac OS X systems, use:

% make MALLOC=jemalloc

所以,再度编译一把 ,使用下面这命令:

make MALLOC=libc

这下子终于成功了!

5. 启动redis:

  /root/redis-5.0.6/src/redis-server  /root/redis-5.0.6/redis.conf

  

6. 操作redis

  /root/redis-5.0.6/src/redis-cli

  

不过很烦的是,redis可执行文件都在src目标下面,而这个src目标下面还有一堆的c文件,用起来、看起来都不方便。当然,我们可以移动这些文件到我们习惯的目标,比较常用的有 redis.conf, redis-server, redis-cli 等

后面看README.md文档, 发现,在make 时,可以指定redis的安装路径 。下面我们再来试一把。

删除刚才编译安装的redis文件

rm -rf redis-5.0.6

重新解压:

  tar -zxvf redis-5.0.6.tar.gz

进入redis根目标:

  cd redis-5.0.6

编译安装:

假设我要安装到 /usr/redis

创建: mkdir -p /usr/reids

然后执行命令: make PREFIX=/usr/redis install

安装成功之后,就会发现/usr/redis目标下面有个bin文件夹,

cd  /usr/redis/bin

这下子,redis的可执行文件都安装到这里儿了。

蛋疼,配置文件,还是没有过来, 咋办, 我使用软连接,

ln -s redis.conf  /usr/redis/bin/   # 将redis.conf  连接到 /usr/redis/bin/

虽然我是在redis.conf所在目标执行的ln -s 命令,但是我跑到 /usr/redis/bin/ 路径 下面一看,红色闪动, 说明软连接失败了。

网上一查,发现软连接必须使用绝对路径 ,所以删了重来一把

rm -rf /usr/redis/bin/redis.conf    #删除软连接

ln -s /root/redis-5.0.6/redis.conf /usr/redis/bin/     # 创建软连接

Ok, 这下子就正确了!

修改redis.conf文件,将redis的启动改为后台程序,因为建立了软连接,可以直接在/usr/redis/bin下操作

vim /usr/redis/bin/redis.conf

yes 表示daemon进程

启动redis(在/usr/redis/bin目标下):

./redis-server redis.conf

操作redis自带客户端:

./redis-cli

总结:

(1) redis安装还是很简单的, 只是安装的时候最好指定一个安装路径 ,  PREFIX=/xxx/yyy

(2) 创建软连接时,要使用绝对路径,不然就是错  ,  命令: ln -s 源文件 目标路径 。 删除软连接, rm -rf 目标

  

 

Redis5离线安装的更多相关文章

  1. SharePoint 2016 必备组件离线安装介绍

    前言 SharePoint 必备组件安装,一直以来都是SharePoint安装过程中的最大的坑,尤其是不能联网的服务器.博主在这里简单介绍一下离线安装过程,并附组件包下载以及安装命令,并且在windo ...

  2. MYSQL离线安装

    由于MySQL的广泛应用,MySQL的安装也就成了大家经常会碰到的问题.并且由于不是所有机器都可连接外网,所以MySQL的离线安装显得比较重要.而本文旨在介绍CentOS6.6下离线安装MySQL. ...

  3. VS2010+Qt5.4.0 环境搭建(离线安装)

    原创作者:http://blog.csdn.net/solomon1558/article/details/44084969 前言 因项目需要Qt开发GUI,我根据网上资料及自己的经验整理了搭建vs2 ...

  4. 离线安装 Python 2.7, paramiko 和 tornado

    无非就是离线安装, 步骤比较繁琐, 记录一下. 需求很简单, 一个离线安装的 Python, 能跑 tornado 和 paramiko 1. 离线安装 Python 2.7 .tgz cd Pyth ...

  5. npm包与gem包--在线&离线安装

    目录 NPM 在线 离线 GEM 在线 离线 NPM NPM,即为Node的包管理工具,官网为 https://www.npmjs.com/,我们可以在站内搜索所需要的NPM包,了解相关的使用规则 安 ...

  6. Windows 8 下离线安装。net Framework 3.5

    Windows 8 下安装.net Framework 3.5 1)可以将直接双击ISO (或放入光盘/U盘)(安装文件在F盘) 2)使用管理员权限运行命令行程序 3)dism.exe /online ...

  7. Xamarin Mono For Android 4.6.07004 完整离线安装破解版(C#开发Android、IOS工具)

      Xamarin是由Miguel de Icaza成立的一家新的独立公司,目的是给Mono一个继续奋斗的机会.Mono for Android (原名:MonoDroid)可以让开发人员使用 Mic ...

  8. nexus离线安装索引及一些问题

    安装私服~~~ 整体流程: 服务器安装私服 配置私服(主要是安装索引) 本地maven配置指向私服 安装私服 win & linux 网上教程很多,不在阐述: 配置私服(及安装index) 1 ...

  9. Win8.1离线安装.NET3.5

    Win8.1离线安装.NET3.5 dism.exe /online /enable-feature /featurename:NetFX3 /Source:H:\sources\sxs 其中H为盘符 ...

随机推荐

  1. PHP-密码和token

    密码 直接 md5 和 sha1 不安全!!! crypt() 和 hash_equals(): http://php.net/manual/zh/function.crypt.php <?ph ...

  2. npm install 安装不成功,提示python2.7

    npm install 安装不成功的原因 是因为缺少python的环境 解决方法: 1.去官网下载https://www.python.org/download/releases/2.7/ 2.安装成 ...

  3. 使用python执行sql语句和外键解析

    一.下载并导入pymysql pip install pymysql && import pymysql db=pymysql.connect(host=) #如果报错host大概率因 ...

  4. Git012--Bug&Feature分支

    一.Git--Bug分支 软件开发中,bug就像家常便饭一样.有了bug就需要修复,在Git中,由于分支是如此的强大,所以,每个bug都可以通过一个新的临时分支来修复,修复后,合并分支,然后将临时分支 ...

  5. jQuery基础--基本概念

    为什么要学习jQuery? [01-让div显示与设置内容.html] 使用javascript开发过程中,有许多的缺点: 1. 查找元素的方法太少,麻烦. 2. 遍历伪数组很麻烦,通常要嵌套一大堆的 ...

  6. C++ STL map容器值为指针时怎么释放内存

    最近在使用STL中map时,遇到了一个问题,就是当map中值为指针对象时怎么释放内存? // 站点与TCP连接映射表 (key为ip_port_stationCode, value为 clientSo ...

  7. Phone-java标准类

    //project-module-package //.代表包的目录层次 package cn.learn.day01.demo01; /* 1.类是一组相关属性(成员变量)与行为(方法)的集合,对象 ...

  8. 【接口工具】接口抓包工具之Fiddler

    一.Fiddler的基本功能介绍 Fiddler的官方网站: https://www.telerik.com/purchase/fiddler Fiddler是最强大最好用的Web调试工具之一,它能记 ...

  9. C# IEnumerable与IQueryable ,IEnumerable与IList ,LINQ理解Var和IEnumerable

    原文:https://www.cnblogs.com/WinHEC/articles/understanding-var-and-ienumerable-with-linq.html 使用LINQ从数 ...

  10. springcloud费话之断路器(hystrix in feign)

    目录: springcloud费话之Eureka基础 springcloud费话之Eureka集群 springcloud费话之Eureka服务访问(restTemplate) springcloud ...