windows7实现mysql集群cluster-mysql簇

下载:mysql-cluster-gpl-7.4.7-winx64
	内置了:mysql-5.6.25,ndb-7.4.7
文档可参考 mysql参考手册【mysql簇】
====================================================
管理(MGM)节点
	新建文件夹,存放ndb_mgm.exe 和ndb_mgmd.exe,就是管理(MGM)节点
	不需要mysql客户端
	端口监督程序和客户端二进制版本(分别是ndb_mgmd和ndb_mgm)
	config.ini
		 [ndbd default]
		NoOfReplicas=2
		DataDir=E:\\balance\\mysql-cluster\\mgm\\datanode
		DataMemory=80M
		IndexMemory=18M

		[mysqld default]
		[ndb_mgmd default]
		[tcp default]

		[ndb_mgmd]
		NodeId=1
		HostName=127.0.0.1 #管理节点服务器
		PortNumber=1186
		# Storage Engines
		DataDir=E:\\balance\\mysql-cluster\\mgm\\1

		[ndbd]
		NodeId=2
		HostName=127.0.0.1 #MySQL集群db1的IP地址
		#portnumber=2001
		DataDir=E:\\balance\\mysql-cluster\\mgm\\2
		#DataDir= D:/Program Files/mysqlcluster/datanode/mysql/bin/cluster-data #如果不存在就创建一个

		[ndbd]
		NodeId=3
		HostName=127.0.0.1 #MySQL集群db2的IP地址
		#portnumber=2002
		DataDir=E:\\balance\\mysql-cluster\\mgm\\3
		#DataDir= D:/Program Files/mysqlcluster/datanode/mysql/bin/cluster-data  #如果不存在就创建一个

		[MYSQLD]
		NodeId=5
		HostName=127.0.0.1
		#portnumber=3310
		[MYSQLD]
		NodeId=6
		HostName=127.0.0.1
		#portnumber=3320
	//启动管理节点
	ndb_mgmd --ndb-nodeid=1 
	--config-file=E:\\balance\\mysql-cluster\\mgm\\config.ini 
	--config-dir=E:\\balance\\mysql-cluster\\mgm 
	--initial 首次使用,会清空数据
	//用于安装 --install=ndb_mgmd 
数据(NDBD)
	复制ndbd.exe
	//启动存储节点(ndbd.exe 没有config参数)
	ndbd.exe 
	--ndb-nodeid=3 
	--ndb-connectstring=127.0.0.1:1186
	--initial 首次使用,会清空数据
	连上默认1186端口,mgm服务会分配nodeid


SQL节点
	用mysql-cluster的压缩包
	my.ini
		[mysqld]    
		ndbcluster
		port=3310
		ndb-connectstring=127.0.0.1

		[mysql_cluster]

		# Options for data node process:ndbcluster   
		ndb-connectstring=127.0.0.1
		# location of management server  
	启动sqld
		mysqld --defaults-file=E:\\balance\\mysql-cluster\\mysql5.6\\3310\\my.ini --ndb-nodeid=5 --console 


application application application application    
     \            |          \           |        Applications
      \           |             \       /
------------------------------------------------
    mysqld       mysqld            mysqld          
	\	   |                 |		    MySQL Server	
	  \	   |		     |                
-------------------------------------------------
		NDB CLUSTER
		(data nodes)
		ndbd  ndbd   ndbd             Stroage
			|
			|
-------------------------------------------------------
		ndb_mgmd            ->ndb_mgm
		Management Server	client   
		
节点				IP地址
管理(MGM)节点			192.168.0.10   (管理配置)
MySQL服务器(SQL)节点		192.168.0.20
数据(NDBD)节点"A"		192.168.0.30
数据(NDBD)节点"B"		192.168.0.40
 
================================
启动顺序:管理节点->数据节点->sql节点
关闭顺序:sql节点->数据节点->管理节点
关闭节点:ndb_mgm> 1 stop
	Node 1 has shutdown.
查看集群状态:ndb_mgm>show
NoOfReplicas=2:数据节点数量

表必须用ENGINE=NDB或ENGINE=NDBCLUSTER选项创建,或用ALTER TABLE选项更改
ALTER TABLE `db0100` ENGINE=NDBCLUSTER;
测试:在一个sql中插入数据,其他sql立刻同步


总结:操作任意一个sql节点,ndb引擎会同步数据到其他sql节点
NDB是一种“内存中”存储引擎
NDB存储引擎选项配置:多种故障切换和负载平衡

发表评论

电子邮件地址不会被公开。 必填项已用*标注