Redis安装报错error:jemalloc/jemalloc.h:No such file or directory解决方法

文章出处http://www.ywnds.com/?p=6957&viewuser=39

安装Redis

下载Redis:wget https://github.com/antirez/redis/archive/3.2.0.tar.gz

在安装Redis之前,需要安装Redis的依赖程序tcl,如果不安装tcl在Redis执行make test的时候就会报错的哦。

以redis用户启动redis

错误描述

如果在make时,Redis报错:

原因分析

在README有这个一段话。

Redis在安装时关于内存分配器allocator, 如果指定了MALLOC这个环境变量,那么会用这个环境变量的去建立Redis。如果没有,那么就是用默认的分配器

Redis 2.4版本之后,默认使用jemalloc来做内存管理,因为jemalloc被证明解决fragmentation problems(内存碎片化问题)比libc更好。但是如果你又没有jemalloc而只有libc,当make出错时,你可以加这么一个参数即可。

如果想用jemalloc,安装jemalloc即可。

如果使用yum安装的话需要安装EPEL源。

也可以编译安装,先下载jemalloc:

https://github.com/jemalloc/jemalloc/releases/download/4.2.1/jemalloc-4.2.1.tar.bz2

然后再编译redis的时候指定MALLOC,如下:

当Redis进程跑起来之后,在你的实例中使用info命令可以查看你所使用的内存管理器。

如果你使用的是libc,那么mem_allocator的参数就会是libc。

猜你喜欢

转载自blog.csdn.net/qq_36125733/article/details/78803238