cent os + MySQL Cluster 7.3.7 集群配置

[b]一、环境: [/b]
CentOS6.3(64位) + MySQL Cluster 7.3.7,规划5台虚拟机器,1G内存,分工如下:

MGM:10.10.10.41(管理节点)
NDBD1:10.10.10.42(数据节点1)
NDBD2:10.10.10.43(数据节点2)
SQL1:10.10.10.44(sql节点1)
SQL2:10.10.10.45(sql节点2)


[b]二、准备:[/b]
安装包主要有三种类型:1:rpm安装包;2:预编译二进制安装包; 3:源码包。
这里选择第二种安装包“预编译二进制安装包”,它只需要解压即可。
先官网下载页面 [url]http://dev.mysql.com/downloads/cluster/[/url],选择 Linux - Generic 下面的 mysql-cluster-gpl-7.3.7-linux-glibc2.5-x86_64.tar.gz 这个安装包!
[i]由于浏览器兼容的问题,我在访问这个页面时,下拉框选择之后事件触发没有生效,换个浏览器即可,找不到的可以直接选用以下链接[/i][url]http://dev.mysql.com/downloads/file.php?id=454198[/url]

[b]三、预处理:[/b]
清除MySQL旧版本:
首先使用如下命令来清理之前操作系统自带的MySQL安装:
yum -y remove mysq

然后使用如下命令:
rpm -qa | grep mysql*

检查是否还有残留的mysql包,如果存在如下类似的效果:
[code="java"]
# rpm -qa | grep mysql*
mysql-libs-5.1.61-4.el6.i686
apr-util-mysql-1.3.9-3.el6_0.1.i686
[/code]
则使用如下的命令格式将其删除:

rpm -e --nodeps mysql-libs-5.1.61-4.el6.i686
rpm -e --nodeps apr-util-mysql-1.3.9-3.el6_0.1.i686


[b]四、mysql安装:[/b]
本步骤是所有机器都需要的操作:
1:将前面我们下载下来的压缩包mysql-cluster-gpl-7.3.7-linux-glibc2.5-x86_64.tar.gz上传到cent os指定目录下(或者直接使用wget下载),如:/usr/local/src
2:解压并迁移到我们以后都需要操作的mysql安装目录下:

