搭建mysql叢集

來源:互聯網
上載者:User

標籤:搭建mysql叢集

一、搭建mysql叢集
叢集/群集:一組伺服器提供相同的服務

***以下方面只適用於ndbcluster儲存引擎,其它類型請繞行!!!!!***

1.mysql叢集中伺服器的角色
資料節點 (ndbd):儲存表裡的資料
SQL節點(sql):使用者訪問資料的介面、執行sql語句,不儲存資料
管理節點(mgmd):管理叢集中的所有主機
用戶端 (client):訪問資料  
      
大致拓撲圖:
               client(172.30.13.X)
          
                  mgm     193  

    sql           sql         ndbd       ndbd     
     191             192             8            9     

2.流程思路:
(1).在所有主機上安裝提供機MySQL叢集服務的軟體包
(2).給每種角色的主機編寫對應的設定檔  config.ini    my.cnf
    
3、在所有伺服器上卸載mysql資料庫服務軟體,這裡需要安裝一個專用的mysql軟體,主要目的是為了避免軟體衝突
service mysql  stop
rpm  -qa | grep  -i  mysql
rpm -e  --nodeps  MySQL-server    MySQL-shared      MySQL-shared-compat    MySQL-embedded
MySQL-client        MySQL-devel     MySQL-test

rm -rf  /etc/my.cnf
ls /var/lib/mysql/
rm   /var/lib/mysql/*

4、在所有伺服器上安裝提供叢集服務的軟體包
MySQL-Cluster-gpl-7.3.3-1.el6.x86_64.rpm-bundle.tar

ndbd進程 (ndbd節點)   mysql服務(sql節點)   mgmd進程(管理節點)

tar -xvf MySQL-Cluster-gpl-7.3.3-1.el6.x86_64.rpm-bundle.tar
rpm -Uvh  MySQL-Cluster-*.rpm
rpm  -qa  | grep   -i   "mysql-cluster"


5、組態管理節點 ( 193 )
  管理叢集中的所有主機,運行管理進程,這裡需要在管理節點伺服器建立一個config.ini檔案,裡面定義了設定主機的角色和運行參數;
  (啟動管理進程時載入自己的配置config.ini)
[ndbd  default]   資料節點公用配置
[ndb_mgmd]       設定管理主機
[ndbd]            指定資料節點主機
[mysqld]          指定sql節點


vim  /etc/config.ini
[ndbd  default]
NoOfReplicas=2    //資料節點伺服器個數
DataMemory=80M      //資料緩衝            
IndexMemory=18M  
[ndb_mgmd]                  
nodeid=1              //管理節點編號,範圍1-50        
hostname=172.30.13.193        
datadir=/var/log/mysql-cluster  //管理資訊存放目錄
[ndbd]
nodeid=8                     
hostname=172.30.13.8
datadir=/var/log/mysql-cluster/data  //在資料節點上建立
[ndbd]
nodeid=9                     
hostname=172.30.13.9
datadir=/var/log/mysql-cluster/data
[mysqld]      
nodeid=20                      
hostname=172.30.13. 191
[mysqld]      
nodeid=30                      
hostname=172.30.13.192

mkdir -p /var/log/mysql-cluster

6、配置資料節點(8 、9)
 (運行ndbd進程     /etc/my.cnf)
mkdir  -p  /var/log/mysql-cluster/data
vim  /etc/my.cnf
[mysqld]
datadir=/var/log/mysql-cluster/data      
ndb-connectstring=172.30.13.193   //管理主機ip
ndbcluster          //儲存引擎            
[mysql_cluster]
ndb-connectstring=172.30.13.193  //誰來管理叢集


7、配置  sql 節點  (191、192)
(運行資料庫服務  /etc/my.cnf)
vim   /etc/my.cnf
[mysqld]
ndbcluster  
ndb-connectstring=172.30.13.193    //指定管理主機                
default-storage-engine=ndbcluster  
[mysql_cluster]
ndb-connectstring=172.30.13.193


8、啟動每種角色主機上對應的進程
(1  啟動管理主機上的管理進程
ndb_mgmd  -f   /etc/config.ini
netstat  -utnlap  |   grep  :1186
ndb_mgm  登陸管理介面ndbcluster

(2  啟動資料節點上的資料進程
[[email protected] data]# ndbd
2014-11-11 22:38:55 [ndbd] INFO     -- Angel connected to ‘172.30.13.193:1186‘
2014-11-11 22:38:55 [ndbd] INFO     -- Angel allocated nodeid: 8
   
(3 、啟動sql 節點上的MySQL服務
service   mysql  start
(4、在sql節點上設定授權,在其它用戶端驗證
cat /root/.mysql_secret
mysql  -uroot -pxxxxx
mysql>grant  all  on  *.*  to  [email protected]"%"  identified  by  "123";


9、在管理節點上查看所有主機的狀態
ndb_mgm
show
(如果出現如下內容,則實驗成功)
Cluster Configuration
---------------------
[ndbd(NDB)]    2 node(s)
id=28    @192.168.5.28  (mysql-5.6.14 ndb-7.3.3, Nodegroup: 0, *)
id=29    @192.168.5.29  (mysql-5.6.14 ndb-7.3.3, Nodegroup: 0)

[ndb_mgmd(MGM)]    1 node(s)
id=1    @192.168.5.25  (mysql-5.6.14 ndb-7.3.3)

[mysqld(API)]    2 node(s)
id=26    @192.168.5.26  (mysql-5.6.14 ndb-7.3.3)
id=27    @192.168.5.27  (mysql-5.6.14 ndb-7.3.3)


本文出自 “劉福” 部落格,請務必保留此出處http://liufu1103.blog.51cto.com/9120722/1656836

搭建mysql叢集

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.