安装部署redis_Centos 7 安装 Redis 5.0.8 单实例

本文提供了一套详细的Redis单实例部署流程,包括下载、安装、配置等步骤,并介绍了如何进行开机自启动设置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

2980cbf984335106adf8ed9af496339f.png

本教程是单实例部署,根据公司实际情况,是否用于生产,不建议用于生产,生产至少需要部署一个集群,测试环境需要安装一个,简单记录下。

1. 下载

wget http://download.redis.io/releases/redis-5.0.8.tar.gz

2. 安装依赖包

yum -y install gcc*

3. 解压并编译

tar -zxf redis-5.0.8.tar.gz 
cd redis-5.0.8 && make

4. 安装

将/data/redis-5.0.8/src目录下的文件加到/usr/local/bin目录

[root@localhost redis-5.0.8]# cd src
[root@localhost src]# make install
    CC Makefile.dep


Hint: It's a good idea to run 'make test' ;)
    INSTALL install
    INSTALL install
    INSTALL install
    INSTALL install
    INSTALL install
[root@localhost src]#

5. 创建数据目录及日志目录 

mkdir -p /data/redis/data/ && mkdir -p /data/redis/logs

6. 配置文件修改

[root@localhost redis-5.0.8]# cat redis.conf |grep -viP "^#"|grep -v "^$"
bind 0.0.0.0          # 监听地址
protected-mode no         # 关闭保护模式
port 6379  

tcp-backlog 511
timeout 30  

tcp-keepalive 300
daemonize yes # 后台启动
supervised no
pidfile /data/redis/logs/redis_6379.pid # pid 文件路径
loglevel notice
logfile /data/redis/logs/redis.log     # 日志文件
databases 16
always-show-logo yes
save 900 1
save 300 10
save 60 10000
stop-writes-on-bgsave-error yes
rdbcompression yes
rdbchecksum yes
dbfilename dump.rdb
dir /data/redis/data/ # 数据目录
replica-serve-stale-data yes
replica-read-only yes
repl-diskless-sync no
repl-diskless-sync-delay 5
repl-disable-tcp-nodelay no
replica-priority 100
lazyfree-lazy-eviction no
lazyfree-lazy-expire no
lazyfree-lazy-server-del no
replica-lazy-flush no
appendonly yes
appendfilename "appendonly.aof"
appendfsync everysec
no-appendfsync-on-rewrite no
auto-aof-rewrite-percentage 100
auto-aof-rewrite-min-size 64mb
aof-load-truncated yes
aof-use-rdb-preamble yes
lua-time-limit 5000
slowlog-log-slower-than 10000
slowlog-max-len 128
latency-monitor-threshold 0
notify-keyspace-events ""
hash-max-ziplist-entries 512
hash-max-ziplist-value 64
list-max-ziplist-size -2
list-compress-depth 0
set-max-intset-entries 512
zset-max-ziplist-entries 128
zset-max-ziplist-value 64
hll-sparse-max-bytes 3000
stream-node-max-bytes 4096
stream-node-max-entries 100
activerehashing yes
client-output-buffer-limit normal 0 0 0
client-output-buffer-limit replica 256mb 64mb 60
client-output-buffer-limit pubsub 32mb 8mb 60
hz 10
dynamic-hz yes
aof-rewrite-incremental-fsync yes
rdb-save-incremental-fsync yes
[root@localhost redis-5.0.8]#

7. 配置开机启动

配置文件移动到/etc/目录 

cp /data/redis-5.0.8/redis.conf /etc/redis/redis.conf

 编辑 systemctl 服务配置文件 

cat /lib/systemd/system/redis.service


[Unit]
Description=Redis
After=network.target


[Service]
Type=forking
PIDFile=/data/redis/logs/redis_6379.pid
ExecStart=//usr/local/bin/redis-server /etc/redis/redis.conf
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true


[Install]
WantedBy=multi-user.target

8. 启动测试

[root@localhost logs]# systemctl daemon-reload
[root@localhost logs]# systemctl start redis
[root@localhost logs]# systemctl status redis
● redis.service - Redis
   Loaded: loaded (/usr/lib/systemd/system/redis.service; enabled; vendor preset: disabled)
   Active: active (running) since Wed 2020-04-15 14:37:42 CST; 8s ago
  Process: 32698 ExecStart=/usr/local/bin/redis-server /etc/redis/redis.conf (code=exited, status=0/SUCCESS)
 Main PID: 32699 (redis-server)
   CGroup: /system.slice/redis.service
           └─32699 /usr/local/bin/redis-server 0.0.0.0:6379


