摘要: 出处:黑洞中的奇点 的博客 http://www.cnblogs.com/kelvin19840813/ 您的支持是对博主最大的鼓励,感谢您的认真阅读。本文版权归作者所有,欢迎转载,但请保留该声明。
3.1 High Availability
在具有3个节点的基本设置中,如果您将任何节点关闭,Percona XtraDB Cluster将继续工作。
在任何时间点,您可以关闭任何节点以执行维护或更改配置。
即使在计划外情况(如节点崩溃或如果它通过网络变得不可用),Percona XtraDB群集将继续工作,您将能够在工作节点上运行查询。
如果在节点关闭时对数据进行了更改,则节点在加入时可以使用两个选项集群:
• State Snapshot Transfer(SST)是将所有数据从一个节点复制到另一个节点的过程。
当新节点加入群集并从现有节点接收所有数据时,通常使用SST。有Percona XtraDB群集中有三种SST方法:
– mysqldump
– rsync
– xtrabackup
mysqldump和rsync的缺点是,你的集群在数据存在时变成READ-ONLY 复制(SST应用FLUSH TABLES WITH READ LOCK命令)。
SST使用XtraBackup不需要READ LOCK命令整个同步过程中,只要同步.FRM文件(一样定期备份)。
• Incremental State Transfer(IST)是指仅将增量更改从一个节点复制到另一个节点。
即使在群集没有锁定为只读状态,SST在你的正常操作服务可能会侵入和干扰。
IST让你避免这样。如果1个节点在很短的时间出现故障,它只能获取发生在它失效时发生的那些更改。
IST是在节点上使用高速缓存机制来实现的。每个节点包含一个缓存,
环形缓冲区(大小可配置)最后N个更改,并且节点间能够传输该高速缓存的一部分。
显然,只有当转移所需的变化量小于N时IST才能完成。如果它超过N则加入节点必须执行SST。
您可以使用以下命令监视节点的当前状态:
SHOW STATUS LIKE 'wsrep_local_state_comment';
当节点处于Synced(6)状态时,它是集群的一部分并准备处理流量。