欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 房产 > 建筑 > redis简介及应用

redis简介及应用

2025/2/6 4:16:33 来源:https://blog.csdn.net/2301_76445860/article/details/145439674  浏览:    关键词:redis简介及应用

文章目录

    • 1.redis简介
    • 2.安装配置
      • 2.1 单机部署
      • 2.2 配置
    • 3 主从部署
    • 4 哨兵部署
    • 5.集群部署
    • 6.客户端工具

1.redis简介

某些网站出现的问题,如12306、淘宝等…

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

2.安装配置

2.1 单机部署

安装gcc、关闭防火墙、关闭selinux等

#安装gcc
yum -y install gcc
#关闭防火墙
systemctl stop firewalld.service
#永久关闭防火墙
systemctl disable firewalld.service
#关闭selinux
setenforce 0
vim /etc/selinux/config
修改配置项:SELINUX=disabled,默认:#SELINUX=enforcingsed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config

在这里插入图片描述

#创建文件夹
mkdir -p /usr/local/redis
#进入redis文件夹类
cd /usr/local/redis/
#可以选择使用wget下载
wget https://download.redis.io/redis-stable.tar.gz
#解压下载的redis包
tar -xf redis-stable.tar.gz
#进入redis-stable目录
cd redis-stable
#使用make install 编译安装
make install
#检查是否成功生成
ll /usr/local/bin/

启动服务器端(redis-server)

redis-server

在这里插入图片描述

启动客户端(redis-cli)

redis-cli

在这里插入图片描述

2.2 配置

在这里插入图片描述

# 备份并修改配置
cd /usr/local/redis/redis-stable
cp redis.conf redis.conf.bak
vim redis.conf# 88  修改bind项 * -::*支持远程连接
bind * -::*sed -i 's/bind 127.0.0.1 -::1/bind * -::*/g' /usr/local/redis/redis-stable/redis.conf# 310 开启守护进程 后台运行
daemonize yessed -i 's/daemonize no/daemonize yes/g' /usr/local/redis/redis-stable/redis.conf# 355 指定日记文件目录
logfile "/usr/local/redis/redis-stable/redis.log"sed -i 's/logfile ""/logfile "\/usr\/local\/redis\/redis-stable\/redis.log"/g' /usr/local/redis/redis-stable/redis.conf# 516  指定工作目录
dir /usr/local/redis/sed -i 's|dir ./|dir /usr/local/redis/|g' /usr/local/redis/redis-stable/redis.conf# 1050(测试时为了方便可以不设置密码)
# requirepass 123456# 111(不设置密码时,此设置为no) 允许远程连接 如果不设置密码必须将此设置关闭
protected-mode nosed -i 's/protected-mode yes/protected-mode no/g' /usr/local/redis/redis-stable/redis.conf# 启动服务器端
redis-server /usr/local/redis/redis-stable/redis.conf# 关闭服务
# redis-cli shutdown

若设置了密码,则客户端使用时需要指定密码

在这里插入图片描述

3 主从部署

在这里插入图片描述

作用

在这里插入图片描述

缺点

在这里插入图片描述

搭建

准备3台虚拟机:1主2从

在这里插入图片描述

在从节点上修改配置(其他配置见 2.2)

在这里插入图片描述

# 关闭服务
redis-cli shutdown
#打开配置文件
vim /usr/local/redis/redis-stable/redis.conf
#539 连接主机的ip地址 服务端口 
replicaof 192.168.9.3 6379
# 启动服务器端
redis-server /usr/local/redis/redis-stable/redis.conf

启动所有1主2从的服务后,在主节点查看(一条命令:redis-cli info replication)

#从机配置完成后  在主机上查看
info replication
#设置键值对  name是健 tom是值
SET name tom  
#获取键的值
GET name
#删除健
DEL name

在这里插入图片描述

在从节点的客户端也可以查看信息

在这里插入图片描述

此时在主节点set数据,会同步到从节点

4 哨兵部署

在这里插入图片描述

在这里插入图片描述

搭建

在这里插入图片描述

配置

  • 修改完主机的 sentinel.conf 后,复制到从机即可
  • 从主到从的顺序启动 redis-server(redis-server /usr/local/redis/redis-stable/redis.conf)
  • redis-server /usr/local/redis/redis-stable/redis.conf
    
  • 从主到从的顺序启动 redis-sentinel(redis-sentinel /usr/local/redis/redis-stable/sentinel.conf)
  • redis-sentinel /usr/local/redis/redis-stable/sentinel.conf
    

在这里插入图片描述

