背景
今天弄了下 Redis 编译,整理下编译过程。理论上来说,直接将编译后的 bin 目录上传也是可以用的,但是可能跟操作系统版本有关,所以还是现场在目标机器上编译一遍比较稳妥。这里还是用的两年前的版本 3.2.8 ,但是最新版本都已经到 6.6 了,迭代速度太快了!
编译
存在两个错误:
错误一,src 目录下的文件权限问题,解决办法:
cd /src
chmod 770 *
错误二,设置内存分片库。jemalloc 内存分配器目标机器上没有安装,可以用 libc 替代:
make MALLOC=libc
重新执行命令:
说明编译成功。
test
缺少 tcl8.5 依赖包,继续安装依赖后重新执行:
安装
执行安装命令,传递目标目录
make install PREFIX=/usr/local/redis3.2.8
/usr/local/redis3.2.8 是目标安装目录,执行完成后生成 bin 目录,说明成功。
拷贝配置文件启动
编译后只有一个 bin 目录,没有配置文件,需要拷贝一份源码目录的 redis.conf 修改后作为启动文件,主要修改三项:
- IP :本机端口或者 0.0.0.0
- 认证密码:requirepass
- 后台进程启动:daemonize yes
执行 bin 目录下的 redis-server ./redis.conf 即可。