tar -xzvf /usr/local/src/mysql-cluster-gpl-7.3.7-linux-glibc2.5-x86_64.tar.gz
mv /usr/local/src/mysql-cluster-gpl-7.3.7-linux-glibc2.5-x86_64/* /usr/local/mysql

3:新建mysql用户及用户组:

groupadd mysql
useradd -g mysql -s /usr/sbin/nologin mysql
chown -R mysql:mysql /usr/local/mysql

4:安装 My Cluster

cd /usr/local/mysql
./scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

5:关闭防火墙(IPTABLES)与 selinux
chkconfig iptables off

vim /etc/selinux/config  #(改为SELINUX=disabled)保存退出

6:重启服务器
init 6


[b]五、配置节点:[/b]
1 配置管理节点(10.10.10.41)
# 删除自带的 /etc/my.cnf 【切记:一定要删除掉! 因为ndb_mgmd启动的时候,也会加上/etc/my.cnf的配置内容,干扰我们,所以要删除它】
rm -rf /etc/my.cnf

# 新建配置文件存放目录

mkdir /usr/local/mysql/etc
chown mysql:mysql /usr/local/mysql/etc

# 创建配置文件 config.ini

vim /usr/local/mysql/etc/config.ini

# config.ini内容如下:

[ndb_mgmd default]
datadir = /usr/local/mysql/data
[ndbd default]
NoOfReplicas = 2
DataMemory = 80M
IndexMemory = 18M
datadir = /usr/local/mysql/data
[ndb_mgmd]
NodeId = 1
HostName = 10.10.10.41
[ndbd]
NodeId = 11
HostName = 10.10.10.42
[ndbd]
NodeId = 12
HostName = 10.10.10.43
[mysqld]
NodeId = 81
HostName = 10.10.10.44
[mysqld]
NodeId = 82
HostName = 10.10.10.45

2 配置数据节点(10.10.10.42、10.10.10.43)
# 修改配置文件
vim /etc/my.cnf

# my.cnf内容如下:

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
[mysql]
socket=/var/lib/mysql/mysql.sock

[mysqldump]
socket=/var/lib/mysql/mysql.sock

[mysqladmin]
socket=/var/lib/mysql/mysql.sock
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0

[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

[mysqld]
ndbcluster
ndb-connectstring = 10.10.10.41
[mysql_cluster]
ndb-connectstring = 10.10.10.41

3 配置SQL节点(10.10.10.44、10.10.10.45)
# 拷贝文件

\cp -rf /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld

# 修改配置文件
vim /etc/my.cnf

# my.cnf内容如下:

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
[mysql]
socket=/var/lib/mysql/mysql.sock

[mysqldump]
socket=/var/lib/mysql/mysql.sock

[mysqladmin]
socket=/var/lib/mysql/mysql.sock


# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0

[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

[mysqld]
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
ndbcluster
ndb-connectstring = 10.10.10.41
[mysql_cluster]
ndb-connectstring = 10.10.10.41


六、启动节点
启动需要按照如下顺序进行:
Management Node(管理节点) > Data Node(数据节点) > SQL Node(sql节点)
1 启动管理节点(10.10.10.41)
# --initial 用于首次加载、或者/usr/local/mysql/etc/config.ini文件有改变,其它时候不要加,除非是在备份、恢复或配置变化后重启时,其他时候不要加,不然数据就清空。。。

/usr/local/mysql/bin/ndb_mgmd -f /usr/local/mysql/etc/config.ini --initial

# 正常启动方式

/usr/local/mysql/bin/ndb_mgmd -f /usr/local/mysql/etc/config.ini

其他常用操作:
#查看ndb_mgmd是否启动
[code="java"]
# ps -ef | grep ndb_mgmd
root 2948 1 1 23:47 ? 00:00:03 /usr/local/mysql/bin/ndb_mgmd -f /usr/local/mysql/etc/config.ini
root 2984 2073 0 23:52 pts/0 00:00:00 grep ndb_mgmd
#
[/code]
说明一下:ndb_mgmd默认启动 1186 端口
[code="java"]
# netstat -ntlp | grep ndb_mgmd
tcp 0 0 0.0.0.0:1186 0.0.0.0:* LISTEN 2948/ndb_mgmd
#
[/code]
#查看集群状态
[code="java"]
# /usr/local/mysql/bin/ndb_mgm
-- NDB Cluster -- Management Client --
ndb_mgm> show
Connected to Management Server at: localhost:1186
Cluster Configuration
---------------------
[ndbd(NDB)] 2 node(s)
id=11 @10.10.10.42 (mysql-5.6.21 ndb-7.3.7, Nodegroup: 0, *)
id=12 @10.10.10.43 (mysql-5.6.21 ndb-7.3.7, Nodegroup: 0)

[ndb_mgmd(MGM)] 1 node(s)
id=1 @10.10.10.41 (mysql-5.6.21 ndb-7.3.7)

[mysqld(API)] 2 node(s)
id=81 @10.10.10.44 (mysql-5.6.21 ndb-7.3.7)
id=82 @10.10.10.45 (mysql-5.6.21 ndb-7.3.7)
[/code]

2 启动数据节点(10.10.10.42、10.10.10.43)
# 只是在第一次启动或在备份/恢复或配置变化后重启ndbd时,才加–initial参数!
/usr/local/mysql/bin/ndbd --initial

# 正常启动方式
/usr/local/mysql/bin/ndbd

# 查看 ndbd 启动状态
[code="java"]
# ps -ef | grep ndbd
root 2373 1 0 18:11 ? 00:00:00 /usr/local/mysql/bin/ndbd
root 2377 1985 0 18:11 pts/0 00:00:00 grep ndbd
[/code]
3 启动SQL节点(10.10.10.44、10.10.10.45)
# 启动 SQL 节点
service mysqld start

# 关闭 SQL 节点
service mysqld stop

# 重启 SQL 节点
service mysqld restart

# 检验mysql是否运行
service mysqld status

# 启动命令行窗口
/usr/local/mysql/bin/mysql -u root –p


:shock: 留几个小坑给大家,譬如mysql的密码设置.譬如关闭集群.

程序猿行业技术生活交流群:181287753(指尖天下),欢迎大伙加入交流学习。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值