
安装 gcc :
yum install gcc
安装 tcl :
yun install tcl



解压缩文件:
tar -zxvf redis-6.2.4.tar.gz


进入到 redis 解压目录 ,执行命令
make && make install
# 启动命令
redis-server redis.conf
# 使用redis-cli连接redis
# -p 指定连接的端口号
redis-cli -p 6379
# 指定 redis
redis-cli shutdown
# 需要密码认证 redis 是密码
redis-cli -a redis shutdown
# 在 redis-cli 中 输入 也可以关闭 Redis
shutdown
Ctril + c
关闭命令:
安装成功的结果:

启动: systemctl start firewalld
关闭: systemctl stop firewalld
查看状态: systemctl status firewalld
开机禁用 : systemctl disable firewalld
开机启用 : systemctl enable firewalld
添加 :firewall-cmd --zone=public --add-port=80/tcp --permanent (--permanent永久生效,没有此参数重启后失效)
重新载入: firewall-cmd --reload
查看: firewall-cmd --zone= public --query-port=80/tcp
删除: firewall-cmd --zone= public --remove-port=80/tcp --permanent

**注意:**第 11 步,是从机需要配的,主机不需要配置;(前10步是主从都需要配置的;)
备份好redis.conf文件;
复制文件的命令:
# 拷贝命令
cp redis-6.2.4/redis.conf redis.conf
# 重命名文件名
mv redis.conf redis6379.conf
# 查看关于redis正在运行的进程
ps -ef | grep redis
操作中包括这三个配置文件:redis6379.conf(master)、redis6380.conf (slave)、redis6381.conf (slave)

daemonize yes:以守护进程的方式运行,默认是 no,我们需要自己开启为yes,如果以后台的方式运行,我们就需要指定一个 pid 文件! pidfile /var/run/redis_6379.pid

**注意:**如果以后台的方式运行,我们就需要指定一个 pid 文件!
#bind 127.0.0.1 //不绑定任何网络接口,只连接本地

protected-mode:yes 是否开启保护模式,Redis默认开启,如果没有设置bind的IP地址和Redis密码,那么服务就会默认只能在本机运行
1.保护你的redis实例,防止被访问和利用
2.大白话:只有本地才能操作这个实例,外网不行


持久化文件保存的目录,默认保存在当前目录下
dir /root/redis/work # 这个配置会将该appendfilename "appendonly.aof"这种配置的文件名写到/root/redis/work这个目录下





1.appendonly是一个用于配置是否开启AOF(Append Only File)持久化方式的参数。
2.默认情况下,appendonly的值为no,表示未启用AOF。
3.AOF持久化是一种将写操作追加到文件末尾的方式,它记录了所有对Redis数据集的写操作命令。通过启用AOF,Redis可以在重新启动时根据AOF文件的内容来恢复数据集。如果您希望启用AOF持久化方式,可以通过编辑redis.conf文件来完成。找到名为appendonly的行,并将其值修改为yes

开启这个配置,在日志文件中会打印 Redis 图像

展示:

配置完 3.2 十个步骤之后,这两个文件需要另外配置 要连接的主节点的 ip ,端口 ,密码;


# 查看复制节点的主从关系和配置信息
info replication
# replicaof/slaveof 这两个一样,一般写入进 redis.conf 配置文件内,
# 在运行期间修改slave节点的信息,如果该数据库已经某个数据库的从数据库,
# 那么会停止和原主数据库的同步关系转而和新的主数据库同步
replicaof/slaveof 主库IP 主库端口
# 使当前数据库停止与其他数据库的同步,升级为主数据库
replicaof/slaveof no one
主节点:

从节点:

6381 这个执行 slaveof 语句
切换主节点 到 6380 的情况
执行命令之后 6381的状态:

执行命令之后 6380的状态:

设置主机IP、端口、和redis密码;

redis6379.conf
redis-server /root/redis/redis6379.conf
redis-cli -a redis -p 6379
redis6380.conf
redis-server /root/redis/redis6380.conf
redis-cli -a redis -p 6380
redis6381.conf
redis-server /root/redis/redis6381.conf
redis-cli -a redis -p 6380

b. 从机(以一台为例)

info replication
1. 主机
1. 
2. 从机
1. 
手动指定的配置:
https://tangzhi.blog.csdn.net/article/details/126686223
第一次连接全量同步的情况:
复制偏移量超出 back_log 缓冲区,进行全量同步的情况:

而全量同步,是发生在下面这两个时间节点的:

全量同步大概有以下三个阶段:
注意:
在Redis的主从复制中,当从节点连接到主节点并请求进行复制时,主节点会返回给从节点版本信息,其中包括以下内容:
从节点在接收到主节点的版本信息之后,将会使用这些信息来进行初始化同步或部分重同步,以确保从节点与主节点的数据一致性。


发生增量同步的时间节点:
增量同步有两个阶段:
