#主从复制。使用slaveof做一个Redis实例的副本 #另一个Redis服务器。尽快了解Redis复制的一些内容。 # #1)Redis复制是异步的,但您可以配置主机 #停止接受写入,如果它似乎至少没有连接 #给定数量的奴隶。 #2)Redis的奴隶能够执行部分重新同步与 #master如果复制链接丢失的数量相对较少 # 时间。您可能需要配置复制积压大小(请参阅下一步 #文件的部分),根据您的需要有一个合理的价值。 #3)复制是自动的,不需要用户干预。之后 #网络分区从站自动尝试重新连接到主站 #并与它们重新同步。 # #slaveof <masterip> <masterport> #如果主站受密码保护(使用“requirepass”配置 #指令下面)有可能告诉奴隶以前认证 #启动复制同步过程,否则主机将会 #拒绝奴隶请求。 # #masterauth <master-password> #当一个从机失去与主机的连接,或者复制时 #仍然在进行,奴隶可以以两种不同的方式行事: # #1)如果从属服务状态数据被设置为“是”(默认),从机将会 #仍然回覆客户端请求,可能是过期的数据,或者 #数据集可能只是空的,如果这是第一次同步。 # #2)如果从属服务状态设置为“否”,则从机将回复 #所有类型的命令都出现“SYNC with master in progress”错误 #但是INFO和SLAVEOF。 # 奴隶服务陈旧数据是的 #可以配置从属实例来接受写入。写反对 #从属实例可能有用于存储一些临时数据(因为数据 写入从机的#将与主机重新同步后容易删除) 如果客户正在写信给他,也可能导致问题 #配置错误。 # #由于Redis 2.6默认的从站是只读的。 # #注意:只读奴隶不是设计为暴露给不受信任的客户端 # 在网上。这只是一个防止滥用实例的保护层。 #仍然只读奴隶导出默认所有的管理命令 #如CONFIG,DEBUG等等。在有限的程度上,你可以改善 #只读奴隶的安全使用'rename-command'来影子所有 #个管理/危险命令。 从属只读是的 #复制SYNC策略:磁盘或套接字。 # #------------------------------------------------- ------ #警告:无重复现象是实验性的 #------------------------------------------------- ------ # #新的从站和重新连接的从站无法继续复制 #进程只是收到差异,需要做什么叫做“满” #同步“,RDB文件从主站传送到从站。 #传输可能以两种不同的方式发生: # #1)磁盘备份:Redis主设备创建一个写入RDB的新进程 #文件在磁盘上。之后该文件由父母传送 #逐步过程到奴隶。 #2)无盘:Redis master创建一个新的进程,直接写入 #RDB文件到从属套接字,根本不接触磁盘。 # #使用磁盘备份复制,当生成RDB文件时,会有更多的从站 #可以在目前的孩子生产后立即排队等待RDB文件 #RDB文件完成其工作。使用无盘复制代替一次 #转移开始,新的从站到达将被排队等待并进行新的转移 #将在当前结束时开始。 # #当使用无盘复制时,主器件等待可配置的数量 #时间(以秒为单位)开始传输之前希望多个从站 #将到达并且传输可以并行化。 # #慢速磁盘和快速(大带宽)网络,无盘复制 #更好的工作。 repl-diskless-sync no #启用无盘复制时,可以配置延迟 #服务器等待为了产生通过套接字传输RDB的孩子 #给奴隶。 # #这很重要,因为一旦传输开始,就不可能服务 #新的从站到达,将排队等待下一次RDB传输,所以服务器 等待延迟才能让更多奴隶到达。 # #延迟以秒为单位,默认为5秒。禁用 #它完全设置为0秒,传输将尽快开始。 复制无盘同步延迟5 #从站以预定义的间隔将PING发送到服务器。有可能改变 #这个间隔与repl_ping_slave_period选项。默认值是10 #秒。 # #repl-ping-slave-period 10 #以下选项为以下设置复制超时: # #1)从从站的角度看,在SYNC期间批量传输I / O。 #2)从奴隶角度来看,主人超时(数据,平局)。 #3)从主机的角度来看从机超时(REPLCONF ACK ping)。 # #确保该值大于该值很重要 #为repl-ping-slave-period指定,否则会检测到超时 #每次主站和从站之间的流量都很低。 # #repl-timeout 60 #在SYNC之后,在从站插槽上禁用TCP_NODELAY? # #如果选择“是”,则Redis将使用较少数量的TCP数据包 减少发送数据到从站的带宽。但这可以增加一个延迟 #显示在从属端的数据,最多40毫秒 #Linux内核使用默认配置。 # #如果选择“否”,数据出现在从属端的延迟将会 #减少,但更多的带宽将用于复制。 # #默认情况下,我们优化低延迟,但在非常高的流量条件下 #或当主人和奴隶很多跳时,将其转为“是”可能 #是个好主意。 repl-disable-tcp-nodelay no #设置复制积压大小。积压是积累的缓冲区 从站数据当从站断开一段时间时,这样一个从站 #想要再次重新连接,通常不需要完全重新同步,而是部分重新同步 重新同步就足够了,只是传递从机错过的那部分数据 #断开连接。 # #复制积压的次数越多,从站的时间就越长 #断开,后来能够执行部分重新同步。 # #只有至少有一个从机连接,才会分配积压。 # #repl-backlog-size 1mb #主人不再连接奴隶一段时间后,积压 #将被释放。以下选项可配置秒数 #需要经过,从最后一个从机断开的时间开始 #要释放的积压缓冲区。 # #请注意,奴隶从来没有释放积压超时,因为他们可能是 #以后提升为大师,应该能够正确“部分 #重新同步“与奴隶:因此,他们应该始终积累积压。 # #值为0意味着永远不会释放积压。 # #repl-backlog-ttl 3600 #从属优先级是由Redis在INFO输出中发布的一个整数。 #它被Redis Sentinel用来选择一个slave来升级成一个 #master如果主机不再正常工作。 # #优先级低的奴隶被认为更适合晋升,所以 #例如,如果有三个从站,优先级为10,100,25 Sentinel会 #选择优先级为10的那个,即最低的。 # #但是,特殊的优先级为0会使从属设备无法执行 #角色的master,所以优先级为0的slave不会被选中 #Redis Sentinel促销。 # #缺省情况下,优先级为100。 从优先级100 #如果小于,主设备可以停止接受写入 #N从机连接,滞后小于或等于M秒。 # #N从站需要处于“在线”状态。 # #以秒为单位的滞后,必须是<=指定的值,由...计算 #从从机接收到的最后一次ping,通常每秒发送一次。 # #此选项不保证N个副本将接受该写入,但是 如果没有足够的奴隶,#将限制丢失写入的暴露窗口 #可用,以指定的秒数。 # #例如,要求至少3个滞后<= 10秒的从站使用: # #min-slaves-to-write 3 #min-slaves-max-lag 10 # #将一个或另一个设置为0将禁用此功能。 # #默认情况下,最小从站设置为0(禁用功能)和 #min-slaves-max-lag设置为10。 #Redis主站能够列出附件的地址和端口 #奴隶以不同的方式。例如“INFO复制”部分 #提供这个信息,在其他工具中被使用 #Redis Sentinel为了发现从属实例。 #这个信息可用的另一个地方是输出 #“ROLE”命令的主人。 # #获取从站通常报告的列出的IP和地址 #以下列方式: # #IP:通过检查对端地址来自动检测地址 从站与主站连接使用的套接字数量。 # #端口:端口在复制过程中由从设备通信 #握手,通常是从机正在使用的端口 #连接列表。 # #然而当端口转发或网络地址转换(NAT)是 #使用,奴隶可能实际上可以通过不同的IP和端口到达 #对。以下两个选项可以被奴隶使用,以便 #向其主机报告一个特定的一组IP和端口,使两个INFO #和ROLE会报告这些值。 # #如果需要覆盖,则不需要使用这两个选项 #端口或IP地址。 # #slave-announce-ip 5.5.5.5 #slave-announce-port 1234
redis主从复制
最新推荐文章于 2024-09-07 16:01:40 发布