2010-05-21 33 views
0

我希望有人能夠指出我在哪裏出錯,將具有多個管理節點的MySQL Cluster 7.1集羣化爲3臺服務器。具有多個管理節點的Windows 2008上的MySQL Cluster 7.1

目前,集羣可以與一個管理節點完美協作。這是設置:

  1. 首先服務器只運行ndb_mgmd的一個實例(192.168.66.114)
  2. 二臺服務器運行的ndbd和mysqld的實例(192.168.66.2)
  3. 三服務器運行的實例ndbd和mysqld(192.168.66.113)

我想在集羣中引入第二個管理節點。我有兩個管理服務器完全相同的config.ini。那就是:

[NDBD DEFAULT] 
NoOfReplicas=2 

[MYSQLD DEFAULT] 

[NDB_MGMD DEFAULT] 
PortNumber=1186 
datadir=c:/Progra~1/mysql-cluster-gpl-7.1.3-win32 
LogDestination=FILE:filename=c:/Progra~1/mysql-cluster-gpl-7.1.3-win32/clusterlog.log 


[TCP DEFAULT] 

# Management Server 
[NDB_MGMD] 
Id=1 
HostName=192.168.66.114 
ArbitrationRank=1 

[NDB_MGMD] 
Id=6 
HostName=192.168.66.2 
ArbitrationRank=2 

# Storage Engines 
[NDBD] 
Id=2 
HostName=192.168.66.2 
DataDir= D:/AppData/ndb-7.1.3 

[NDBD] 
Id=3 
HostName=192.168.66.113 
DataDir= D:/AppData/ndb-7.1.3 

[MYSQLD] 
Id=4 
HostName=192.168.66.2 

[MYSQLD] 
Id=5 
HostName=192.168.66.113 

當我開始在兩臺服務器上ndb_mgmd實例,並在ndb_mgm發出show命令,第一管理服務器我看到它開始於:

ndb_mgm> show 
Connected to Management Server at: localhost:1186 
Cluster Configuration 
--------------------- 
[ndbd(NDB)]  2 node(s) 
id=2 @192.168.66.2 (mysql-5.1.44 ndb-7.1.3, Nodegroup: 0, Master) 
id=3 @192.168.66.113 (mysql-5.1.44 ndb-7.1.3, Nodegroup: 0) 

[ndb_mgmd(MGM)] 2 node(s) 
id=1 @192.168.66.114 (mysql-5.1.44 ndb-7.1.3) 
id=6 (not connected, accepting connect from 192.168.66.2) 

[mysqld(API)] 2 node(s) 
id=4 @192.168.66.2 (mysql-5.1.44 ndb-7.1.3) 
id=5 @192.168.66.113 (mysql-5.1.44 ndb-7.1.3) 

ndb_mgm> 

我還沒有第二管理服務器上啓動第二管理實例,因此下面的行是完全行(從上面ndb_mgm輸出):

id=6 (not connected, accepting connect from 192.168.66.2) 

然後,我轉到第二臺管理服務器(192.168.66.2),然後啓動ndb_mgmd。啓動它後,我反對它發出show命令:

ndb_mgm> show 
Cluster Configuration 
--------------------- 
[ndbd(NDB)]  2 node(s) 
id=2 (not connected, accepting connect from 192.168.66.2) 
id=3 (not connected, accepting connect from 192.168.66.113) 

[ndb_mgmd(MGM)] 2 node(s) 
id=1 (not connected, accepting connect from 192.168.66.114) 
id=6 @192.168.66.2 (mysql-5.1.44 ndb-7.1.3) 

[mysqld(API)] 2 node(s) 
id=4 (not connected, accepting connect from 192.168.66.2) 
id=5 (not connected, accepting connect from 192.168.66.113) 

ndb_mgm> 

而不是列出兩個管理節點的連接,第二個管理節點只是報告說,它本身連接。在192.168.66.114讓我們再回到第一個管理服務器仍然給出了相同的輸出前啓動第二ndb_mgmd,在192.168.66.114即唯一的管理節點連接:

ndb_mgm> show 
Connected to Management Server at: localhost:1186 
Cluster Configuration 
--------------------- 
[ndbd(NDB)]  2 node(s) 
id=2 @192.168.66.2 (mysql-5.1.44 ndb-7.1.3, Nodegroup: 0, Master) 
id=3 @192.168.66.113 (mysql-5.1.44 ndb-7.1.3, Nodegroup: 0) 

[ndb_mgmd(MGM)] 2 node(s) 
id=1 @192.168.66.114 (mysql-5.1.44 ndb-7.1.3) 
id=6 (not connected, accepting connect from 192.168.66.2) 

[mysqld(API)] 2 node(s) 
id=4 @192.168.66.2 (mysql-5.1.44 ndb-7.1.3) 
id=5 @192.168.66.113 (mysql-5.1.44 ndb-7.1.3) 

ndb_mgm> 

我花了很多時間,現在想找出有什麼不對,但無濟於事。也請看看第一個管理服務器的ndb_mgmd日誌文件,摘錄其中開始第二ndb_mgmd之後馬上拍攝在192.168.66.2:

