码迷,mamicode.com
首页 > 其他好文 > 详细

redis主从同步

时间:2019-01-02 21:40:35      阅读:217      评论:0      收藏:0      [点我收藏+]

标签:serve   数据   http   实例   sed   生产环境   pre   主从同步   daemonize   

redis的主动同步是一个异步的过程,假设有A库和B库,其中主节点把数据分发给从节点,主节点对数据的修改会同步到从节点。
redis集群中的数据库复制就是通过主从复制来实现的,优点在于高可用,redis节点有一定冗余性。

原理实现

1. 从服务器向主服务器发送 SYNC 命令。
2. 接到 SYNC 命令的主服务器会调用BGSAVE 命令,创建一个 RDB 文件,并使用缓冲区记录接下来执行的所有写命令。
3. 当主服务器执行完 BGSAVE 命令时,它会向从服务器发送 RDB 文件,而从服务器则会接收并载入这个文件。
4. 主服务器将缓冲区储存的所有写命令发送给从服务器执行。

技术分享图片


示例

ps:查看redis的数据库信息的命令 redis-cli -p 6379 info;查看主从命令 redis-cli -p 6379 info  replication;

1.准备三个redis配置文件,通过端口的区分,启动三个redis数据库实例,然后配置主从复制。可以通过sed命令快速创建。

1,编辑并创建6379.conf配置文件
#vim 6379.conf

port 6379
daemonize yes
pidfile /data/6379/redis.pid
loglevel notice
logfile "/data/6379/redis.log"
dbfilename dump.rdb
dir /data/6379

2,#快速生成配置文件
sed "s/6379/6380/g" 6379.conf > 6380.conf 
sed "s/6379/6381/g" 6379.conf > 6381.conf 

2,启动三个实例。

redis-server 6379.conf
redis-server 6380.conf
redis-server 6381.conf

技术分享图片

3,指定主库身份ip和端口。

slaveof 127.0.0.1 6379

技术分享图片

由于是测试环境,并没有设置密码,生产环境一定要设置。

4,测试

技术分享图片


 手动关闭主库,在把6380设置为主库

技术分享图片

 

检查主从状态

 

redis主从同步

标签:serve   数据   http   实例   sed   生产环境   pre   主从同步   daemonize   

原文地址:https://www.cnblogs.com/cuiyuanzhang/p/10211315.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!