mysql服務器集群配置方法
mysql-cluster安裝
系統 centos5.1 32位(如何是64位下相應64位的rpm包)
http://dev.mysql.com/get/downloads/mysql-cluster-7.0和下面的包名對應
一共有5個包:
mysql-cluster-gpl-client-7.1.3-1.rhel5.i386.rpm
mysql-cluster-gpl-management-7.1.3-1.rhel5.i386.rpm
mysql-cluster-gpl-server-7.1.3-1.rhel5.i386.rpm
mysql-cluster-gpl-storage-7.1.3-1.rhel5.i386.rpm
mysql-cluster-gpl-tools-7.1.3-1.rhel5.i386.rpm
3台centos 服務器:
管理節點(ndb_mgmd):192.168.1.14
sql節點1(mysqld): 192.168.1.15
sql節點1(mysqld): 192.168.1.11
數據節點(ndbd): 192.168.1.15
數據節點(ndbd): 192.168.1.11
//------------------------------------------------------------------以這個開始(七台機子都這個操做)
首先要做的是把這七台機子的防火牆關掉(如何不關的話每個節點都連不通)
關閉防火牆:
service iptables stop;
flushing firewall rules: [ ok ]
setting chains to policy accept: filter [ ok ]
unloading iptables modules: [ ok ]
如何這樣關閉成功;
創建文件夾:
存儲節點:mkdir /var/lib/mysql/data
管理結點:mkdir /var/lib/mysql-cluster
sql結點:要不要都行
給兩個文件賦權限:
chmod -r 1777 /var/lib/mysql
chmod -r 1777 /var/lib/ mysql-cluster
//------------------------------------------------------------------以這個結束
管理節點安裝:
mysql-cluster-gpl-management-7.0.9-0.rhel4.x86_64.rpm;
mysql-cluster-gpl-tools-7.0.9-0.rhel4.x86_64.rpm;
rpm –ivh mysql-cluster-gpl-management-7.0.9-0.rhel4.x86_64.rpm
rpm –ivh mysql-cluster-gpl-tools-7.0.9-0.rhel4.x86_64.rpm
vi /var/lib/mysql-cluster/config.ini
[ndbd default]
noofreplicas=2
datamemory=80m
indexmemory=18m
[tcp default]
sendbuffermemory=2m
receivebuffermemory=2m
[ndb_mgmd default]
portnumber=1186
datadir=/var/lib/mysql-cluster
[ndb_mgmd]
id=1
hostname= 192.168.1.14
[ndbd]
id=2
hostname=192.168.1.15
datadir=/var/lib/mysql/data
[ndbd]
id=3
hostname= 192.168.1.11
datadir=/var/lib/mysql/data
[mysqld]
id=14
hostname=192.168.1.15
[mysqld]
id=15
hostname=192.168.1.11
[mysqld]
id=16
//啟動管理節點
ndb_mgmd -f /var/lib/mysql-cluster/config.ini
/*********************以上是安裝管理節點**************************/
存儲節點安裝
mysql-cluster-gpl-storage-7.0.9-0.rhel4.x86_64.rpm
rpm –ivh mysql-cluster-gpl-storage-7.0.9-0.rhel4.x86_64.rpm
vi /etc/my.cnf //確認添加修改了如下部分
[mysqld]
max_connections = 100
slow_query_log = /var/lib/mysql-cluster/slow_query.log
long_query_time = 1
datadir = /var/lib/mysql-cluster
ndbcluster
ndb-connectstring=192.168.1.14
[mysql_cluster]
ndb-connectstring= 192.168.1.14
初始化啟動數據節點的數據庫,
注意://ndbd –initial 不能同時在所有數據節點機器上執行,否者會刪除所有數據.即該命令只能在其中一台數據節點中執行
ndbd –initial
如何這樣:
[ndbd] info -- configuration fetched from '10.50.8.8:1186', generation: 1
sql節點的安裝:
mysql-cluster-gpl-client-7.0.9-0.rhel4.x86_64.rpm
mysql-cluster-gpl-server-7.0.9-0.rhel4.x86_64.rpm
rpm –ivh mysql-cluster-gpl-server-7.0.9-0.rhel4.x86_64.rpm
rpm –ivh mysql-cluster-gpl-client-7.0.9-0.rhel4.x86_64.rpm --nodeps –force紅色的一定寫上不然安不上.
vi /etc/my.cnf //確認添加修改了如下部分
[mysqld]
ndbcluster
ndb-connectstring=192.168.1.14:1186
[mysql_cluster]
ndb-connectstring=192.168.1.14:1186
啟動sql結點 我用這個 mysqld_safe &沒有錯
執行後
100308 13:46:32 mysqld_safe logging to '/var/lib/mysql/localhost.localdomain.err'.
100308 13:46:32 mysqld_safe starting mysqld daemon with databases from /var/lib/mysql
sql結點就成功了
在管理節點的機子下(192.168.1.14)
ndb_mgm
ndb_mgm> show
connected to management server at: localhost:1186
cluster configuration
---------------------
[ndbd(ndb)] 2 node(s)
id=2 @192.168.1.15 (mysql-5.1.44 ndb-7.1.3, nodegroup: 0, master)
id=3 @192.168.1.11 (mysql-5.1.44 ndb-7.1.3, nodegroup: 0)
[ndb_mgmd(mgm)] 1 node(s)
id=1 @192.168.1.14 (mysql-5.1.44 ndb-7.1.3)
[mysqld(api)] 3 node(s)
id=14 @192.168.1.15 (mysql-5.1.44 ndb-7.1.3)
id=15 @192.168.1.11 (mysql-5.1.44 ndb-7.1.3)
id=16 (not connected, accepting connect from any host)
如何出現上面的信息就成功了.
出現not connected, accepting connect from any host是sql節點沒有啟來。
出現mysql-5.1.39 ndb-7.0.9,staring nodegroup: 0 是說明存儲節點沒有啟來。如何你的配置都沒有錯的話(那是你的防火牆沒有關)
/*********下面是添加節點、重啟節點這些操作******************/
動態更新節點
關閉管理節點我這裡的管理節點是1
ndb_mgm>1 stop
退出ndb_mgm
shell>vi /var/lib/mysql-cluster/config.ini
如果我們加一個ndbd節點
[ndbd]
id=6
hostname= 10.50.8.13
datadir=/var/lib/mysql/data
保存退出
ndb_mgmb –f config.ini –reload
2010-03-08 13:47:15 [mgmtsrvr] info -- ndb cluster management server. mysql-5.1.39 ndb-7.0.9b
2010-03-08 13:47:16 [mgmtsrvr] info -- reading cluster configuration from 'config.ini'
就從啟成功了
把每個節點重啟一下
ndb節點在管理節點上執行 ndb_mgm>2 restart (如何你安上面安裝的話應該知道進入ndb_mgm裡)
sql 節點在sql節點上 執行 service myql stop mysqld_save;
都做完了在管理節點上 show一下看看結果。
1. 管理節點啟動:ndb_mgmd ndb_mgmd -f /var/lib/mysql-cluster/config.ini ndb_mgmd –f config.ini –reload
2. 數據節點啟動:ndbd啟動 ndb_mgm>2 restart 數據節點重啟
3. sql節點啟動: mysqld_safe & 關閉:service mysql stop mysqld_save