注册 登录
  • 欢迎访问"运维那点事",推荐使用Google浏览器访问,可以扫码关注本站的"微信公众号"。
  • 如果您觉得本站对你有帮助,那么可以扫码捐助以帮助本站更好地发展。

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

Redis 彭东稳 14713次浏览 已收录 0个评论

安装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。


如果您觉得本站对你有帮助,那么可以支付宝扫码捐助以帮助本站更好地发展,在此谢过。
喜欢 (4)or分享 (0)
关于作者:

您必须 登录 才能发表评论!