1、准备三台服务器2、为三台机器分别安装Linux操作系统(Oracle Linux / RHEL 6.5 x86_64bit)3、分别IP地址管理节点 192.168.1.110 (负责管理整个集群)SQL节点 192.168.1.111 (负责操作数据库)SQL节点 192.168.1.112 (负责操作数据库)数据节点 192.168.1.111 (负责存储数据)数据节点 192.168.1.112 (负责存储数据)
SQL节点和数据节点可以同在一台机器上
4、修改三台服务器的/etc/hosts文件,修改完后的内容如下:127.0.0.1 localhost localhost.domain192.168.1.110 node01192.168.1.111 node02192.168.1.112 node03 5、修改三台服务器的/etc/sysconfig/nework文件,修改完后的内容分别如下:NETWORKING=yesHOSTNAME=node01GATEWAY=192.168.1.1 (网关地址因所处网络的不同而不同)
NETWORKING=yesHOSTNAME=node02GATEWAY=192.168.1.1 (网关地址因所处网络的不同而不同) NETWORKING=yesHOSTNAME=node03GATEWAY=192.168.1.1 (网关地址因所处网络的不同而不同)
6、分别重启三台服务器--------------------------------------分割线 --------------------------------------Ubuntu 14.04下安装MySQL http://www.linuxidc.com/Linux/2014-05/102366.htm《MySQL权威指南(原书第2版)》清晰中文扫描版 PDF http://www.linuxidc.com/Linux/2014-03/98821.htmUbuntu 14.04 LTS 安装 LNMP NginxPHP5 (PHP-FPM)MySQL http://www.linuxidc.com/Linux/2014-05/102351.htmUbuntu 14.04下搭建MySQL主从服务器 http://www.linuxidc.com/Linux/2014-05/101599.htmUbuntu 12.04 LTS 构建高可用分布式 MySQL 集群 http://www.linuxidc.com/Linux/2013-11/93019.htmUbuntu 12.04下源代码安装MySQL5.6以及Python-MySQLdb http://www.linuxidc.com/Linux/2013-08/89270.htm--------------------------------------分割线 --------------------------------------
7、下载NDB集群软件mysql-cluster-advanced-7.3.5-linux-glibc2.5-x86_64.tar.gz 集群软件有三种格式:a、以tar.gz结尾的二制进格式b、以rpm结尾的rpm包形式c、以源文件编译安装方式
rpm包安装方式,由于是自动安装的,所以不方便配置软件安装位置和数据存储位置
所以通常选用.tar.gz结尾的二进制格式的安装文件
注意:mysql-cluster-advanced-7.3.5-linux-glibc2.5-x86_64.tar.gz包含了mysql数据库软件和NDB集群软件
8、分别复制mysql-cluster-advanced-7.3.5-linux-glibc2.5-x86_64.tar.gz文件到三台服务器上的/usr/local/目录下
9、新建用户mysql# groupadd mysql# useradd -r -g mysql mysql (由于mysql用户只是用于安装配置NDB集群或mysql软件,而不用用于登陆系统) (所以以-r参数来创建mysql用户,并且不用为该用户设置密码)
10、分别在三台服务器上解压mysql-cluster-advanced-7.3.5-linux-glibc2.5-x86_64.tar.gz文件
# cd /usr/local# tar zxvf mysql-cluster-advanced-7.3.5-linux-glibc2.5-x86_64.tar.gz# ln -s mysql-cluster-advanced-7.3.5-linux-glibc2.5-x86_64 mysql# chown -R mysql.mysql mysql-cluster-advanced-7.3.5-linux-glibc2.5-x86_64# cd mysql# chown -R mysql.mysql .配置完成以后,结果如下 11、在192.168.1.111和192.168.1.112两个数据节点(两台服务器)上安装mysql数据库软件由于是二进制安装,所以mysql数据库软件就安装在/usr/local/mysql下, 但数据库的数据可以存放到其它地方,如/u01/app/mysql/data/下面 注意:以下命令在两台数据节点服务器上都要执行 # mkdir -p /u01/app/mysql/data# chown -R mysql.mysql /u01# cd /usr/local/mysql# scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/u01/app/mysql/data --user=mysql执行完这条命令以后,数据库的数据文件(包括mysql,test , performance_schema等数据库)就被安装到了/u01/app/mysql/data目录下了
# cp bin/ndbd /usr/local/bin/# cp bin/ndbmtd /usr/local/bin/然后将启动数据库服务的启动文件复制到/etc/rc.d/init.d/目录下
# cp support-files/mysql.server /etc/rc.d/init.d/mysqld (改名)执行完上面这条命令以后,就可以使用service mysqld start | stop | restart命令来管理数据库服务了
# cp my.cnf /etc/my.cnf# vi /etc/my.cnf[mysqld]ndbclusterbasedir=/usr/local/mysqldatadir=/u01/app/mysql/dataport=3306sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
[mysql_cluster]ndb-connectstring=192.168.1.110 再次注意:以上命令在两台数据节点服务器上都要执行 到此,数据节点和SQL节点的安装配置就结束了,如果数据节点和SQL节点是分开在不同的机器上,则每个数据节点和每个SQL节点都要执行以上命令。
12、在管理节点上进行安装配置 由于第10步已经解压缩mysql-cluster-advanced-7.3.5-linux-glibc2.5-x86_64.tar.gz 安装包到了/usr/local目录下,并进行了软连接等操作,所以这些工作就不用重复做了,接着往下配置即可
# cd /usr/local/mysql# mkdir mysql-cluster (创建mysql-cluster目录,后面启动集群管理服务时要用)# cp bin/ndb_mgm* /usr/local/bin/# cd /var/lib# mkdir mysql-cluster# cd mysql-cluster# vi config.ini (这是管理节点上的集群配置文件,很重要)[ndbd default]NoOfReplicas=1 # Number of replicasDataMemory=80M # How much memory to allocate for data storageIndexMemory=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 default] # This the default; however, you can use any # port that is free for all the hosts in the cluster # Note: It is recommended that you do not specify the port # number at all and simply allow the default value to be used # instead
[ndb_mgmd]hostname=192.168.1.110 # Hostname or IP address of MGM nodedatadir=/var/lib/mysql-cluster # Directory for MGM node log filesNodeId=1
[ndbd]hostname=192.168.1.111 # Hostname or IP addressdatadir=/u01/app/mysql/data # Directory for this data node"s data filesNodeId=2
[ndbd]hostname=192.168.1.112 # Hostname or IP addressdatadir=/u01/app/mysql/data # Directory for this data node"s data filesNodeId=3 [mysqld]hostname=192.168.1.111 # Hostname or IP addressNodeId=4 # (additional mysqld connections can be # specified for this node for various # purposes such as running ndb_restore)
[mysqld]hostname=192.168.1.112 # Hostname or IP addressNodeId=5 # (additional mysqld connections can be # specified for this node for various # purposes such as running ndb_restore)
配置说明:[ndbd default] 这部分是公共部分,对于每一个数据节点都有效,只需要配置一份NoOfReplicas=1 数据镜像几份(各数据节点之间相互备份)
[tcp default] 针对每个数据节点及管理节点之间使用哪个端口进行通讯, 在旧版本的NDB集群软件配置时,这个地方通常配置portnumber=2202 但新版的NDB软件这里不需要配置,并且MySQL官方也强烈建议不要配置
[ndb_mgmd] 管理节点的配置部分(通常只有一个) 注意NodeId=1指明管理节点的节点ID为1,如???不指定,在启动集群时,会报错hostname=192.168.1.110 指明管理节点的IP地址datadir=/var/lib/mysql-cluster 指明集群管理日志存放的位置
[ndbd] 数据节点配置部分,有几个数据节点就配置几个[ndbd]hostname=192.168.1.111 指明数据节点的IP地址datadir=/u01/app/mysql/data 指明数据节点上的数据库文件存放的位置NodeId=2 指明该数据节点在整个集群中的nodeid号(很重要) [mysqld] SQL节点配置部分,有几个SQL节点,就配置几个[mysqld]
更多详情见请继续阅读下一页的精彩内容: http://www.linuxidc.com/Linux/2014-06/103748p2.htm
MySQL半同步复制的实现MySQL5.6 Replication主从复制(读写分离) 配置完整版相关资讯 mysql5.6配置 MySQL5.6集群
- MySQL5.6配置同步复制的新方法以及 (10/13/2014 19:18:46)
| - Windows下MySQL 5.6安装及配置详细 (04/24/2013 08:21:08)
|
本文评论 查看全部评论 (0)