当前位置: 首页 > article >正文

ubuntu 安装redis-6.2.9 源码安装和相关配置详解

目录

1 查看redis 软件列表

2 操作系统信息

3 redis软件下载并编译安装

4 redis 配置文件

5 启动redis

6 redis登录测试

7 设置redis开机启动

8 redis 配置详解


1 查看redis 软件列表


https://download.redis.io/releases/

2 操作系统信息


root@u24-redis-120:~# cat /etc/issue
Ubuntu 24.04.2 LTS \n \l

3 redis软件下载并编译安装


wget https://download.redis.io/releases/redis-6.2.9.tar.gz
tar -xf redis-6.2.9.tar.gz
cd redis-6.2.9

#要强制编译时链接到 libc
make MALLOC=libc
make test
make install PREFIX=/usr/local/redis-6.2.9

#配置环境变量
echo 'export PATH=$PATH:/usr/local/redis-6.2.9/bin' >>~/.bashrc
source ~/.bashrc 

#查看redis可执行文件
root@u24-redis-120:~/redis-6.2.9# ls /usr/local/redis-6.2.9/bin/
redis-benchmark  redis-check-aof  redis-check-rdb  redis-cli  redis-sentinel  redis-server

4 redis 配置文件


mkdir -p /redis/{data,log}
mkdir -p /usr/local/redis-6.2.9/etc
cd /usr/local/redis-6.2.9/etc

vi redis.conf
bind *
daemonize yes
pidfile /redis/data/redis_6379.pid
loglevel notice
logfile "/redis/log/redis_6379.log"
databases 16

5 启动redis


/usr/local/redis-6.2.9/bin/redis-server /usr/local/redis-6.2.9/etc/redis.conf 


6 redis登录测试


root@u24-redis-120:/usr/local/redis-6.2.9/etc# redis-cli 
127.0.0.1:6379> set key1 redis12
OK
127.0.0.1:6379> get  key1
"redis12"

7 设置redis开机启动


root@u24-redis-120# vi /etc/rc.local
#! /bin/bash
/usr/local/redis-6.2.9/bin/redis-server /usr/local/redis-6.2.9/etc/redis.conf

chmod +x /etc/rc.local

8 redis 配置详解


8.1 网络相关
bind * #默认情况bind=127.0.0.1只能接受本机访问请求,生产环境写内网地址
protected-mode  yes #默认为yes,需要通过bind ip 或者设置访问密码才能访问
port 6379  #端口 默认6379
tcp-backlog 512   #设置tcp的backlog
timeout 360 #一个空闲的客户端维持多少秒会关闭,0表示关闭该功能,永不关闭
tcp-keepalive 60  #对访问客户的一种心跳检测,建议设置为60


8.2 通用
bind *  
daemonize yes
pidfile /redis/data/redis_6379.pid
loglevel notice
logfile /redis/log/redis_6379.log
databases 16
dir /redis/data


8.3 安全
requirepass foobared   #设置秘密
rename-command FLUSHALL "" #命令重命名,flushdb,flushall,config,keys

8.4 limit 限制
maxclients 10000   #设置连接最大连接数
maxmemory 3758096384  # maxmemory <bytes>  设置最大内存

8.5 持久化
# rdb 相关
# save 900 1    当900秒内,至少有1个key的值发生变化,则保存到磁盘中
# save 300 10   当300秒内,至少有10个key的值发生变化,则保存到磁盘中
# save 60 1000  当60秒内,至少有1000个key的值发生变化,则保存到磁盘中
rdbcompression yes   #是否开启RDB文件压缩
dbfilename dump.rdb  #rdb文件名
dir /redis/data   #RDB文件的保持路径

#aof相关
appendonly no  #是否开启aof持久化,默认为no
appendfilename "appendonly.aof"  #每次启动redis会先从appendonly.aof文件数据中读取到内存,忽略rdb文件
appendfsync no  #默认为everysec,表示每秒同步一次
                on 表示不执行fsync命令
                always 表示每次写入都执行fsync
no-appendfsync-on-rewrite no   #在重写入aof或rdb文件时会造成阻塞,会执行大量io,如果对延时要求高,则设置为yes
auto-aof-rewrite-percentage 100  #aof自动重新配置
auto-aof-rewrite-min-size 64mb   #aof文件最小大小
aof-load-truncated yes     #如果redis宕,在恢复启动后,可用aof文件尾部不是完整的,默认值为yes,aof日志文件会继续使用。

http://www.lryc.cn/news/2399032.html

相关文章:

  • c++之数组
  • torch.distributed.launch 、 torchrun 和 torch.distributed.run 无法与 nohup 兼容
  • [SC]C++ 中 struct vs. class 的唯一区别
  • React从基础入门到高级实战:React 高级主题 - React设计模式:提升代码架构的艺术
  • 【GitHub开源AI精选】WhisperX:70倍实时语音转录、革命性词级时间戳与多说话人分离技术
  • 【leetcode】459.重复的子字符串
  • 华为OD机试真题——文件目录大小(2025 A卷:100分)Java/python/JavaScript/C++/C语言/GO六种语言最佳实现
  • 【Java】mybatis-plus乐观锁与Spring重试机制
  • Linux 与 Windows:哪个操作系统适合你?
  • C#委托的概念与使用方法
  • 消费者行为变革下开源AI智能名片与链动2+1模式S2B2C商城小程序的协同创新路径
  • 软考 系统架构设计师系列知识点之杂项集萃(78)
  • 解决MyBatis参数绑定中参数名不一致导致的错误问题
  • 如何解决MySQL Workbench中的错误Error Code: 1175
  • Docker 镜像(或 Docker 容器)中查找文件命令
  • MySQL进阶篇(存储引擎、索引、视图、SQL性能优化、存储过程、触发器、锁)
  • python批量解析提取word内容到excel
  • BugKu Web渗透之game1
  • 使用Composer创建公共类库
  • Axure设计案例——科技感渐变柱状图
  • LeetCode 热题 100 394. 字符串解码
  • 互联网大厂智能体平台体验笔记字节扣子罗盘、阿里云百炼、百度千帆 、腾讯元器、TI-ONE平台、云智能体开发平台
  • 深入解析ReactJS中JSX的底层工作原理
  • 亡羊补牢与持续改进 - SRE 的安全日志、审计与事件响应
  • NodeMediaEdge任务管理
  • LIMIT 和 OFFSET 在大数据量下的性能问题分析与优化方案
  • SpringBoot集成第三方jar的完整指南
  • 登高架设作业实操考试需要注意哪些安全细节?
  • 前端基础之《Vue(18)—路由知识点》
  • 014校园管理系统技术解析:构建智慧校园管理平台