支持各类Linux发行版,支持ARM端
1.下载
在编译前请安装必要的软件包:
# CentOS/Rhel
yum -y install git wget gcc
# Ubuntu
sudo apt-get install git wget gcc
从官网上下载最新的redis稳定软件包,下载完成之后备用:
wget https://download.redis.io/redis-stable.tar.gz
解压:
tar -xf redis-stable.tar.gz && cd tar -xf redis-stable
2.编译安装
编译已经解压的redis:
make && make install
编译会根据自己电脑的配置花费不同的时间,请耐心等待,编译完成后会自动安装。

3.执行测试(可选)
在执行测试make test前需要安装tcl工具,如果你的系统是CentOS/Rhel系统,可以执行以下命令安装:
yum -y install tcl
如果是Ubuntu系统,需要下载后编译安装此工具。
wget https://udomain.dl.sourceforge.net/project/tcl/Tcl/8.6.1/tcl8.6.1-src.tar.gz
tar -xf tcl8.6.1-src.tar.gz
cd unix/
./configure
make
make install
以下完成之后,再次执行make test命令:
make test
测试的过程可能花费的时间会很长,耐心等待之后如果出现“o/ All tests passed without errors!”的字样,则说明Redis编译安装成功。

4.配置
回到redis源代码目录,将redis配置文件拷贝到配置目录中:
cp redis.conf /etc/
新建日志地址:
mkdir -p /usr/local/redis/logs
touch /usr/local/redis/logs/redis.log
配置redis配置文件:
vim /etc/redis.config
将下面的配置文件配置到末尾,也可以直接修改原有的配置。
# 定义日志文件
logfile "/usr/local/redis/logs/redis.log"
# 若使用开机启动,生成pid,该项必须设置为yes,否则redis将不能够正常执行开机启动(systemctl start redis,执行后一直卡着,直到超时)
daemonize yes
# 注释掉,允许所有其他ip访问,也可以设置网段访问
#bind 127.0.0.1
#允许其他机器上的客户端连接当前redis,配置文件设置该项,则开机启动处就可以去掉--protected no
protected-mode no
# db保存路径,由于db持久化到磁盘,占用空间可能比较大,所以选择比较打的文件夹设置
dir /usr/local/redis/
##设置密码
requirepass 123456
设置为开机启动:
vim /usr/lib/systemd/system/redis.service
将以下内容粘贴进去。
[Unit]
Description=Redis persistent key-value database
After=network.target
After=network-online.target
Wants=network-online.target
[Service]
ExecStart=/usr/local/bin/redis-server /etc/redis.conf --protected-mode no
ExecStop=/usr/local/bin/redis-cli shutdown
#Restart=always
Type=forking
#User=redis
#Group=redis
RuntimeDirectory=redis
RuntimeDirectoryMode=0755
[Install]
WantedBy=multi-user.target
使配置生效:
systemctl enable redis
systemctl daemon-reload
启动redis:
systemctl start redis
检查启动日志,如果没有报错正常启动则正常,也可以像我一样手动启动来检查:
tail -f /usr/local/redis/logs/redis.log

如果有警告,也可以根据警告修改内核参数:
vim /etc/sysctl.conf
粘贴以下内容:
vm.overcommit_memory=1
net.core.somaxconn = 1024
使配置生效:
sysctl -p
进制内核中启用Transparent Huge Pages(THP)支持,防止Redis延迟和内存使用问题
echo never > /sys/kernel/mm/transparent_hugepage/enabled
最后,重启一下redis,就可以愉快地玩耍了!
往期推荐:
文章最后,给大家准备了8T的电子书大礼包,包含计算机基础类、编程类、人工智能、前端和大数据等等,回复 「1024」获取!
原文始发于微信公众号(运维贼船):Linux下编译安装最新稳定版Redis
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/177460.html