cd /usr/local/redis/redis-stablecp sentinel.conf sentinel.conf.bakvim sentinel.conf# 15 
daemonize yes# 34
logfile "/usr/local/redis/redis-stable/sentinel.log"# 73
dir /usr/local/redis# 93
# sentinel monitor <master-name> <ip> <redis-port> <quorum>
# <quorum> 是一个数字,表示当有多少个 sentinel 认为主服务器宕机时,它才算真正的宕机掉,通常数量为半数或半数以上才会认为主机已经宕机,<quorum> 需要根据 sentinel 的数量设置。
#主机ip
sentinel monitor mymaster 192.168.9.5 6379 2#远程发送到从机上
scp sentinel.conf 192.168.9.4:/usr/local/redis/redis-stable
#启动服务
redis-sentinel /usr/local/redis/redis-stable/sentinel.conf

查看哨兵信息

redis-cli -p 26379 info sentinel

模拟主机故障(停止 redis-server),在主机查看哨兵的日志信息

#关闭服务
redis-cli shutdown

在这里插入图片描述

在从机查看信息(其中一台从机选举为了主机)

在这里插入图片描述

此时把原主机的故障排除,重启后,发现其变为了从机 (sentinel.conf 和 redis.conf 文件末尾处自动修改了)

在这里插入图片描述

其他:关闭哨兵

redis-cli -p 26379 shutdown

5.集群部署

redis cluster 概念

在这里插入图片描述

作用

在这里插入图片描述

原理

在这里插入图片描述

搭建

在这里插入图片描述

准备

三主三从,应该准备6台虚拟机,但为了测试方便,主备3台即可,每台服务器上运行两个redis节点,一个master、一个slave。

配置步骤如下

在这里插入图片描述

6379 端口配置文件(6380的略,也就端口等参数不同)

# 允许所有ip访问
bind * -::*
# 后台运行
daemonize yes
# 允许远程连接
protected-mode no
# 开启集群
cluster-enabled yes
# 集群节点超时时间
cluster-node-timeout 5000
# 数据保存目录
dir "/usr/local/redis/cluster"
# 开启AOF持久化
appendonly yes
# 端口
port 6379
# log日志
logfile "/usr/local/redis/redis-stable/cluster/redis-6379.log"
# 集群配置文件
cluster-config-file nodes-3679.conf
# AOF文件名
appendfilename "appendonly-6379.aof"
# RBD文件名
dbfilename "dump-6379.rdb"

具体配置步骤

# 创建目录,用来存放集群相关的配置文件
mkdir -p /usr/local/redis/redis-stable/cluster
# 创建目录,用来存放数据
mkdir -p /usr/local/redis/cluster# 创建并编辑6379端口的redis配置文件
vim /usr/local/redis/redis-stable/cluster/redis-6379.conf
# 同理,配置6380端口的
vim /usr/local/redis/redis-stable/cluster/redis-6380.conf# 用 scp 把配置文件拷贝到另外两台服务器,如:
# scp redis-6379.conf 192.168.9.6:/usr/local/redis/redis-stable/cluster/# 启动redis服务
redis-server /usr/local/redis/redis-stable/cluster/redis-6379.conf
redis-server /usr/local/redis/redis-stable/cluster/redis-6380.conf # 查看服务或进程(如下图)
ps aux | grep redis

在这里插入图片描述

# 创建集群 ,在一台服务器上运行即可
# redis-cli --cluster create --cluster-replicas 1 主ip:端口  从ip:端口 ...
redis-cli --cluster create --cluster-replicas 1 192.168.9.3:6379 192.168.9.4:6379 192.168.9.5:6379 192.168.9.6:6379 192.168.9.7:6379 192.168.9.8:6379

在这里插入图片描述

配置完毕,查看集群信息

# 查看集群信息
redis-cli cluster info
redis-cli cluster nodes
# 查看主从信息
redis-cli info replication

其中:192.168.9.5:6379 是主节点,其从节点是 192.168.9.6:6380

在这里插入图片描述

模拟故障转移

192.168.9.5:6379 主节点如果挂掉了,则 192.168.9.6:6380 会自动提升为主节点

# 在 192.168.9.5 ,停止主节点服务(默认端口6379)
redis-cli shutdown

在 192.168.9.6 查看节点情况,发现其 6380 的从节点提升为了主节点

在这里插入图片描述

当 192.168.9.5:6379 恢复运行后

# 在 192.168.9.5 ,启动6379端口的服务 
redis-server /usr/local/redis/redis-stable/cluster/redis-6379.conf

查看集群节点信息

在这里插入图片描述

6.客户端工具

常用的客户端工具有:RedisDesktopManager、tiny RDM 等

tiny RDM 下载地址:https://redis.tinycraft.cc/zh/

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com