redis的主从复制与哨兵
2016-05-19 22:39
525 查看
主从复制的关键字是slaveof,有三种方法可以让一个redis数据库变成另一个redis数据库的从数据库:
1.修改redis的配置文件,添加#slaveof <masterip> <masterport>,其中的masterip、masterport是主redis数据库的ip和端口。在启动时,直接在redis-server命令后跟上这个配置文件就可以了。
2.在启动时加上slaveof参数,slaveof后面是主redis数据库的ip和端口,如./redis-server ../redis.conf --port 6380 192.168.2.128 6379
3.在运行过程中用客户端向redis发送slaveof命令,后面跟主redis数据库的ip和端口。这个命令不仅可以让一个redis数据库变成一个redis数据库的从数据库,还可以让一个本来就是从数据库的redis数据库变成另一个新数据库的从数据库。对应相反的命令是slaveof no one。
一般主数据库和从数据库的配置文件是不一样的,所以在部署从数据库时,最好复制一份原来的配置文件,修改后再作为从数据库的配置文件。
主从复制原理:
当一个从数据库启动后,会向主数据库发送sync命令。主数据库收到sync命令后会开始在后台保存快照(即RDB持久化),并将保存快照期间接收到的命令缓存起来。当快照完成后,redis会将快照文件和所有缓存的命令发送给从数据库。从数据库收到后,会载入快照文件并执行收到的命令,以上过程称为复制初始化。复制初始化阶段结束后,主数据库执行的任何会导致数据变化的命令都会异步地传送给从数据库,这一过程称为复制同步阶段。
从数据库的可读可写是可以配置的,默认是只读的,实际生产环境也是只读的,主数据库只写不读。
主从数据库的持久化问题:
一般是禁用主数据库的持久化,而让从数据库持久化。???
1.修改redis的配置文件,添加#slaveof <masterip> <masterport>,其中的masterip、masterport是主redis数据库的ip和端口。在启动时,直接在redis-server命令后跟上这个配置文件就可以了。
2.在启动时加上slaveof参数,slaveof后面是主redis数据库的ip和端口,如./redis-server ../redis.conf --port 6380 192.168.2.128 6379
3.在运行过程中用客户端向redis发送slaveof命令,后面跟主redis数据库的ip和端口。这个命令不仅可以让一个redis数据库变成一个redis数据库的从数据库,还可以让一个本来就是从数据库的redis数据库变成另一个新数据库的从数据库。对应相反的命令是slaveof no one。
一般主数据库和从数据库的配置文件是不一样的,所以在部署从数据库时,最好复制一份原来的配置文件,修改后再作为从数据库的配置文件。
主从复制原理:
当一个从数据库启动后,会向主数据库发送sync命令。主数据库收到sync命令后会开始在后台保存快照(即RDB持久化),并将保存快照期间接收到的命令缓存起来。当快照完成后,redis会将快照文件和所有缓存的命令发送给从数据库。从数据库收到后,会载入快照文件并执行收到的命令,以上过程称为复制初始化。复制初始化阶段结束后,主数据库执行的任何会导致数据变化的命令都会异步地传送给从数据库,这一过程称为复制同步阶段。
从数据库的可读可写是可以配置的,默认是只读的,实际生产环境也是只读的,主数据库只写不读。
主从数据库的持久化问题:
一般是禁用主数据库的持久化,而让从数据库持久化。???
相关文章推荐
- redis中执行大量数据插入操作
- [Redis] redis-cli 命令总结
- NoSQL数据库Redis使用命令简介
- redis学习之java类对redis库操作的简单封装
- redis数据库
- haproxy配置监控redis主备切换(转)
- 2.Redis常用命令
- redis数据类型设计和实现(之二)链表
- Jedis对redis的操作详解
- Redis+Spring缓存实例
- redis 之简单介绍
- redis3.0配置翻译
- 大数据爬虫基础(二)Redis在ubuntu 14.04.03下安装
- redis事务管理
- redis中key的操作命令
- redis数据类型(五)有序集合类型
- redis数据类型(四)集合类型
- Linux下Redis数据库的安装方法与自动启动脚本分享
- redis数据类型(三)散列类型
- Redis主从复制