为了方便 这里我把管理节点,数据节点,sql节点放在一台机器上.
管理节点1 10.1.6.205
数据节点1 10.1.6.203
数据节点2 10.1.6.205
sql节点1 10.1.6.203
sql节点2 10.1.6.205
1.安装(这里安装7.2.6版本)
下载mysql-cluster-gpl-7.2.6-linux2.6-x86_64.tar.gz 二进制包(里面包含ndb,mysql)
| root@10.1.6.205:~# tar -C /usr/local -xzvf mysql-cluster-gpl-7.2.6-linux2.6-x86_64.tar.gz root@10.1.6.205:/usr/local# ln -s /usr/local/mysql-cluster-gpl-7.2.8-linux2.6-i686 /usr/local/mysql root@10.1.6.205:/usr/local# cd mysql root@10.1.6.205:/usr/local/mysql# scripts/mysql_install_db --user=mysql root@10.1.6.205:/usr/local/mysql# chown -R mysql:mysql /usr/local/mysql 同理10.1.6.203 |
2.配置SQL节点和存储NDB节点
| root@10.1.6.205:/usr/local/mysql# vim /etc/my.cnf [mysqld] basedir=/usr/local/mysql/ datadir=/usr/local/mysql/data/ user=mysql port=3306 socket=/tmp/mysql.sock ndbcluster max_connect_errors=10000 ndb-connectstring=10.1.6.205 connect_timeout = 300 [mysql_cluster] ndb-connectstring=10.1.6.205 |
同理10.1.6.203
3.配置管理节点
| root@10.1.6.205:/usr/local/mysql# vim /opt/cluster/config.ini [ndbd default] NoOfReplicas=2 DataMemory=80M #分配data storage使用的内存 每个ndb占用 IndexMemory=18M #分配index storage使用的内存 每个ndb占用 [tcp default] portnumber=2205 #ndb监听端口 #设置管理节点 [ndb_mgmd] NodeId=1 hostname=10.1.6.205 datadir=/opt/cluster #在MGM上保存日志的目录 #设置存储节点NDB1 [ndbd] NodeId=2 hostname=10.1.6.203 datadir=/usr/local/mysql/data #设置存储节点NDB2 [ndbd] NodeId=3 hostname=10.1.6.205 datadir=/usr/local/mysql/data #设置SQL节点1 [mysqld] NodeId=4 hostname=10.1.6.203 #设置SQL节点2 [mysqld] NodeId=5 hostname=10.1.6.205 [mysqld] #运行任意ip连接 [mysqld] |
4.启动mysql cluster
1)先启动管理节点服务器.2)启动NDB存储节点服务器.3)启动SQL节点服务器.
1)执行启动MGM节点进程
| root@10.1.6.205:/usr/local/mysql/bin# /usr/local/mysql/bin/ndb_mgmd -f /opt/cluster/config.ini MySQL Cluster Management Server mysql-5.5.22 ndb-7.2.6 |
必须用参数-f或--config-file告诉ndb_mgm配置文件config.ini文件所在的位置.
2)在2台存储节点服务器上,如果是第一次启动NDB进程的话,必须先执行以下命令:
| root@10.1.6.205:/usr/local/mysql/bin# /usr/local/mysql/bin/ndbd --initial 2013-08-28 23:40:36 [ndbd] INFO -- Angel connected to '10.1.6.205:1186' 2013-08-28 23:40:36 [ndbd] INFO -- Angel allocated nodeid: 2 |
注意:仅在首次启动NDB时,或者在备份/恢复或配置文件发生变化且重启NDB时才使用-initial参数.因为该参数会使节点删除由早期NDB实例创建的,用于恢复的任何文件,包括用于恢复的日志文件.










