zoukankan      html  css  js  c++  java
  • MySQL集群简介与配置详解

    1. 先了解一下你是否应该用MySQL集群。

    减少数据中心结点压力和大数据量处理,采用把MySQL分布,一个或多个application对应一个MySQL数据库。把几个MySQL数据库公用的数据做出共享数据,例如购物车,用户对象等等,存在数据结点里面。其他不共享的数据还维持在各自分布的MySQL数据库本身中。

    MySQL Cluster Components

    2. 集群MySQL中名称概念.(如上图)

    1)Sql结点(SQL node--上图对应为MySQLd):分布式数据库。包括自身数据和查询中心结点数据.

    2)数据结点(Data node -- ndbd):集群共享数据(内存中).

    3)管理服务器(Management Server – ndb_mgmd):集群管理SQL node,Data node.

    3.配置

    MySQL-max版本,当然现在MySQL集群系统windonws平台上面不被支持.

    安装MySQL就不多说了,网上一大堆,简明扼要。

    A:192.168.1.251 – Data node和Management Server.

    B:192.168.1.254 – SQL node.

    当然,你也可以让一个机器同时为3者。

    A,B my.inf加上:

    1. [MySQLD]                         
    2. ndbcluster                     # run NDB engine  
    3. ndb-connectstring=192.168.1.251 # location of MGM node  
    4.    
    5. # Options for ndbd process:  
    6. [MySQL_CLUSTER]                  
    7. ndb-connectstring=192.168.1.251 # location of MGM node  
    8.    
    9. A: /var/lib/MySQL-cluster/config.ini  
    10. [NDBD DEFAULT]     
    11. NoOfReplicas=1   # Number of replicas  
    12. DataMemory=80M   # How much memory to allocate for data storage  
    13. IndexMemory=18M  # How much memory to allocate for index storage  
    14.                  # For DataMemory and IndexMemory, we have used the  
    15.                  # default values. Since the "world" database takes up  
    16.                  # only about 500KB, this should be more than enough for  
    17.                  # this example Cluster setup.  
    18. # TCP/IP options:  
    19. [TCP DEFAULT]      
    20. portnumber=2202  # This the default; however, you can use any  
    21.                  # port that is free for all the hosts in cluster  
    22.                  # Note: It is recommended beginning with MySQL 5.0 that  
    23.                  # you do not specify the portnumber at all and simply allow  
    24.                  # the default value to be used instead  
    25. # Management process options:  
    26. [NDB_MGMD]                       
    27. hostname=192.168.1.251          # Hostname or IP address of MGM node  
    28. datadir=/var/lib/MySQL-cluster # Directory for MGM node logfiles  
    29. # Options for data node "A":  
    30. [NDBD]                           
    31. # (one [NDBD] section per data node)  
    32. hostname=192.168.1.251          # Hostname or IP address  
    33. datadir=/usr/local/MySQL/data  # Directory for this data node's datafiles  
    34. # SQL node options:  
    35. [MySQLD]  
    36. hostname=192.168.1.254  
    37. #[MySQLD] #这个相当于192.168.1.251  
    38.   

    4. 启动测试

    在管理服务器上面(这里是192.168.1.251):

    1. shell>ndb_mgmd -f /var/lib/MySQL-cluster/config.ini 

    在数据结点服务器上面(依然是192.168.1.251and more):

    1. shell>ndbd--initial (第一次时加--initial参数) 

    SQL结点服务器上面(192.168.1.254):

    1. shell>MySQLd & 

    在251上面察看

    1. ./ndb_mgm  
    2.  
    3. -- NDB Cluster -- Management Client --  
    4. ndb_mgm> show  
    5. Connected to Management Server at: 192.168.1.251:1186  
    6. Cluster Configuration  
    7. ---------------------  
    8. [ndbd(NDB)]    1 node(s)  
    9. id=2   @192.168.1.251 (Version:5.0.22, Nodegroup: 0, Master)  
    10.    
    11. [ndb_mgmd(MGM)] 1 node(s)  
    12. id=1   @192.168.1.251 (Version:5.0.22)  
    13.    
    14. [MySQLd(API)]  1 node(s)  
    15. id=3   @192.168.1.254 (Version:5.0.22) 

    ok

    关闭集群:

    1. shell>ndb_mgm -e shutdown 

    5.基本的集群说明

    1)在MySQL集群中.当table引擎为NDBCLUSTER时才做集群,其他非NDBCLUSTER表和一般MySQL数据库表一样,不会共享数据. NDBCLUSTER表数据存储在Data node服务器内存中,Data Node可以为1台或多台服务器,它们之间存放共享数据。Data Node服务器可以分组数据copy。

    例如:2,3,4,5为四台Data Node服务器ID. 2,3为组0。 4,5为组1。 2,3维持数据相同,4,5维持数据相同。 组0和组1维持数据不同。

    2)sql node服务器中,非NDBCLUSTER数据存在本身数据库中,table引擎为NDBCLUSTER时,数据存储在Data Node中。当查询NDBCLUSTER表时,它会从Data node集群中提起数据.

    3)Manager server

    管理SQl node和Data node状态。

    6深入了解http://dev.MySQL.com/doc/refman/5.0/en/ndbcluster.html

    原文链接:http://blog.19lou.com/10131711/viewspace-338346 

  • 相关阅读:
    龙年新作:水印文字添加工具源码摘要
    C语言关键字 浪里白条:goto
    继续聊WPF——自定义命令
    CSS3新的鼠标样式介绍
    C语言深入理解 常量与变量
    XCode 4 不能运行的解决办法
    Runtime专题:详解IOS开发应用之并发Dispatch Queues
    C语言关键字 乱世枭雄:static与extern
    一步步带你做vue后台管理框架(一)——介绍框架
    怎么在谷歌浏览器中安装.crx扩展名的离线Chrome插件?
  • 原文地址:https://www.cnblogs.com/xiangzhong/p/5034215.html
Copyright © 2011-2022 走看看