我使用源代码编译并安装了最新版本的Redis在RHEL上
0. 前提 → 假设条件
2020年4月22日的时候
– RHEL7.6的AMI(有点旧,似乎8.1是最新版。)
– Redis5.0.8(本文撰写时点的最新版)
1. 启动 EC2 实例
1.1. 全球微处理器市场.
在东京地区搜索“RHEL 7.6”的AMI时,
由 Red Hat, Inc 提供的 RHEL-7.6_HVM_GA-20190128-x86_64-0-Hourly2-GP2
ami-00b95502a4d51a07e
因为可以找到它,所以选择它。
1.2. 实例类型
请适当选择t3.small规格。
1.3. 安全组
打开tcp/6379端口
2. 安装Redis
2.1. SSH连接
RHEL7.6 AMI的用户是ec2-user。
使用私钥私钥.pem进行ssh连接,命令如下:ssh -i private.pem ec2-user@[公共IP]。
2.2. 安装gcc。
请安装gcc,这是编译所需的最后一步。
完成了!
如果出现了这一点,就代表成功。
2.3. Redis下载
使用curl命令下载redis-5.0.8.tar.gz压缩文件,链接地址为http://download.redis.io/releases/redis-5.0.8.tar.gz。
如果存在redis-5.0.8.tar.gz文件,则成功。
2.4. 解压档案
解压 redis-5.0.8.tar.gz 文件: tar zxvf redis-5.0.8.tar.gz
如果redis-5.0.8目录存在,则成功。
2.5. 编译
进入文件夹redis-5.0.8,然后执行make命令。
zmalloc.h第50行的31列:致命错误:没有找到jemalloc/jemalloc.h文件
如果出现类似的错误,请参考下面的文章,首先执行`make distclean`,然后重新执行`make`。
以下是我尝试使用Redis时所做的笔记(参考):
https://qiita.com/A-gen/items/345c07d830205a7ea6cb
在make的尾部
提示:运行’make test’是个好主意;)
如果输出这段话,那就成功了。
但是,我试了一下’make test’,结果却出错了。
以下是一种方式的中文释义:二进制文件将被放置在src目录下。
3. 执行确认 (zhi2 xing2 que4 ren4)
3.1. 启动Redis服务器
通过运行src/redis-server &,启动Redis服务器。
3.2. 通过Redis CLI进行连接
源代码/redis-cli
【ec2-user@ip-172-30-1-243 redis-5.0.8】进入命令行界面
127.0.0.1:6379> 设置键名key1的值为value1
OK
127.0.0.1:6379> 获取键名key1的值
“value1”
127.0.0.1:6379> 关闭Redis服务
16077:M 22 Apr 2020 06:52:31.131 # 用户要求关闭…
16077:M 22 Apr 2020 06:52:31.131 * 在退出之前保存最终的RDB快照。
16077:M 22 Apr 2020 06:52:31.133 * 数据保存到磁盘
16077:M 22 Apr 2020 06:52:31.133 # Redis已准备好退出,再见…
未连接> 退出
4. 顺带说一下
试着执行make install
默认情况下,似乎安装在/usr/local/bin目录下。
[ec2-user@ip-172-30-1-243 redis-5.0.8]$ sudo make install
cd src && make install
make[1]: 进入目录 `/home/ec2-user/redis-5.0.8/src’提示: 运行 ‘make test’ 是个好主意 😉
INSTALL 安装
INSTALL 安装
INSTALL 安装
INSTALL 安装
INSTALL 安装make[1]: 离开目录 `/home/ec2-user/redis-5.0.8/src’
[ec2-user@ip-172-30-1-243 redis-5.0.8]$ which redis-server
/usr/local/bin/redis-server
[ec2-user@ip-172-30-1-243 redis-5.0.8]$ which redis-sentinel
/usr/local/bin/redis-sentinel