各位用户为了找寻关于CentOS中mysql cluster安装部署教程的资料费劲了很多周折。这里教程网为您整理了关于CentOS中mysql cluster安装部署教程的相关资料,仅供查阅,以下为您介绍关于CentOS中mysql cluster安装部署教程的详细内容

一、安装要求

安装环境:CentOS-6.5-32bit

软件名称:mysql-cluster-gpl-7.2.25-linux2.6-i686.tar.gz

下载地址:http://mysql.mirror.kangaroot.net/Downloads/

软件包:mysql-cluster-gpl-7.2.25-linux2.6-i686.tar.gz

软件包存放目录:/usr/local

管理节点(MGM): 192.168.1.71

数据节点1(NDBD1):192.168.1.72

数据节点2(NDBD2):192.168.1.73

sql节点1(SQL1): 192.168.1.74

sql节点2(SQL2): 192.168.1.75

二、安装部署

1.安装前:(所有节点服务器需执行)

? 1 2 3 [root@MGM ]#rpm -qa|grep mysql* (查询系统中存在的mysql)   [root@MGM ]#rpm -e –nodeps mysql-libs-5.1.71-1.el6.i686 (根据自己查出来的mysql版本)

2.开始部署:(所有节点服务器需执行)

? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 [root@MGM ]#groupadd mysql   [root@MGM ]#useradd mysql -g mysql   [root@MGM ]#cd /usr/local (软件包在此目录下,根据自己存放位置进入)   [root@MGM local]#tar -xvfmysql-cluster-gpl-7.2.25-linux2.6-i686.tar.gz   [root@MGM local]#mkdir /usr/local/mysql (创建mysql目录)   [root@MGM local]#mvmysql-cluster-gpl-7.2.25-linux2.6-i686/* mysql   [root@MGM local]#chown -R mysql:mysql mysql/   [root@MGM local]#cd mysql   [root@MGM mysql]#scripts/mysql_install_db –user=mysql (管理及数据节点执行这条命令)   #scripts/mysql_install_db –user=mysql –datadir=/var/mysql/data (sql节点执行这条命令)

三、集群配置

1.管理节点配置:

? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 [root@MGM mysql]#mkdir /var/lib/mysql-cluster   [root@MGM ]#mkdir /var/mysql   [root@MGM ]#mkdir /var/mysql/data   [root@MGM ]#mkdit /var/mysql/log   [root@MGM mysql]#vi /var/lib/mysql-cluster/config.ini (添加以下内容)   [NDBD DEFAULT]   NoOfReplicas=2   #[TCP DEFAULT]   #PortNumber=1186   [NDB_MGMD]   #设置管理节点服务器   nodeid=1   HostName=192.168.1.71   DataDir=/var/mysql/data   [NDBD]   nodeid=2   HostName=192.168.1.72   DataDir=/var/mysql/data   [NDBD]   nodeid=3   HostName=192.168.1.73   DataDir=/var/mysql/data   [MYSQLD]   nodeid=4   HostName=192.168.1.74   [MYSQLD]   nodeid=5   HostName=192.168.1.75   #必须有空的mysqld节点,不然数据节点断开后启动有报错   [MYSQLD]   nodeid=6   [mysqld]   nodeid=7

拷贝ndb_mgm、ndb_mgmd、config.ini到bin目录:

? 1 2 3 4 5 6 7 8 9 [root@MGM mysql]#cd /usr/local/mysql/bin   [root@MGM bin]#cp ./ndb_mgm /usr/local/bin/   [root@MGM bin]#cp ./ndb_mgmd /usr/local/bin/   [root@MGM bin]#cp /var/lib/mysql-cluster/config.ini /usr/local/bin/   [root@MGM bin]#vi /etc/sysconfig/iptables (添加红色方框内容)

? 1 [root@MGM bin]/etc/init.d/iptables restart 重启防火墙

2.数据节点配置:(所有数据节点需执行)

? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 [root@NDBD1 ]#mkdir /var/mysql   [root@NDBD1 ]#mkdir /var/mysql/data   [root@NDBD1 ]#mkdit /var/mysql/log   [root@NDBD1 ]#/etc/init.d/iptables stop (关闭防火墙,也可自行添加开放端口)   [root@NDBD1 ]#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=192.168.1.71   [MYSQL_CLUSTER]   ndb-connectstring=192.168.1.71   [NDB_MGM]   connect-string=192.168.1.71   [mysqld_safe]   log-error=/var/mysql/log/mysqld.log   pid-file=/var/run/mysqld/mysqld.pid

 

3.sql节点配置:(所有sql节点需执行)

? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 [root@SQL1 ]#cd /usr/local/mysql/   [root@SQL1 mysql]#cp support-files/mysql.server /etc/rc.d/init.d/mysqld   [root@SQL1 mysql]#chmod +x /etc/rc.d/init.d/mysqld   [root@SQL1 mysql]#chkconfig –add mysqld   [root@SQL1 mysql]#mkdir /var/mysql   [root@SQL1 mysql]#mkdir /var/mysql/data   [root@SQL1 mysql]#mkdir /var/mysql/log   [root@SQL1 mysql]#chown -R mysql:mysql /var/mysql   [root@SQL1 mysql]#ln -s /usr/local/mysql/bin/mysql /usr/bin   [root@SQL1 mysql]#ln -s /var/mysql/mysql.sock /tmp/mysql.sock   [root@SQL1 mysql]#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   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   ndbcluster   ndb-connectstring=192.168.1.71   [MYSQL_CLUSTER]   ndb-connectstring=192.168.1.71   [NDB_MGM]   connect-string=192.168.1.71   [mysqld_safe]   log-error=/var/mysql/log/mysqld.log   pid-file=/var/run/mysqld/mysqld.pid

四、mysql-cluster启动

1.启动mysql-cluster

mysql集群的启动顺序为:管理节点->数据节点->SQL节点

mysql集群的关闭顺序为,SQL节点->数据节点->管理节点

2.管理节点:

[root@MGM ]#ndb_mgmd -f /var/lib/mysql-cluster/config.ini –initial(注意第一次或者对config文件进行修改后,打开服务一定要加上initial否则新增加的内容不会被使用)

3.数据节点:

[root@NDBD1 ]#/usr/local/mysql/bin/ndbd –initial(此处同上)

4.sql节点:

[root@SQL1 ]#service mysqld start

5.验证:(在管理节点上)

[root@MGM ]#ndb_mgm

ndb_mgm>show

五、测试

1.在sql1节点执行:

? 1 2 3 4 5 6 7 8 9 10 11 [root@SQL1 ]#mysql 调用mysql   mysql>create database tianyuan; 创建数据库   mysql>use tianyuan; 使用数据库   mysql>create table test(i int,name varchar(10)) engine=ndbcluster; 创建表   mysql>insert into test values(1,'ceshi'); 插入表数据   mysql>select * from test; 查询验证

2.在sql2节点验证sql1的数据是否已同步到sql2:

? 1 2 3 4 5 6 7 [root@SQL2 ]#mysql 调用mysql   mysql>show databases; 查询数据库   mysql>use tianyuan; 使用数据库   mysql>select * from test; 查询验证

3.可通过中断数据节点或sql节点来验证数据是否会同步。