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

redis的下载和安装详解

一、下载redis安装包

进入redis官网查看当前稳定版本:

https://redis.io/download/

发现此时的稳定版本是6.2.4

此时可以去这个网站下载6.2.4稳定版本的tar包。

暂时不考虑不在windows上使用redis,那样将无法发挥redis的性能

二、上传tar包到虚拟机并解压

2.1 新建存放目录并上传tar包
# 进入/usr/local目录 cd /usr/local/ # 新建soft目录存放软件 mkdir soft # 进入刚新建的soft目录下 cd soft

完成上述步骤使用finalshell上传redis安装包到/usr/local/soft目录下:

2.2 解压tar包
tar -zxvf redis-6.2.4.tar.gz

三、安装编译环境并安装redis

3.1 下载安装最新版的gcc编译器

1)安装C 语言的编译环境

# -y 对所有提问都说yes yum -y install gcc

2)查看gcc版本

gcc --version
3.2 编译redis
# 进入redis安装目录 cd /usr/local/soft/redis-6.2.4 # 执行编译操作 make

如果没有安装gcc直接进行make会报错:

# 表示没有这个文件 Jemalloc/jemalloc.h

解决方案:

  • 安装gcc
  • 运行make distclean
  • 然后再进行make
3.2 安装redis

编译完成之后,可以执行安装命令。

make install

安装完成之后/usr/local/bin目录下将会多出一些命令:

命令解析:

  • redis-benchmark:测试电脑性能的
  • redis-check-aof -> redis-server:检查修复aof文件的,本质是执行了redis-server文件
  • redis-check-rdb -> redis-server:检查修复rdb文件的,本质是执行了redis-server文件
  • redis-cliredis自带的客户端,可以使用它来连接redis服务端。(这个自带的通常不会使用)
  • redis-sentinelredis哨兵,用于监控redis集群中Master状态的工具。
  • redis-server:启动服务

四、启动redis

4.1 前台启动
# 这个命令已经在环境变量当中,可以在任何位置使用它来启动redis redis-server

命令行窗口不能关闭,否则服务器停止。

4.2 后台启动

1)在/root目录下创建myredis目录

cd /root mkdir myredis cd /myredis

2)拷贝一份redis.conf到myredis目录

cp /usr/local/soft/redis-6.2.4/redis.conf /root/myredis

3)修改配置文件,配置让服务在后台启动

vim redis.conf

247行把daemonize no改成yes

配置完成后Esc键退出插入状态,:wq保存并退出。

4)使用新的配置文件启动redis

redis-server /root/myredis/redis.conf

这样服务启动后就不会占用全屏窗口。

不放心的话也可以用下列命令查看redis进程是否在运行:

ps -ef | grep redis

五、关闭redis

5.1 单实例关闭
redis-cli shutdown

也可以进入终端后关闭当前实例:

# 先进入redis客户端终端 redis-cli # 在终端里关闭redis shutdown
5.2 多实例关闭
redis-cli -p 6379 shutdown

多实例时关闭时需要指定端口关闭

六、docker上部署redis

容器化部署已经是越来越主流的方式,比起在Linux上直接安装redis要更加的方便和快捷。

6.1 在dockerHub上搜索redis

这里会有redis镜像的详细使用说明,认准绿色部分的官方镜像即可。

overview中就是如何部署redis容器的文档,右边黑框中的命令就是拉取redis镜像的命令。

6.2 创建本机存放redis配置和数据目录
# 创建 redis 配置存放目录 mkdir -p /usr/local/docker/redis/conf # 创建 redis 数据存放目录 mkdir -p /usr/local/docker/redis/data # 给刚创建的两个目录授权 chmod 777 /usr/local/docker/redis/conf chmod 777 /usr/local/docker/redis/data

之所以这里创建目录,是想使用docker数据卷挂载的第二种方式,直接使用磁盘挂载。

意思就是不使用数据卷,直接把本机的某个目录和docker容器中的某个目录进行关联。

这样只需要在本机上操作者两个目录中的内容,就可以直接同步修改docker容器中对应的目录中的内容。

使用磁盘挂载的话,目录需要自己维护。而使用数据卷挂载,docker会自动维护目录,但是目录比较深。

如果对数据卷不太了解,可以看我docker专栏下关于数据卷的介绍

