我读的官方文档是MySQL5.5,对应的Cluster是7.2(其他版本应该一样,因为5.1和5.5的相同),是这样解释的:
Cluster有节点组的概念(node groups),每个节点组下的所有数据节点存储的数据是完全一样的,但是不同节点组是不同的,也就是MySQL会自动将数据分发到不同的节点组中,这个就可以实现你的需要。
值得注意的是:官方文档说明每个节点组下的节点数量必须相同。
5.1有中文文档,我看了和英文的基本一样,具体配置你可以自己看看中文文档。

解决方案 »

  1.   

    10台200G的总空间2000G   如果存三份   那么能存2000/3 G
      

  2.   

    http://blog.csdn.net/mchdba/article/details/10544585
      

  3.   

    1楼 能给我解释下 node groups的概念吗?怎么操作。是不是如果我把10个机器分成5个 node groups。就能使用200*5的空间。数据只是同node groups的互相备份。还有就是数据节点的内存怎么能共享。比如一个机器是16G内存  10个机器是不是能把内存放的10呗呢? 另外很感谢你的回答。
      

  4.   


    Cluster确实是同node groups下的相互备份,不同node groups存储的数据是不同的。
    早期版本的Cluster所有数据必须放在内存中,5以后允许部分数据存储在磁盘上,但是建索引的字段还是必须在内存中。Cluster对内存的要求确实非常巨大。所以200G的硬盘空间意义有限,主要还是用的你16G的内存在存储数据(这还不算你操作系统、其他软件需要消耗的内存)。根据官方文档,MySQL会使用整个node groups下,内存最小的节点的内存,作为基础大小,所以如果有一个节点的内存如果只有2G,那么其他节点即使是16G,整个node groups也都只能使用2G的内存。
      

  5.   

    那2G内存能存啥数据呀,照这么说   msql Cluster有点鸡肋了。用内存存储数据 数据量巨大这么办。他完成不了去ioe的作用呀。我还以为分布式存储能把E给去掉呢。结果存储大部分还是在内存,掉电是不是数据就没有了呀。
    还设有sql节点有什么作用呢