【集群环境】
管理节点 10.0.0.19
数据节点 10.0.0.12
10.0.0.17
sql节点 10.0.0.18
2. 安装mysql-cluster 7.3.5-linux
以上步骤5台机器都要执行
拷贝ndb_mgm、ndb_mgmd到bin目录。
备注: 管理节点只要ndb_mgm和ndb_mgmd两个文件和一个配置文件即可。
因此把这三个文件复制到那里,那里就是管理节点了。
ndb_mgmd是mysql cluster管理服务器,ndb_mgm是客户端管理工具。
关闭管理节点
这时就进入到客户端,可以对mysql cluster进行各项操作。
(2) 数据节点
安装后第一次启动数据节点时要加上--initial参数,其它时候不要加,除非是在备份、恢复或配置变化后重启时
(3) sql节点
设置mysql服务为开机自启动
错误解决办法: 1. can't connect to local MySQL server through socket '/tmp/mysql.sock'
ln -s /var/mysql/mysql.soc /tmp
管理节点 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
2. 安装mysql-cluster 7.3.5-linux
- # 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
以上步骤5台机器都要执行
3. 集群配置
(1) 管理节点
- # vi /var/lib/mysql-cluster/config.ini (目录和文件没有请新建,添加以下内容)
- [NDBD DEFAULT]
- NoOfReplicas=2
- [TCP DEFAULT]
- portnumber=3306
- [NDB_MGMD]
- #设置管理节点服务器
- nodeid=1
- HostName=10.0.0.19
- DataDir=/var/mysql/data
- [NDBD]
- id=2
- HostName=10.0.0.12
- DataDir=/var/mysql/data
- [NDBD]
- id=3
- HostName=10.0.0.17
- DataDir=/var/mysql/data
- [MYSQLD]
- id=4
- HostName=10.0.0.18
- [MYSQLD]
- id=5
- HostName=10.0.0.22
- #必须有空的mysqld节点,不然数据节点断开后启动有报错
- [MYSQLD]
- id=6
- [mysqld]
- id=7
拷贝ndb_mgm、ndb_mgmd到bin目录。
- # cd /usr/local/mysql/bin
- # cp ./ndb_mgm /usr/local/bin/
- # cp ./ndb_mgmd /usr/local/bin/
备注: 管理节点只要ndb_mgm和ndb_mgmd两个文件和一个配置文件即可。
因此把这三个文件复制到那里,那里就是管理节点了。
ndb_mgmd是mysql cluster管理服务器,ndb_mgm是客户端管理工具。
启动管理节点
- # 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; 调整分区数据
(2) 数据节点
- # vi /etc/my.cnf (添加以下内容)
- [mysqld]
- datadir=/var/mysql/data
- socket=/var/mysql/mysql.sock
- user=mysql
- # Disabling symbolic-links is recommended to prevent assorted security risks
- symbolic-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.log
- pid-file=/var/run/mysqld/mysqld.pid
安装后第一次启动数据节点时要加上--initial参数,其它时候不要加,除非是在备份、恢复或配置变化后重启时
- # /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/data
- socket=/var/mysql/mysql.sock
- user=mysql
- # Disabling symbolic-links is recommended to prevent assorted security risks
- symbolic-links=0
- log-bin = /var/mysql/log/mysql-bin.log
- max_connections=1000
- #以下为mysql 主主模式的配置文件
- # 忽略mysql数据库复制
- binlog-ignore-db=mysql
- # 每次增长2
- auto-increment-increment = 2
- # 设置自动增长的字段的偏移量,即初始值为2
- auto-increment-offset = 1
- [mysqld_safe]
- log-error=/var/mysql/log/mysqld.log
- pid-file=/var/run/mysqld/mysqld.pid
- [MYSQLD]
- ndbcluster
- ndb-connectstring=10.0.0.19
- [MYSQL_CLUSTER]
- ndb-connectstring=10.0.0.19
- [NDB_MGM]
- connect-string=10.0.0.19
- #service mysqld start
错误解决办法: 1. can't connect to local MySQL server through socket '/tmp/mysql.sock'
ln -s /var/mysql/mysql.soc /tmp
mysql集群的启动顺序为:管理节点->数据节点->SQL节点
mysql集群的关闭顺序为,管理节点->数据节点->SQL节点
原文地址:http://blog.csdn.net/zhao8464160/article/details/37764547