6.3 运行容器
# 启动 redis 容器 docker run -d -p 6379:6379 --name myRedis --restart=always -v /usr/local/docker/redis/data:/data -v /usr/local/docker/redis/conf/redis.conf:/etc/redis redis redis-server /etc/redis/redis.conf

docker镜像中的redis默认都是没有配置文件的,也就是说/etc/redis目录下是空的
需要自己准备一个配置文件,放在/usr/local/docker/redis/conf/目录下

选项解析:

-d:后台运行

-p:将宿主机端口和容器端口相关联,是指可以用宿主机的6379端口访问容器的6379端口

--name:启动镜像后,生成的容器的名称

--restart:配置重启策略是always

这样如果容器redis无论什么情况停止了,docker将自动重新启动redis容器

-v /usr/local/docker/redis/data:/data:挂载redis的数据目录

-v /usr/local/docker/redis/conf/redis.conf:/etc/redis:挂载redis的配置文件目录

redis:需要启动的用来创建容器的镜像名称

6.4 停止运行容器
docker stop myRedis
6.5 停止后重新运行容器
docker start myRedis
6.6 重启容器
docker restart myRedis
6.7 删除容器
# -f 强制移除正在运行的容器(不写-f只能移除不在运行的容器) docker rm -f myRedis
http://www.jsqmd.com/news/450589/

相关文章:

  • AI辅助开发新体验:用快马平台生成基于Spring AI函数调用的智能工具集成示例
  • 攻克开源风扇控制工具FanControl的设备识别难题:从诊断到根治的完整技术方案
  • Flutter for OpenHarmony《智慧字典》 App 主页深度优化解析:从视觉动效到交互体验的全面升级 - 教程
  • Keil5隐藏彩蛋:用这5个冷门设置让你的编码效率翻倍(含自动补全修复指南)
  • 《C++ Stack 与 Queue 完全使用指南:基础操作 + 经典场景 + 实战习题》
  • 【Chromepass】:颠覆式Chrome密码解密解决方案 - 让本地密码管理更高效
  • 模型评估必看!泰勒图三大核心指标(R/RMSE/std)的避坑指南
  • 为什么你的Dev-C++控制台总是中文乱码?ANSI编码的隐藏陷阱与实战修复
  • 开源工具Ryujinx:打造跨平台Switch游戏体验的完整解决方案
  • 利用快马平台快速生成db9接口引脚定义查询与模拟测试工具原型
  • Graylog日志分析平台:运维工程师实时监控与异常检测指南
  • 对抗屏幕蓝光:打造健康数字阅读环境的完整方案
  • 3大核心功能助力文字冒险游戏开发:JavaQuestPlayer零基础入门指南
  • RabbitMQ vs Kafka背压机制对比:消息队列的‘刹车系统‘设计哲学
  • 为什么Win7共享打印机必须开防火墙?深入解析0x000006d9错误背后的机制
  • PotplayerPanVideo:突破云端视频播放瓶颈的协议转换引擎
  • GHelper:华硕笔记本轻量级硬件控制工具的全面优化指南
  • Jetpack Compose BOM 2026.02.01 解读与升级指南
  • Flutter 三方库 loxia 的鸿蒙化适配指南 - 掌控数据资产、精密 UI 模型治理实战、鸿蒙级桌面专家
  • 零基础DIY智能家居离线AI语音助手:从硬件到交互的完整指南
  • 抖音智能提取效率工具:从手动复制到批量分析的技术革命
  • 零基础也能开发专业文字冒险游戏:JavaQuestPlayer全攻略
  • 提升开发效率:用快马AI自动生成ESP32物联网设备连接与通信代码
  • 3步智能革新:OpCore Simplify让非苹果硬件高效运行macOS
  • JupyterNotebook内核连接失败的3种常见原因及解决方案(附报错排查指南)
  • AR 眼镜上的出行助手:从零构建基于 Rokid CXR-M SDK 的行程管理应用
  • STM32F407ZGT6 USART1 DMA接收配置避坑指南:从NORMAL到CIRCLAR的实战经验
  • IGBT驱动芯片2ED020I12F2避坑指南:去饱和电路常见的5个设计误区及解决方案
  • Herbie气象数据工具:专业气象数据获取与处理的技术指南
  • 基于Coze API的智能客服本地化部署实战:效率提升与避坑指南