2010-05-21 16:05:04 [MgmtSrvr] INFO  -- Reading cluster configuration from 'c:/Progra~1/mysql-cluster-gpl-7.1.3-win32/config.ini' 
2010-05-21 16:05:04 [MgmtSrvr] WARNING -- at line 45: Cluster configuration warning: 
    arbitrator with id 6 and db node with id 2 on same host 192.168.66.2 
    Running arbitrator on the same host as a database node may 
    cause complete cluster shutdown in case of host failure. 
2010-05-21 16:05:04 [MgmtSrvr] INFO  -- Config equal! 
2010-05-21 16:05:04 [MgmtSrvr] INFO  -- Mgmt server state: nodeid 1 reserved for ip 192.168.66.114, m_reserved_nodes 1. 
2010-05-21 16:05:04 [MgmtSrvr] INFO  -- Id: 1, Command port: *:1186 
2010-05-21 16:05:04 [MgmtSrvr] DEBUG -- 127.0.0.1:3727: Connected! 
2010-05-21 16:05:04 [MgmtSrvr] DEBUG -- Sending CONFIG_CHECK_REQ to 1 
2010-05-21 16:05:04 [MgmtSrvr] DEBUG -- Got CONFIG_CHECK_REQ from node: 1. Our generation: 1, other generation: 1, our state: 2, other state: 2, our checksum: 0xc7202738, other checksum: 0xc7202738 
2010-05-21 16:05:04 [MgmtSrvr] DEBUG -- Send CONFIG_CHECK_CONF to node: 1 
2010-05-21 16:05:04 [MgmtSrvr] DEBUG -- Got CONFIG_CHECK_CONF from node: 1 
2010-05-21 16:05:04 [MgmtSrvr] DEBUG -- 192.168.66.113:51051: Connected! 
2010-05-21 16:05:04 [MgmtSrvr] DEBUG -- 192.168.66.2:65492: Connected! 
2010-05-21 16:05:04 [MgmtSrvr] INFO  -- Node 1: Node 6 Connected 
2010-05-21 16:05:04 [MgmtSrvr] INFO  -- Node 6 connected 
2010-05-21 16:05:04 [MgmtSrvr] DEBUG -- Sending CONFIG_CHECK_REQ to 6 
2010-05-21 16:05:04 [MgmtSrvr] DEBUG -- Got CONFIG_CHECK_CONF from node: 6 
2010-05-21 16:05:04 [MgmtSrvr] INFO  -- Node 1: Node 3 Connected 
2010-05-21 16:05:04 [MgmtSrvr] DEBUG -- 192.168.66.113:51051: Stopped! 
2010-05-21 16:05:04 [MgmtSrvr] DEBUG -- 192.168.66.113:51051: Disconnected! 
2010-05-21 16:05:04 [MgmtSrvr] INFO  -- Node 1: Node 2 Connected 
2010-05-21 16:05:04 [MgmtSrvr] DEBUG -- 192.168.66.2:65492: Stopped! 
2010-05-21 16:05:04 [MgmtSrvr] DEBUG -- 192.168.66.2:65492: Disconnected! 
2010-05-21 16:05:05 [MgmtSrvr] INFO  -- Node 3: Prepare arbitrator node 1 [ticket=16800008ebadb656] 
2010-05-21 16:05:05 [MgmtSrvr] INFO  -- Node 2: Started arbitrator node 1 [ticket=16800008ebadb656] 

就個人而言,我覺得從上面下面兩行輸出有意思:

2010-05-21 16:05:04 [MgmtSrvr] DEBUG -- 192.168.66.2:65492: Stopped! 
2010-05-21 16:05:04 [MgmtSrvr] DEBUG -- 192.168.66.2:65492: Disconnected! 

沒有錯誤消息,雖然,它只是說停止與斷開。

任何人都可以弄清楚我的設置有什麼問題嗎?任何幫助將非常感激。

回答

0

夥計們,這個人實際上已經修好了。不知道爲什麼,但今天晚些時候,第二個管理節點開始連接,沒有我的干預。

1

http://dev.mysql.com/tech-resources/articles/mysql-cluster-for-two-servers.html

上述鏈路是一步一步引導我用於實現我的集羣設置。本文適用於基於Linux的安裝,但對於Windows安裝程序,步驟幾乎完全相同。 Windows的命令行語法當然不同。您需要處理的唯一區別是將MySQL集羣文件放在Windows盒子上的適當位置並手動安裝服務。一旦你完成了,沒有什麼區別 - 全部都在配置文件中完成。 對於初學者,您可以複製安裝文件,然後從命令行啓動所有內容。通過這種方式,您可以輕鬆排查可能出現的任何問題,因爲您會在命令提示符窗口中看到錯誤。否則,您需要首先配置日誌以查看日誌,以瞭解發生了什麼。請注意,你必須成爲魔術師才能從第一次嘗試中獲得一切工作,因此請將開始的記錄留給初學者,直接在命令提示符窗口中查看羣集服務的輸出。 如果你設法讓所有的東西都能正常工作,你應該繼續在Windows下安裝「守護進程」作爲服務。如果需要幫助,我可以幫助你。事實證明,安裝這些服務可能是一項非常棘手的任務 - 儘管一段時間後我安裝了集羣,但我記得安裝這些服務花了我一些時間。我是在試錯的基礎上做的。從內存中,安裝服務時,您的路徑中只能使用8.3個名稱。否則,我的啓動失敗(或作爲服務安裝,不記得確切)。

+0

鏈接現已停止。 – ChrisF 2013-07-19 12:52:00

相關問題