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
相关推荐
倔强的石头_4 分钟前
Oracle 迁移 TCO 深度拆解:从隐性运维成本陷阱到全栈工具链破局
数据库
pqq的迷弟10 分钟前
基于redis实现限流逻辑
redis
2501_9249526911 分钟前
Python深度学习入门:TensorFlow 2.0/Keras实战
jvm·数据库·python
2401_8914821714 分钟前
Python多线程与多进程:如何选择?(GIL全局解释器锁详解)
jvm·数据库·python
Predestination王瀞潞14 分钟前
6.3.1 软件->W3C XPath 1.0 标准(W3C Recommendation):XPath(XML Path Language)查询语言
xml·数据库·oracle
2401_8512729914 分钟前
用Python实现自动化的Web测试(Selenium)
jvm·数据库·python
快乐柠檬不快乐21 分钟前
Java连接电科金仓数据库(KingbaseES)实战指南
java·开发语言·数据库
AllData公司负责人31 分钟前
AllData数据中台通过集成DolphinScheduler+Seatunnel实现SAP HANA数据库同步到Doris数据仓库
数据库·数据仓库·sap hana
2401_8463416531 分钟前
使用Python进行网络设备自动配置
jvm·数据库·python
深蓝轨迹36 分钟前
黑马点评-day02-缓存笔记
redis·笔记·缓存·mybatis