Apr 15 14:37:42 localhost.localdomain systemd[1]: Starting Redis...
Apr 15 14:37:42 localhost.localdomain systemd[1]: New main PID 32441 does not exist or is a zombie.
Apr 15 14:37:42 localhost.localdomain systemd[1]: Started Redis.
[root@localhost logs]#

9. 设置开机启动

[root@localhost logs]# systemctl enable redis
Created symlink from /etc/systemd/system/multi-user.target.wants/redis.service to /usr/lib/systemd/system/redis.service.
[root@localhost logs]#

10. 总结 

Redis 安装相对简单,但集群部署方式适合用于生产,后续总结生产部署集群的方式 。

============================================ Redis 5.0.8发布于2020年3月12日16时05分41秒 ============================================ 升级紧迫性高:这个版本修复了安全问题。 这是这个版本的修复列表: Salvatore Sanfilippo在《commit 2bea502d》中写道: 来自dustinmm80/add-arm-latomi -link的合并拉请求#6975 达斯汀·柯林斯在b5931405: 修正Pi建设需要-拉丁,支持端口 文件更改1次,插入9次(+) srzhao在commit fd441300: 修正了子白名单SIGUSR1特性的impl。 1个文件更改,5个插入(+),4个删除(-) Ariel在承诺77ff332b: 修正了ThreadSafeContext锁定/解锁函数名的问题 1个文件更改,2个插入(+),2个删除(-) Guy Benoish《commit 4f0f799c》: XREADGROUP应该在MULTI/EXEC中传播XCALIM/SETID 1个文件更改,2个插入(+),2个删除(-) 奥兰·阿格拉在commit 0c1273c3: 修正客户端标志在module.c中的int64 1个文件改变,3个插入(+),3个删除(-) Guy Benoish在承诺708a4e8a: 修复与复制和监视模糊相关的小错误 2个文件更改,8个插入(+),6个删除(-) 吴云龙在提交eac4115d: 修复lua相关的内存泄漏。 1个文件更改,1个插入(+) 提交d075df17: 简化# 6379的变化。 2个文件更改,4个插入(+),9个删除(-) 武云龙在commit 80a49c37中: 在pfdebugCommand()中释放分配的sds,以避免内存泄漏。 1个文件更改,1个插入(+) 提交60870d3a中的antirez: 解析错误时跳转到右标签。 1个文件更改,6个插入(+),4个删除(-) 提交d90f599b: 在错误发生时释放错误信号。 1个文件改变,11个插入(+),3个删除(-) WuYunlong in commit 8ee3bddf: 修复rioWriteBulkStreamID()的潜在内存泄漏。 1个文件更改,4个插入(+),1个删除(-) 武云龙在commit 4780fe78中: 修复clusterLoadConfig()的潜在内存泄漏。 1个文件更改,20个插入(+),5个删除(-) Leo Murillo在f3b77510中: 修正了KEYS命令中模式以*开头,后跟\x00 (null char)的错误。 1个文件更改,1个插入(+),1个删除(-) Guy Benoish的《commit 7f3fcedb》: 阻塞XREAD[GROUP]应该总是使用有效数据进行应答(或超时) 更改3个文件,44次插入(+),10次删除(-) 提交f93b2fa5: XCLAIM:仅在成功的索赔上创建消费者。 1个文件更改,4个插入(+),2个删除(-) Guy Benoish在《commit 89682d96》中写道: 流:处理与流相关的边缘情况 4个文件改变,54个插入(+),4个删除(-) 提交920e108f: 修正了RM_GetClusterNodeInfo()中的ip和丢失模式。 1个文件改变,5个插入(+),2个删除(-) 提交7569b210: 内联协议:处理好空字符串。 1个文件更改,2个插入(+),6个删除(-) Khem Raj在承诺3c610b4e: 在sds.h中标记SDS_NOINIT的外部定义 1个文件更改,1个插入(+),1个删除(-) Seunghoon Woo在承诺16b2d07f: [修复]重访CVE-2015-8080漏洞 1个文件更改,6个插入(+),4个删除(-) yz1509在commit 19f33585中: 避免将标记更改promoted_slave作为它自己的副本。 1个文件更改,1个插入(+),1个删除(-)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值