linux下mysql集群搭建

linux下mysql集群搭建

第1章  環境說明
1.1 系統說明
采用三臺linux伺服器,均采用centos6.2版本,最小化安裝系統。
1.2 軟件說明
資料庫管理節點,資料庫節點均采用:
mysql-cluster-gpl-7.0.8a-linux-i686-glibc23.tar.gz
1.3 拓撲結構說明
mysql集群有如下三層:
應用程式層:負責與mysql伺服器通信的各種應用程式。
Mysql伺服器層:處理SQL命令,並與NDB存儲引擎通信和Mysql伺服器。
NDB集群組件層:NDB集群組件有時也稱數據節點,負責處理查詢,然後將結果返回給mysql伺服器。拓撲結構圖如下所示:

 
mysql-cluster:192.168.254.200
NDB節點:IP地址:192.168.254.221
NDB節點:IP地址:192.168.254.222
SQL節點:IP地址:192.168.254.221
SQL節點:IP地址:192.168.254.222
第2章  Mysql管理節點安裝
2.1 依賴包安裝
yum install wget gcc gcc-c++ make cmake ncurses-devel libtool zilib-devel –y
註:此處cmake是mysql 5.5之後版本所必需的,5.5之後的版本將cmake取代configure;
2.2 創建mysql用戶
useradd -s /sbin/nologin -M mysql
2.3 編譯安裝mysql管理節點
tra xvf mysql-cluster-gpl-7.2.8.tar.gz
cd mysql-cluster-gpl-7.2.8
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_EXTRA_CHARSETS:STRING=utf8,gbk \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DENABLED_LOCAL_INFILE=1 \
-DMYSQL_DATADIR=/data/mysql/ \
-DMYSQL_USER=mysql \
-DMYSQL_TCP_PORT=3306

make && make install

2.4 修改配置文件
mkdir –p /data/mysql-cluster/ 
vi /data/mysql-cluster/config.ini
[ndbd default]
NoOfReplicas=2
DataMemory=80M
IndexMemory=18M  
[ndb_mgmd]
Id=1
Hostname=192.168.254.200  
datadir=/data/mysql/
[ndbd]
Id=2
Hostname=192.168.254.221  
datadir=/data/mysql/

[ndbd]
Id=3
Hostname=192.168.254.222
datadir=/data/mysql/
[MYSQLD]
[MYSQLD]
2.5 啟動管理節點
/usr/local/mysql/bin/ndb_mgmd -f /data/mysql-cluster/config.ini
如果啟動成功則會顯示:
MySQL Cluster Management Server mysql-5.5.27 ndb-7.2.8
 
第3章  Mysql運行節點安裝
3.1 安裝說明
Mysql節點安裝過程請參考管理節點安裝;
3.2 配置文件修改
cp support-files/my-medium.cnf /etc/my.cnf
cp support-files/mysql.server /etc/init.d/mysqld
chmod 755 /etc/init.d/mysqld
3.3 初始化mysql
bash scripts/mysql_install_db –user=mysql –basedir=/usr/local/mysql –datadir=/data/mysql/
3.4 啟動mysql節點服務
/usr/local/mysql/bin/ndbd –initial
/etc/init.d/mysqld start

第4章  管理、測試說明
4.1 管理節點狀態
進入管理節點工作臺
/usr/local/mysql/bin/ndb_mgmd
運行show 顯示當前狀態
 
即表明,集群運行正常。
4.2 Mysql節點狀態
啟動ndbd服務即會產生如下進程;
 
4.3 測試數據同步
221(master)上執行如下操作:
 
然後登錄222mysql,查看狀態:
 
同樣在222上執行以下操作:
 
然後在221上查看同步結果:
 
以上結果即表明:集群運行成功,可以保證資料庫主-輔同步。

然後將222的網絡服務斷掉,查看管理節點;
 
啟動222網絡服務,運行/usr/local/mysql/bin/ndbd –initial;
 
然後查看管理節點服務;
 
在斷掉一個服務的情況下仍可繼續使用mysql服務。
4.4 節點管理
如果修改過config.ini文件,則執行下面的語句使得配置文件生效;/usr/local/mysql/bin/ndb_mgmd -f /data/mysql-cluster/config.ini  –reload
滾動重啟舊的數據存儲節點服務(滾動重啟,不能所有節點同時重啟,如果同時停止,資料庫前端查詢就會出現錯誤);
ndb_mgm> “id” (restart;stop;start)
重啟,停止,啟動,”id”的節點服務。

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *