redis主备同步配置方法
2016-08-29 11:53
197 查看
1. 配置主备
假设主机ip:10.136.16.146 port:6789备机ip:10.136.30.144
我们有两种方式为其配置备机
方法1:修改备机配置文件
redis.conf中增加daemonize yes slaveof 10.136.16.146 6789 # 如果主机有密码,则修改下面一行即可 # masterauth <master-password>
在备机上启动redis
redis-server ./tmp/redis.conf
连接上备机reids,执行info replication, 可以看到下面的结果
127.0.0.1:9303> info replication # Replication role:slave master_host:10.136.16.146 master_port:6789 master_link_status:up master_last_io_seconds_ago:0 master_sync_in_progress:0 ...
此时,我们的主备就已配好。数据会自动同步(包括主机之前的数据),如果之前主机中有数据,此时已可以在备机中读取。
连接主机,执行info replication,可以看到下面结果
10.136.16.146:6789> info replication # Replication role:master connected_slaves:1 slave1:ip=10.136.30.144,port=9303,state=online,offset=40383758059,lag=0 master_repl_offset:40383983932 ...
可以看到,主机上已连接一台备份redis,正是我们刚刚启动的那台。
方法2:动态修改备机配置
当然,有时你可能没有权限修改备机redis配置文件或重启redis-server。这时,如果你想配置主备,只需要连上备机redis,执行:slaveof 10.136.16.146 6789 #主机有密码,还要执行这条 #config set masterauth <password>
同样可以达到配置主备的目的
2.取消主备
有两种方法取消息主备1. 直接在配置文件中去掉slaveof的配置,然后重启redis-server
2. 连入备机,执行
slaveof no one
取消主备后,在备机上执行info replication, 会看到
127.0.0.1:9303> info replication # Replication role:master connected_slaves:0 master_repl_offset:0 repl_backlog_active:0 repl_backlog_size:1048576 repl_backlog_first_byte_offset:0 repl_backlog_histlen:0
当前机器的角色已不再是slave, 而是master
3. 几个可能用到的参数
slave-read-only:两个值,yes/no,用于控制slave是否为只读slave-serve-stale-data: 用于控制当slave和master失去连接或正在进行同步时,slave的行为。
yes(默认):仍然正常处理客户端请求,但数据可能是旧的
no:向客户端回复SYNC with master in progress
4. 建议
如果配置了主备,建议master开启数据持久化,或者至少不要让master在挂掉后可以自动重启。可以想象这样一个场景:master未开启持久化,master挂了后被监控重启。这时,master中没有任何数据,slave由于和master同步,上面的数据也将被清空!
相关文章推荐
- MYSQL5 masterslave数据同步配置方法第1/3页
- Linux(Unix)时钟同步ntpd服务配置方法(转载)
- rsync 同步 配置方法
- 计算机NTP时钟同步(NTP服务器-NTP时间服务器)的重要性及其配置方法
- 配置SqlServer同步时常见的错误以及解决方法
- Linux(Unix)时钟同步ntpd服务配置方法
- Redis的分布式和主备配置调研
- 网络时间同步技术(网络同步时钟)厂家叫你配置方法
- 用cwrsync同步windows下数据的简单配置方法
- Linux(Unix)时钟同步ntpd服务配置方法
- redis的主从配置方法详解
- Sping2.5配置文件的单例共享模式与独立产生实例,同步方法使用
- 计算机时间同步配置方法
- 计算机NTP时钟同步(NTP服务器-NTP时间服务器)的重要性及其配置方法
- linux下mysql数据库单向同步配置方法分享
- windows下rsync的数据同步安装配置方法
- sharepoint 2010 配置用户同步连接出现错误信息" Unable to process Create message"的一个解决方法
- Linux(Unix)时钟同步ntpd服务配置方法
- inotify-tools+rsync实时同步文件的配置方法
- nagiosql3.2.0配置不能实时同步到nagios4.0+的解决方法