linux下安装redis出现错误及其解决方案

本文详细介绍了如何在CentOS5.7上安装Redis2.6.17版本,包括通过wget下载、解压及编译安装等步骤。同时针对安装过程中可能遇到的问题提供了具体的解决方案,例如缺少gcc导致的编译失败和jemalloc兼容性问题等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

测试于: Redis2.6.17 | CentOS 5.7

安装:

  1. 通过wget方式直接在linux上下载Redis
    wget http://download.redis.io/releases/redis-2.6.17.tar.gz
  2. 解压下载的redis-2.6.17.tar.gz 文件
    tar -zxvf redis-2.6.17.tar.gz
  3. 进入解压后的文件夹
    cd redis-2.6.17
  4. 编译安装
    make

运行:

  • 通过执行src文件夹下的redis-server,可以启动redis服务:
    $ src/redis-server
    Redis启动画面如下:
    Redis启动画面
  • 通过执行src文件夹下的redis-cli, 可以访问redis服务。
    $ src/redis-cli
    redis> set foo bar
    Ok
    redis> get foo
    "bar"

安装过程可能出现的问题:

  1. CentOS5.7默认没有安装gcc,这会导致我们无法make成功。使用yum安装:
    yum -y install gcc
  2. make时报如下错误:
    zmalloc.h:50:31: error: jemalloc/jemalloc.h: No such file or directory
    zmalloc.h:55:2: error: #error "Newer version of jemalloc required"
    make[1]: *** [adlist.o] Error 1
    make[1]: Leaving directory `/data0/src/redis-2.6.2/src'
    make: *** [all] Error 2

    原因是jemalloc重载了Linux下的ANSI C的malloc和free函数。解决办法:make时添加参数。

    make MALLOC=libc
  3. make之后,会出现一句提示
    Hint: To run 'make test' is a good idea ;) 

    但是不测试,通常是可以使用的。若我们运行make test ,会有如下提示

    [devnote@devnote src]$ make test
    You need tcl 8.5 or newer in order to run the Redis test
    make: ***[test] Error_1

    解决办法是用yum安装tcl8.5(或去tcl的官方网站http://www.tcl.tk/下载8.5版本,并参考官网介绍进行安装)

    yum install tcl

参考资料:

  1. http://blog.youkuaiyun.com/liuxingyu_21/article/details/16116561
  2. http://redis.io/download
  3. http://www.oschina.net/question/12_18065
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值