当前位置: 代码网 > it编程>数据库>Redis > Redis7.2.x主从复制的实现示例

Redis7.2.x主从复制的实现示例

2024年06月17日 Redis 我要评论
ip操作系统服务版本192.168.140.153centos 7remaster7.2.5192.168.140.159centos 7redis-slave7.2.5一、安装依赖yum -y in
ip操作系统服务版本
192.168.140.153centos 7remaster7.2.5
192.168.140.159centos 7redis-slave7.2.5

一、安装依赖

yum -y install gcc gcc-c++

二、安装redis

1、下载安装包

wget http://download.redis.io/releases/redis-7.2.5.tar.gz

2、解压

tar -zxvf redis-7.2.5.tar.gz -c /opt/

3、创建工作目录

mkdir -p /opt/redis/
mkdir -p /opt/redis/logs/

4、编译安装

# 进入解压目录
cd /opt/redis-7.2.5

# 编译
make

# 安装
make install prefix=/opt/redis/

5、修改配置文件(master)

cp /opt/redis-7.2.5/redis.conf /opt/redis/

vi /opt/redis/redis.conf
# 修改如下内容
bind 192.168.140.153 -::1
# 允许后台运行
daemonize yes
# pid文件位置
pidfile /opr/redis/redis_6379.pid
# 日志位置
logfile "/opt/redis/logs/redis.log"
# 工作目录
dir /opt/redis/
# 主从同步密码
masterauth final123
# redis密码
requirepass final123

6、修改配置文件(slave)

cp /opt/redis-7.2.5/redis.conf /opt/redis/

vi /opt/redis/redis.conf
# 修改如下内容
bind 192.168.140.153 -::1
# 允许后台运行
daemonize yes
# pid文件位置
pidfile /opr/redis/redis_6379.pid
# 日志位置
logfile "/opt/redis/logs/redis.log"
# 工作目录
dir /opt/redis/
# 主从同步密码
masterauth final123
# redis密码
requirepass final123

replilcaof 192.168.140.153 6379

7、创建启动脚本

[root@localhost redis]# vi /etc/systemd/system/redis.service
[unit]
description=redis
after=network.target
 
[service]
type=simple
user=root
group=root
execstart=/opt/redis/bin/redis-server /opt/redis/redis.conf --daemonize no
restart=always
limitnproc=65535
limitnofile=65535
 
[install]
wantedby=multi-user.target

8、启动服务

systemctl daemon-reload
systemctl start redis.service
systemctl enable redis.service

三、测试

1、配置环境变量

[root@localhost redis]# vi /etc/profile
# 在最后添加如下内容
path=${path}:/opt/redis/bin/

[root@localhost redis]# source /etc/profile

2、查看redis-master

[root@localhost redis]# redis-cli -h 192.168.140.153
192.168.140.153:6379> auth final123
ok
192.168.140.153:6379> info replication
# replication
role:master
connected_slaves:1
slave0:ip=192.168.140.159,port=6379,state=online,offset=350,lag=1
master_failover_state:no-failover
master_replid:28a3b660f11504c07b2cc4bc07a093970af1544b
master_replid2:0000000000000000000000000000000000000000
master_repl_offset:350
second_repl_offset:-1
repl_backlog_active:1
repl_backlog_size:1048576
repl_backlog_first_byte_offset:1
repl_backlog_histlen:350

3、查看redis-slave

[root@localhost redis]# redis-cli -h 192.168.140.159
192.168.140.159:6379> auth final123
ok
192.168.140.159:6379> info replication
# replication
role:slave
master_host:192.168.140.153
master_port:6379
master_link_status:up
master_last_io_seconds_ago:6
master_sync_in_progress:0
slave_read_repl_offset:406
slave_repl_offset:406
slave_priority:100
slave_read_only:1
replica_announced:1
connected_slaves:0
master_failover_state:no-failover
master_replid:28a3b660f11504c07b2cc4bc07a093970af1544b
master_replid2:0000000000000000000000000000000000000000
master_repl_offset:406
second_repl_offset:-1
repl_backlog_active:1
repl_backlog_size:1048576
repl_backlog_first_byte_offset:1
repl_backlog_histlen:406

4、master节点插入数据

192.168.140.153:6379> set test "master"
ok
192.168.140.153:6379> get test
"master"

5、slave节点查看数据是否同步

192.168.140.159:6379> get test
"master"
# slave节点只能读取,不能写入。
192.168.140.159:6379> set test1 "ceshi"
(error) readonly you can't write against a read only replica.

到此这篇关于redis7.2.x主从复制的实现示例的文章就介绍到这了,更多相关redis7.2.x主从复制内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网! 

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com