【集群环境】
管理节点 10.0.0.19
数据节点 10.0.0.12
10.0.0.17
sql节点 10.0.0.18
10.0.0.22
1. 添加mysql用户
# groupadd mysql# useradd mysql -g mysql
# cd /usr/local/src/(已下载好集群版)# tar -xvf mysql-cluster-gpl-7.3.5-linux-glibc2.5-x86_64.tar.gz # mv mysql-cluster-gpl-7.3.5-linux-glibc2.5-x86_64 ../mysql# cd ..# chown -R mysql:mysql mysql/# cd mysql# scripts/mysql_install_db --user=mysql
3. 集群配置
(1) 管理节点
# vi /var/lib/mysql-cluster/config.ini (目录和文件没有请新建,添加以下内容)
[NDBD DEFAULT]NoOfReplicas=2[TCP DEFAULT]portnumber=3306[NDB_MGMD]#设置管理节点服务器nodeid=1HostName=10.0.0.19DataDir=/var/mysql/data[NDBD]id=2HostName=10.0.0.12DataDir=/var/mysql/data[NDBD]id=3HostName=10.0.0.17DataDir=/var/mysql/data[MYSQLD]id=4HostName=10.0.0.18[MYSQLD]id=5HostName=10.0.0.22#必须有空的mysqld节点,不然数据节点断开后启动有报错[MYSQLD]id=6[mysqld]id=7
# cd /usr/local/mysql/bin# cp ./ndb_mgm /usr/local/bin/# cp ./ndb_mgmd /usr/local/bin/
启动管理节点
# ndb_mgmd -f /var/lib/mysql-cluster/config.ini
# ndb_mgm>shutdown
备注:命令行中的ndb_mgmd是mysql cluster的管理服务器,后面的-f表示后面的参数是启动的参数配置文件。
如果在启动后过了几天又添加了一个数据节点,这时修改了配置文件启动时就必须加上--initial参数,不然添加的节点不会作用在mysql cluster中。
# ndb_mgmd -f /var/lib/mysql-cluster/config.ini --initial
# ndb_mgm
# ndb_mgm> show 查看各节点情况。# ndb_mgm> all report memory 查看各数据节点使用情况# ndb_mgm>create nodegroup 3;创建数据节点分组# mysql> alter online table data_house reorganize partition; 调整分区数据
# vi /etc/my.cnf (添加以下内容)
[mysqld]datadir=/var/mysql/datasocket=/var/mysql/mysql.sockuser=mysql# Disabling symbolic-links is recommended to prevent assorted security riskssymbolic-links=0#运行NDB存储引擎ndbcluster #指定管理节点ndb-connectstring=10.0.0.19[MYSQL_CLUSTER]ndb-connectstring=10.0.0.19[NDB_MGM]connect-string=10.0.0.19[mysqld_safe]log-error=/var/mysql/log/mysqld.logpid-file=/var/run/mysqld/mysqld.pid
# /usr/local/mysql/bin/ndbd --initial 正常启动# /usr/local/mysql/bin/ndbd
# cd /usr/local/mysql/
# cp support-files/mysql.server /etc/rc.d/init.d/mysqld# chmod +x /etc/rc.d/init.d/mysqld# chkconfig --add mysqld
# vi /etc/my.cnf (添加以下内容)
[mysqld]server-id=4#每个服务器的id不一样datadir=/var/mysql/datasocket=/var/mysql/mysql.sockuser=mysql# Disabling symbolic-links is recommended to prevent assorted security riskssymbolic-links=0log-bin = /var/mysql/log/mysql-bin.logmax_connections=1000#以下为mysql 主主模式的配置文件# 忽略mysql数据库复制binlog-ignore-db=mysql# 每次增长2auto-increment-increment = 2# 设置自动增长的字段的偏移量,即初始值为2auto-increment-offset = 1[mysqld_safe]log-error=/var/mysql/log/mysqld.logpid-file=/var/run/mysqld/mysqld.pid[MYSQLD]ndbclusterndb-connectstring=10.0.0.19[MYSQL_CLUSTER]ndb-connectstring=10.0.0.19[NDB_MGM]connect-string=10.0.0.19
#service mysqld start
mysql集群的启动顺序为:管理节点->数据节点->SQL节点
mysql集群的关闭顺序为,管理节点->数据节点->SQL节点