如何配置MySQL叢集在一台伺服器

來源:互聯網
上載者:User

要配置一個Cluster叢集,至少得需要配置
1個MGM(管理結點)+1個SQL結點+2 Data 結點
MGM可以和SQL結點共用一台機器,資料結點單獨佔一台伺服器。
這樣最少也需要3台伺服器。
 
有時候這樣會覺得很麻煩,如果是學習階段,可考慮在單台伺服器搭建一個MySQL Cluster。
 
下文就是教你如何在一台伺服器上搭建Cluster。
 
一,先確認Cluster的包已經正確安裝
[root@cluster-one ~]# rpm -aq|grep -i mysql
MySQL-Cluster-client-gpl-7.2.10-1.el6.x86_64
MySQL-Cluster-server-gpl-7.2.10-1.el6.x86_64
MySQL-Cluster-shared-compat-gpl-7.2.10-1.el6.x86_64
MySQL-Cluster-devel-gpl-7.2.10-1.el6.x86_64

二,建立如下幾個設定檔,下面啟動時要用到
[root@cluster-one mysqlData]# more config.ini
[NDBD DEFAULT]
NoOfReplicas=2
[TCP DEFAULT]
#portnumber=3388
[NDB_MGMD]
NodeId = 1
hostname=localhost
datadir=/mysqlData/clustermgmd-data/
[NDBD]
NodeId = 2
hostname=localhost
datadir=/mysqlData/clusterndb1-data/
[NDBD]
NodeId = 3
hostname=localhost
datadir=/mysqlData/clusterndb2-data/
[MYSQLD]
NodeId = 4
hostname=localhost
[MYSQLD]
NodeId = 5
hostname=localhost
[MYSQLD]

[root@cluster-one mysqlData]# more my1.cnf
[mysqld]
ndbcluster
socket=/data/socket/n1.sock
pid-file=/data/socket/n1.pid
log-error = /data/log/n1_err.log
port = 3501
[mysql_cluster]
ndb-connectstring=localhost
[root@cluster-one mysqlData]# more my2.cnf
[mysqld]
ndbcluster
socket=/data/socket/n2.sock
pid-file=/data/socket/n2.pid
log-error = /data/log/n2_err.log
port = 3502
[mysql_cluster]
ndb-connectstring=localhost

[root@cluster-one mysqlData]# more /etc/my.cnf
[mysqld]
ndbcluster
socket=/var/lib/mysql/mysql.sock
pid-file=/data/socket/mysqld.pid
datadir=/mysqlData/clusterapi
log-bin=mysql-bin
log-bin-index=mysql-bin.index
binlog-format=ROW
server-id=1
port = 3401
[mysql_cluster]
ndb-connectstring=localhost
[client]
socket=/var/lib/mysql/mysql.sock

 
三,分別啟動所有結點 (需要注意的是,如果是第一次啟動,請在  管理結點/資料結點 的啟動參數後面加上 --initial)
啟動結點之前,請確保,上面設定檔指定的目錄都存在。
不存在,請自行先建立一個,或是你修改設定檔指定其它目錄。目錄有:
/mysqlData/clustermgmd-data/
/mysqlData/clusterndb1-data/
/mysqlData/clusterndb2-data/
/mysqlData/clusterapi
/data/socket/mysqld.pid
/data/socket/
/data/log/
 
 
管理結點
[root@cluster-one ~]# ndb_mgmd -f /mysqlData/config.ini
MySQL Cluster Management Server mysql-5.5.29 ndb-7.2.10
資料結點1
[root@cluster-one ~]# ndbd --defaults-file=/mysqlData/my1.cnf
2013-12-20 02:35:42 [ndbd] INFO    -- Angel connected to 'localhost:1186'
2013-12-20 02:35:42 [ndbd] INFO    -- Angel allocated nodeid: 2
資料結點2
[root@cluster-one ~]# ndbd --defaults-file=/mysqlData/my2.cnf
2013-12-20 02:35:46 [ndbd] INFO    -- Angel connected to 'localhost:1186'
2013-12-20 02:35:46 [ndbd] INFO    -- Angel allocated nodeid: 3

查詢結點,如果沒有/etc/init.d/mysql這個檔案,可以 把 “
/usr/share/mysql/mysql.server” 拷貝到/etc/init.d目錄下,並改名為mysql
[root@cluster-one ~]# /etc/init.d/mysql start
Starting MySQL   

搭建基於Corosync+DRBD的高可用MySQL叢集 

Corosync+Pacemaker+DRBD+MySQL 實現高可用(HA)的MySQL叢集

Heartbeat+MySQL+NFS 實現高可用(HA)的MySQL叢集

MySQL叢集架構全自動化實現切換(M-M-S-S)

SUSE Linux 下 MySQL叢集配置

  • 1
  • 2
  • 下一頁

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.