在Linux系统上安装Redis客户端报错:In file included from adlist.c:34 zmalloc.h:50:31: error: jemalloc......
在Centos6.9系统上安装redis客户端时报错,步骤如下:
1.下载redis客户端源码包:
wget http://download.redis.io/releases/redis-3.0.7.tar.gz
2.解压Redis客户端源码包:
tar -xzf redis-3.0.7.tar.gz
3.进入Redis目录并编译Redis客户端源码:
cd redis-3.0.7
make
但在执行make后出现了如下报错:
解决办法:查看README文件,有这么一段话:
是关于redis内存分配器选择的描述:在构建Redis时,通过设置“MALLOC”环境变量来选择非默认的内存分配器。Redis默认情况下编译并链接到libc malloc的,但在Linux系统上默认的内存分配器是jemalloc。linux系统之所以选择jemalloc作为默认的内存分配器,是因为jemalloc被证明比libc malloc具有更少的碎片问题。
要强制编译redis使用libc malloc,使用: make malloc=libc 指令
在Mac OS系统上编译redis使用jemalloc,使用: make MALLOC=jemalloc 指令
根据提示执行:make malloc=libc
问题解决。
make 结束后,cd到src目录,执行make install 操作:
cd src
make install PREFIX=/usr/local/redis
将解压出来的配置文件复制到/usr/local/redis目录下
配置文件启动服务:
默认情况下redis
是前台运行,需要把它改为后台运行,修改/usr/local/redis/redis.conf
文件:
daemonize yes # 修改为yes,后台运行
protected-mode no # 修改为no,关闭安全模式,不然远程连接会报错误
bind 0.0.0.0 # 修改为指定ip,或者0.0.0.0
requirepass 密码 # 设置连接密码
cd 到bin目录下,启动服务:
./redis-server redis.conf
关于服务:
./redis-cli shutdown
作为客户端,连接指定的redis服务器:
./redis-cli -h redis服务器IP或域名 -p 服务端口 -a 密码
更多推荐
所有评论(0)