實驗需求:部署MySQL叢集,減少資料庫單點故障。
實驗方案:準備5台伺服器,mgmd(192.168.100.1)作為管理節點,sqlA(192.168.100.2)和sqlB(192.168.100.3)作為SQL節點,ndbA(192.168.100.4)和ndbB(192.168.100.5)作為資料節點,這5個節點構成MySQL Cluster體系
MySQL Cluster 備份與恢複
MySQL Cluster安裝配置
MySQL Cluster 3台機器搭建叢集環境 DOC
MySQL Cluster7.2線上增加資料節點存在重大弊端
實施過程:
一.公用配置
1.所有節點上安裝MySQL叢集軟體
1.1所有節點卸載衝突包
官方提供的MySQL-Cluster相關軟體包已整合資料庫服務端/用戶端程式,因此可直接用來替換普通的MySQL服務端/用戶端程式。如果已安裝有普通版的mysql-server、mysql、MySQL-server、MySQL-client包,請先將其卸載(若沒有則忽略):
# service mysql stop
# chkconfig mysql off
# rpm -e --nodeps MySQL-server MySQL-client MySQL-shared MySQL-embedded MySQL-test MySQL-devel
1.2清理殘餘設定檔
mv /etc/my.cnf /etc/my.cnf.bak
useradd mysql
1.3 所有節點安裝MySQL-Cluster相關軟體包
# tar xvf MySQL-Cluster-gpl-7.3.3-1.el6.x86_64.rpm-bundle.tar
MySQL-Cluster-shared-gpl-7.3.3-1.el6.x86_64.rpm
MySQL-Cluster-shared-compat-gpl-7.3.3-1.el6.x86_64.rpm
MySQL-Cluster-server-gpl-7.3.3-1.el6.x86_64.rpm
MySQL-Cluster-client-gpl-7.3.3-1.el6.x86_64.rpm
MySQL-Cluster-test-gpl-7.3.3-1.el6.x86_64.rpm
MySQL-Cluster-devel-gpl-7.3.3-1.el6.x86_64.rpm
MySQL-Cluster-embedded-gpl-7.3.3-1.el6.x86_64.rpm
rpm -Uvh MySQL-Cluster-*.rpm
2.在SQL節點(sqlA、sqlB)伺服器上,修改MySQL資料庫的root密碼
3.SQL節點添加授權資料庫使用者,方便用戶端訪問
mysql>grant all on*.*to'root'@'192.168.100.%'identifiedby'123456';
二.組態管理節點 mgmd (192.168.100.1)
1.建立工作資料夾
# mkdir -p /var/log/mysql-cluster
2.建立設定檔
[ndbd default]:為所有的資料節點指定預設配置。
[ndbd]:指定某一個資料節點的配置。
[ndb_mgmd default]:為所有的管理節點指定預設配置。
[ndb_mgmd]:指定某一個管理節點的配置。
[mysqld default]:為所有的SQL節點指定預設配置。
[mysqld]:指定某一個SQL節點的配置。
# vim /etc/config.ini
[ndbd default]
NoOfReplicas=2//保留2份資料拷貝
DataMemory=80M //資料緩衝大小
IndexMemory=18M //索引緩衝大小
[ndb_mgmd]
nodeid=1//第1個管理節點的ID號
hostname=192.168.100.1//此管理節點的地址
datadir=/var/log/mysql-cluster //此管理節點的工作目錄
[mysqld]
nodeid=2//第1個SQL節點的ID號
hostname=192.168.100.2 //第1個SQL節點的地址
[mysqld]
nodeid=3//第2個SQL節點的ID號
hostname=192.168.100.3 //第2個SQL節點的地址
[ndbd]
nodeid=4//第1個資料節點的ID號
hostname=192.168.100.4 //第1個資料節點的地址
datadir=/mysql-cluster/data //第1個資料節點的工作目錄,需建立
[ndbd]
nodeid=5//第2個資料節點的ID號
hostname=192.168.100.5//第2個資料節點的地址
datadir=/mysql-cluster/data //第2個資料節點的工作目錄,需建立
更多詳情見請繼續閱讀下一頁的精彩內容: