1.  
				
				先了解一下你是否应该用
				mysql
				集群。
				
						
						
						
				
		
		
				减少数据中心结点压力和大数据量处理,采用把
				mysql
				分布,一个或多个
				application 
				对应一个
				mysql
				数据库。把几个
				mysql
				数据库公用的数据做出共享数据,例如购物车,用户对象等等,存在数据结点里面。其他不共享的数据还维持在各自分布的
				mysql
				数据库本身中。
				
						
						
				
		
		
				
						 
				
		
		
				
				
						
						
						
								
								
								
								
								
								
								
								
								
								
								
								
								
								
								
								
								
								
								
								
								
								
								
								
						
						
						
						
						
				
				
				
				
		
		
				
						 
				
		
		
				
						 
				
		
		
				
						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 
				加上:
				
						
								
								
						
				
		
		
				
						       
						
						
				
		
		
				[MYSQLD]                        
		
		
				ndbcluster                      # run NDB engine
		
		
				ndb-connectstring=192.168.1.251  # location of MGM node
		
		
				
						 
				
		
		
				# Options for ndbd process:
		
		
				[MYSQL_CLUSTER]                 
		
		
				ndb-connectstring=192.168.1.251  # location of MGM node
		
		
				
						 
				
		
		
				A: /var/lib/mysql-cluster/config.ini
		
		
				[NDBD DEFAULT]    
		
		
				NoOfReplicas=1    # Number of replicas
		
		
				DataMemory=80M    # How much memory to allocate for data storage
		
		
				IndexMemory=18M   # How much memory to allocate for index storage
		
		
				
						                  # For DataMemory and IndexMemory, we have used the
		
		
				
						                  # default values. Since the "world" database takes up
		
		
				
						                  # only about 500KB, this should be more than enough for
		
		
				
						                  # this example Cluster setup.
		
		
				# TCP/IP options:
		
		
				[TCP DEFAULT]     
		
		
				portnumber=2202   # This the default; however, you can use any
		
		
				
						                
						  # port that is free for all the hosts in cluster
		
		
				
						                  # Note: It is recommended beginning with MySQL 5.0 that
		
		
				
						                  # you do not specify the portnumber at all and simply allow
		
		
				
						                  # the default value to be used instead
		
		
				# Management process options:
		
		
				[NDB_MGMD]                      
		
		
				hostname=192.168.1.251           # Hostname or IP address of MGM node
		
		
				datadir=/var/lib/mysql-cluster  # Directory for MGM node logfiles
		
		
				# Options for data node "A":
		
		
				[NDBD]                          
		
		
				
						                                # (one [NDBD] section per data node)
		
		
				hostname=192.168.1.251           # Hostname or IP address
		
		
				datadir=/usr/local/mysql/data   # Directory for this data node's datafiles
		
		
				# SQL node options:
		
		
				[MYSQLD]
		
		
				hostname=192.168.1.254
		
		
				#[MYSQLD] #
				这个相当于
				192.168.1.251
		
		
				
						 
				
		
		
				
						 
				
		
		
				
						4.       
				
				启动测试
				
						
						
				
		
		
				
						 
				
		
		
				
						·         
				
				
						在管理服务器上面(这里是192.168.1.251): 
				
		
		
				
						·                
				
				
						shell> ndb_mgmd -f /var/lib/mysql-cluster/config.ini
				
		
		
				
						 
				
		
		
				
						·         
				
				
						在数据结点服务器上面(依然是192.168.1.251 and more): 
				
		
		
				
						·                
				
				
						shell> ndbd --initial (
						
								第一次时加 --initial 参数)
						
						
								
								
						
				
		
		
				
						 
				
		
		
				
						·         
				
				
						SQL
						结点服务器上面(192.168.1.254): 
				
		
		
				
						·                
				
				
						shell> mysqld &
				
		
		
				
						 
				
		
		
				在
				251
				上面察看
				
						
						
				
		
		
				
						 
				
		
		
				./ndb_mgm
		
		
				-- NDB Cluster -- Management Client --
		
		
				ndb_mgm> show
		
		
				Connected to Management Server at: 192.168.1.251:1186
		
		
				Cluster Configuration
		
		
				---------------------
		
		
				[ndbd(NDB)]     1 node(s)
		
		
				id=2    @192.168.1.251  (Version: 5.0.22, Nodegroup: 0, Master)
		
		
				
						 
						
						
				
		
		
				[ndb_mgmd(MGM)] 1 node(s)
		
		
				id=1    @192.168.1.251  (Version: 5.0.22)
		
		
				
						 
						
						
				
		
		
				[mysqld(API)]   1 node(s)
		
		
				id=3    @192.168.1.254  (Version: 5.0.22)
		
		
				
						 
				
		
		
				ok
		
		
				关闭集群:
				
						
						
				
		
		
				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
		
	posted on 2006-06-28 11:58 
地狱男爵(hellboys) 阅读(61992) 
评论(7)  编辑  收藏  所属分类: 
系统综合