MySQL Cluster (二) --- 单机搭建集群环境

运行环境:
centos6.1
Mysql版本:

mysql-cluster-gpl-7.2.6-linux2.6-x86_6

下载地址: http://cdn.mysql.com/Downloads/MySQL-Cluster-7.2/mysql-cluster-gpl-7.2.6-linux2.6-x86_64.tar.gz


对于这第一个MySQL数据库的集群,它由1个单一的MySQL服务引擎(mysqlds)、两个数据节点(ndbd)和一个单一的管理节点(ndb_mgmd)共同组成,所有的节点都运行在同一台主机上。

为配置文件和数据文件创建必要的存储文件夹,分别要建立如下几个文件夹:

① /home/mysql/my_cluster
② /home/mysql/my_cluster/ndb_data
③ /home/mysql/my_cluster/mysqld_data
④ /home/mysql/my_cluster/mysqld_data/mysql
⑤ /home/mysql/my_cluster/mysqld_data/ndbinfo
⑥ /home/mysql/my_cluster/conf


具体安装步骤:
1. 添用加户与组mysql

  1. shell> groupadd mysql  
  2. shell> useradd -r -d /home/mysql -g mysql mysql  

2. 切换到mysql用户权限下

  1. shell> su - mysql  

3. 下载mysql cluster

  1. shell> wget http://cdn.mysql.com/Downloads/MySQL-Cluster-7.2/mysql-cluster-gpl-7.2.6-linux2.6-x86_64.tar.gz  
  2. shell> tar -zxvf mysql-cluster-gpl-7.2.6-linux2.6-x86_64.tar.gz  
  3. shell> ln -s mysql-cluster-gpl-7.2.6-linux2.6-x86_64 mysqlc  

4. 安装mysql cluster

  1. shell> cd /home/mysql  
  2. shell> mkdir my_cluster my_cluster/ndb_data my_cluster/mysqld_data my_cluster/conf  
  3. 在conf目录添加以下2个配置文件(注意:“/home/mysql”需要替换为你自己的用户目录)  
  4.   
  5. my.cnf:  
  6. [mysqld]  
  7. ndbcluster  
  8. datadir=/home/mysql/my_cluster/mysqld_data  
  9. basedir=/home/mysql/mysqlc  
  10. port=5000  
  11.   
  12. config.ini:  
  13. [ndb_mgmd]  
  14. hostname=localhost  
  15. datadir=/home/mysql/my_cluster/ndb_data  
  16. NodeId=1  
  17. [ndbd default]  
  18. noofreplicas=2  
  19. datadir=/home/mysql/my_cluster/ndb_data  
  20. [ndbd]  
  21. hostname=localhost  
  22. NodeId=3  
  23. [ndbd]  
  24. hostname=localhost  
  25. NodeId=4  
  26. [mysqld]  
  27. NodeId=50  
  28.   
  29. 安装  
  30. shell> cd /home/mysql/mysqlc  
  31. shell> scripts/mysql_install_db --no-defaults --datadir=/home/mysql/my_cluster/mysqld_data/  

5. 运行

进程需要启动management node, data nodes 与 MySQL Server

  1. shell> cd ../my_cluster/  
  2. ① 最先启动的是管理节点(ndb_mgmd)  
  3. shell> /home/mysql/mysqlc/bin/ndb_mgmd -f conf/config.ini --initial --configdir=/home/mysql/my_cluster/conf/  
  4. ② 启动第一个数据节点(ndbd)  
  5. shell> /home/mysql/mysqlc/bin/ndbd -c localhost:1186  
  6. ③ 启动第二个数据节点(ndbd)  
  7. shell> /home/mysql/mysqlc/bin/ndbd -c localhost:1186  
  8.   
  9. 在启动MySQL服务引擎(mysqld)之前,一定要等到所有的数据节点全部启动完毕,然后才能启动MySQL服务引擎。查看数据节点是否启动完毕的命令语句如下:  
  10. shell> /home/mysql/mysqlc/bin/ndb_mgm -e show  
  11. 显示结果:  
  12. Connected to Management Server at: localhost:1186  
  13. Cluster Configuration  
  14. ---------------------  
  15. [ndbd(NDB)]     2 node(s)  
  16. id=3    @127.0.0.1  (mysql-5.5.22 ndb-7.2.6, Nodegroup: 0, Master)  
  17. id=4    @127.0.0.1  (mysql-5.5.22 ndb-7.2.6, Nodegroup: 0)  
  18.   
  19.   
  20. [ndb_mgmd(MGM)] 1 node(s)  
  21. id=1    @127.0.0.1  (mysql-5.5.22 ndb-7.2.6)  
  22.   
  23.   
  24. [mysqld(API)]   1 node(s)  
  25. id=50 (not connected, accepting connect from any host)  
  26.   
  27. ④ 启动MySQL服务引擎  
  28. shell> /home/mysql/mysqlc/bin/mysqld --defaults-file=conf/my.cnf &  


启动成功后的进程如下:

  1. mysql     1738  0.1  0.5 575408  5752 ?        Ssl  00:58   0:14 /home/mysql/mysqlc/bin/ndb_mgmd -f conf/config.ini --initial --configdir=/home/mysql/my_cluster/conf/  
  2. mysql     1751  0.0  0.0 101116   660 ?        Ss   00:58   0:00 /home/mysql/mysqlc/bin/ndbd -c localhost:1186  
  3. mysql     1752  0.3 31.5 1048328 320704 ?      Sl   00:58   0:41 /home/mysql/mysqlc/bin/ndbd -c localhost:1186  
  4. mysql     1790  0.0  0.0 101116   708 ?        Ss   00:58   0:00 /home/mysql/mysqlc/bin/ndbd -c localhost:1186  
  5. mysql     1791  0.3 40.9 1048328 417228 ?      Sl   00:58   0:38 /home/mysql/mysqlc/bin/ndbd -c localhost:1186  
  6. mysql     1835  0.0  5.4 886712 55296 pts/0    Sl   00:59   0:11 /home/mysql/mysqlc/bin/mysqld --defaults-file=conf/my.cnf  
  7. mysql     1897  0.0  0.1 198204  2032 pts/1    S+   01:00   0:00 /home/mysql/mysqlc/bin/mysql -h 127.0.0.1 -P 5000 -u root  



6. 测试

连接到MySQL服务器,并确认使用MySQL集群(NDB)可以创建表① 连接到MySQL服务器:

  1. shell> /home/mysql/mysqlc/bin/mysql -h 127.0.0.1 -P 5000 -u root  
  2. mysql> create database clusterdb;use clusterdb;  
  3. mysql> create table simples (id int not null primary key) engine=ndb;  
  4. mysql> insert into simples values (1),(2),(3),(4);  
  5. mysql> select * from simples;  
  6. +----+  
  7. | id |  
  8. +----+  
  9. | 3 |  
  10. | 1 |  
  11. | 2 |  
  12. | 4 |  
  13. +----+  

7. 停止服务

MySQL服务必须手动停止,服务停止后,其他集群节点的停止可以使用管理节点(ndb_mgm)来

  1. shell> /home/mysql/mysqlc/bin/mysqladmin -u root -h 127.0.0.1 -P 5000 shutdown  
  2. shell> /home/mysql/mysqlc/bin/ndb_mgm -e shutdown  



 原文地址:http://blog.csdn.net/chengfei112233/article/details/7700559/

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章