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.251and more):
| shell>ndbd--initial |