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. Uva 12563 Jin Ge Jin Qu hao(01背包)

    题意: 假定你在唱KTV,还剩下t秒时间.你决定接下来唱你最喜爱的n首歌(不包含劲歌金曲)中的一些歌曲.在时间结束之前再唱一个劲歌金曲.使得唱的歌的总曲目尽量多以及时间总长度. 输入保证所有n+1曲子 ...

  2. CSU 1551 Longest Increasing Subsequence Again(树状数组 或者 LIS变形)

    题目链接:http://acm.csu.edu.cn/csuoj/problemset/problem?pid=1551 升级版:Uva 1471 题意: 让你求删除一段连续的子序列之后的LIS. 题 ...

  3. JS各种变量是true或者false列表

    如果操作数是一个对象,返回true 如果操作数是一个空字符串,返回false如果操作数是一个非空字符串,返回true如果操作数是数值0,返回false如果操作数是任意非0数值(包括Infinity), ...

  4. 用 Flask 来写个轻博客 (37) — 在 Github 上为第一阶段的版本打 Tag

    Blog 项目源码:https://github.com/JmilkFan/JmilkFan-s-Blog 目录 目录 前文列表 第一阶段结语 打 Tag 前文列表 用 Flask 来写个轻博客 (1 ...

  5. 16/7/11_PHP-文件系统

    读取文件内容 PHP具有丰富的文件操作函数,最简单的读取文件的函数为file_get_contents,可以将整个文件全部读取到一个字符串中. $content = file_get_contents ...

  6. PHP防采集方法代码

    <?php /** * FileName:test.php * Summary: 防采集 */ $HTTP_REFERER = $_SERVER["HTTP_REFERER" ...

  7. Java中的基本类型和包装类型区别

    首先看一下几个测试题,验证一下java中对基本类型和包装类型的理解,看看最后输出的答案对不对,答案在这篇博客中哦: // 第一题: 基本类型和包装类型 int a = 100; Integer b = ...

  8. spring-第三篇之ApplicationContext的事件机制

    1.通过ApplicationEvent类和ApplicationListener接口,可以实现ApplicationContext的事件处理. 如果容器中有一个ApplicationListener ...

  9. ubuntu离线安装mysql

    一:ubuntu离线安装mysql 转载来源:https://blog.csdn.net/liuhuoxingkong/article/details/80696574 参考文章:https://ww ...

  10. oracle用户权限管理

    oralce对权限管理比较严谨,普通用户之间也是默认不能互相访问的,需要互相授权 1.查看当前数据库所有用户: select * from all_users; 2.查看表所支持的权限: select ...