mysql集群安装(centos)

永不放弃,一切皆有可能!!!

只为成功找方法,不为失败找借口!

mysql集群安装(centos)

mysql cluster :


1. 基于NDB Cluster 的分布式数据库系统

2. mysql集群中各服务器节点不共享数据

3. 在mysql cluster中节点指的是进程,区别于其他的集群中节点指的是计算机的情况, 因而在单台计算机上可以有任意多的节点

4. 三种节点: 1)管理节点: 管理cluster内其他节点; 包括启动,停止, 备份,配置等; 

            在启动其他节点前需要先启动管理节点

            管理节点不应是一台,否则如果宕机会导致集群不可用

       2)数据节点: 保存cluster数据, 

            如果有两个副本,每个副本有两个片段,那么就有4个数据节点,依此类推

       3)sql节点: 用于访问cluster中数据

  在最低的mysql cluster配置中,至少应该有三个节点

 5. 启动方式:

管理节点: ndb_mgmd

数据节点: ndbd

sql节点: mysqld_ndbcluster  ,更改my.cnf配置文件后可用mysqld启动,下面会有说明

 6. 默认端口:

管理节点: 1186

数据节点: 2202

准备:


1. mysql下载链接:  http://mysql.mirror.kangaroot.net/Downloads/MySQL-Cluster-7.3/

 使用 Pietty工具连接linux

  和 winscp工具进行文件拷贝

2. 3台服务器: centos 6.4, 网络连接:bridged

  192.168.1.136 : 管理节点

  192.168.1.95: 数据节点

    192.168.1.62: sql节点

3. 安装位置: /usr/local/mysql

    数据位置: /usr/local/mysql/data

    日志位置: /usr/local/mysql/log

4. 相关centos指令:

复制代码
查看centos版本: cat /etc/redhat-release

查看是否已安装mysql: rpm -qa | grep mysql

查看服务状态: service mysql staus

关闭当前sql服务: /etc/init.d/mysqld stop
启动当前sql服务: /etc/init.d/mysqld start
重启sql服务:     /etc/init.d/mysqld restart

查看进程是否关闭: ps -ef | grep mysql

卸载已安装的mysql: rpm -e --allmatches --nodeps mysql mysql-server
删除相关目录: rm -rf /usr/local/mysql
              rm -rf /var/mysql
              rm -rf /var/lib/mysql
              
组和用户添加: groupadd mysql
              useradd mysql -g mysql
              

解压: tar -zxvf mysql-cluster-gpl-7.3.4-linux-glibc2.5-i686.tar.gz

重命名文件夹: mv mysql-cluster-gpl-7.3.4-linux-glibc2.5-i686 mysql

更改文件或文件夹所有者: chown mysql:mysql mysql   (mysql: mysql中前面为用户,后面为组)

运行脚本: scripts/mysql_install_db --user=mysql  (--user=mysql指示用户身份为mysql组)

创建文件夹: mkdir /var/lib/mysql-cluster(加上-p时如果目录不存在则新建一个目录)

创建或者编辑文件: vi + /var/lib/mysql-cluster/config.ini
    vi filename :打开或新建文件,并将光标置于第一行首 
    vi +n filename :打开文件,并将光标置于第n行首 
    vi + filename :打开文件,并将光标置于最后一行首 
    vi +/pattern filename:打开文件,并将光标置于第一个与pattern匹配的串处 
    vi -r filename :在上次正用vi编辑时发生系统崩溃,恢复filename 
    vi filename....filename :打开多个文件,依次进行编辑 
    
 永久关闭防火墙:chkconfig --level 35 iptables off
 查看防火墙状态: /etc/init.d/iptables status
复制代码

安装:


1. 安装前检查是否已经安装,如已安装卸载重新安装

复制代码
查看是否已安装mysql: rpm -qa | grep mysql

查看服务状态: service mysql staus

关闭当前sql服务: /etc/init.d/mysqld stop
启动当前sql服务: /etc/init.d/mysqld start
重启sql服务:     /etc/init.d/mysqld restart

查看进程是否关闭: ps -ef | grep mysql

卸载已安装的mysql: rpm -e --allmatches --nodeps mysql mysql-server
删除相关目录: rm -rf /usr/local/mysql
              rm -rf /var/mysql
              rm -rf /var/lib/mysql
复制代码

2. 管理节点安装

 在192.168.1.136 上安装

