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/

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