源码编译
下载源码
git clone https://github.com/redis/redis.git
下载之后切换到源码目录redis,进入目录之后执行make之后执行make install,此时在/src/目录下会生成redis-server和redis-cli可执行文件
redis配置
配置参考了以下博文Redis配置详解
修改了以下内容:
daemonize yes
pidfile /var/run/redis_6379.pid
port 6379
#bind 127.0.0.1
logfile "/root/soft/redis/t.log"
requirepass foobared
配置开机启动
配置过程中参考了以下博文redis6.2 systemd 启动 提示 redis.service: Failed with result ‘protocol‘.
添加文件/usr/lib/systemd/system/redis.service,内容如下:
[Unit]
Description=redis
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
ExecStart=/root/soft/redis/src/redis-server /root/soft/redis/redis.conf
ExecReload=/bin/kill -s HUP $MAINPID
# 这个根据配置填写
ExecStop=/usr/bin/redis-cli -p 6379 -a foobaredshutdown
PrivateTmp=true
[Install]
WantedBy=multi-user.target
使用如下命令启动:
systemctl start redis
不报错之后,使用如下命令配置开机启动:
systemctl enable redis
版本问题
git clone下来的源码直接编译的版本定义为255.255.255,如下:
# src/redis-server -v
Redis server v=255.255.255 sha=d659c734:0 malloc=jemalloc-5.2.1 bits=64 build=f6949b4c38bcd84f
看着不爽,根据关键字查找:
# find . -name "*.h" |xargs grep "255.255.255"
./src/version.h:#define REDIS_VERSION "255.255.255"
修改版本./src/version.h中的版本信息,如7.0.11,重新编译之后版本信息版本信息正常显示:
# src/redis-server -v
Redis server v=7.0.11 sha=d659c734:1 malloc=jemalloc-5.2.1 bits=64 build=b0c04f6e94bcc228
文章评论