[root@wish ~]# groupadd mysql  //添加组
[root@wish ~]# useradd mysql -g mysql //添加用户
[root@wish ~]# cd /usr/local
[root@wish local]# tar -zxvf mysql-cluster-gpl-7.3.4-linux-glibc2.5-i686.tar.gz //解压
[root@wish local]# mv mysql-cluster-gpl-7.3.4-linux-glibc2.5-i686 mysql //重命名
[root@wish local]# chown mysql:mysql mysql //更改文件夹所有者
[root@wish local]# cd mysql
[root@wish mysql]# scripts/mysql_install_db --user=mysql //安装


3.管理节点配置

复制代码
[root@wish mysql]# cd ~
[root@wish ~]# mkdir /var/lib/mysql-cluster
[root@wish ~]# mkdir  /usr/local/mysql/log
[root@wish ~]# cd /var/lib/mysql-cluster
[root@wish mysql-cluster]# vi + /var/lib/mysql-cluster/config.ini
[root@wish mysql-cluster]# vi + /var/lib/mysql-cluster/config.ini
复制代码

config.ini文件内容如下:

复制代码
[NDBD DEFAULT]
NoOfReplicas=1
[NDB_MGMD]
#设置管理节点服务器 
HostName=192.168.1.136
DataDir=/usr/local/mysql/data

[NDBD]
#设置存储节点服务器(NDB节点)
HostName=192.168.1.95
DataDir=/usr/local/mysql/data

#[NDBD]
#第二个NDB节点 


[MYSQLD]
#设置SQL节点服务器 
HostName=192.168.1.62

#[MYSQLD]
#第二个SQL节点 

复制代码

启动管理节点:

/usr/local/mysql/bin/ndb_mgmd -f /var/lib/mysql-cluster/config.ini  //-f表示后后面的参数是启动的配置参数文件

 我们看到管理节点的端口1186已被监听:

 

关闭管理节点:

[root@wish ~]# /usr/local/mysql/bin/ndb_mgm -e shutdown
Connected to Management Server at: localhost:1186 1 NDB Cluster node(s) have shutdown. Disconnecting to allow management server to shutdown.

4.  数据节点和sql节点安装

 1) 192.168.1.95: 数据节点, 192.168.1.62:sql节点  上分别以上面同样的方式新建用户和组

groupadd mysql
useradd mysql -g mysql

 2) 将管理节点/usr/local/mysql 目录复制至数据节点和节点  


5. sql节点配置:

[root@localhost mysql]# cp support-files/my-default.cnf /etc/my.cnf
[root@localhost mysql]# cp support-files/mysql.server /etc/init.d/mysqld
复制代码
cd /etc
vi my.cnf


添加如下内容:
[MYSQLD]
ndbcluster
ndb-connectstring=192.168.1.136
ndb-connectstring=192.168.1.136
[NDB_MGM]
connect-string=192.168.1.136
复制代码

  sql节点启动: service mysqld start(需启动管理节点)

[root@localhost mysql]# service mysqld start
Starting MySQL............................................................................................................................. SUCCESS!

  sql节点关闭: /usr/local/mysql/bin/mysqladmin -uroot shutdown


6. 数据节点配置

[root@localhost mysql]# cp support-files/my-default.cnf /etc/my.cnf
[root@localhost mysql]# cp support-files/mysql.server /etc/init.d/mysqld
复制代码
cd /etc/
vi my.cnf

添加:

[MYSQLD]
ndbcluster
ndb-connectstring=192.168.1.136
[MYSQL_CLUSTER]
ndb-connectstring=192.168.1.136
[NDB_MGM]
connect-string=192.168.1.136
复制代码

 数据节点启动: 

 /usr/local/mysql/bin/ndbd --initial ( 需要启动管理节点)
[root@localhost support-files]# /usr/local/mysql/bin/ndbd --initial
2014-06-22 17:31:08 [ndbd] INFO     -- Angel connected to '192.168.1.136:1186'
2014-06-22 17:31:08 [ndbd] INFO     -- Angel allocated nodeid: 2

测试:


在数据节点上创建数据库

复制代码
[root@localhost mysql]# /etc/rc.d/init.d/mysqld status 
[root@ localhost ~]# /etc/rc.d/init.d/mysqld start 
[root@ localhost ~]# /usr/local/mysql/bin/mysql –u root -p 
mysql> show database; 
mysql> create database wishtestdb; 
mysql> use wishtestdb; 
mysql> create table table1_test (id varchar(50), name varchar(100)); 
mysql> insert into table1_test(‘abc’, ‘wish’);

 
复制代码


在sql节点上查看数据:

mysql> use wishtestdb; 
mysql> select * from table1_test;
原文地址:https://www.cnblogs.com/liangyihui/p/5886799.html