7. mysql-cluster 叢集,mysql-cluster叢集

來源:互聯網
上載者:User

7. mysql-cluster 叢集,mysql-cluster叢集

本文主要介紹Mysql-Cluster的安裝,首先先簡單瞭解一下:(linux使用者,本人 debian)

  MySQL Cluster 是一種技術,該技術允許在無共用的系統中部署“記憶體中”資料庫的 Cluster 。通過無共用體繫結構,系統能夠使用廉價的硬體,而且對軟硬體無特殊要求。此外,由於每個組件有自己的記憶體和磁碟,不存在單點故障。(百度粘貼-_-)

一、簡介

Mysql-cluster分為:

1.      管理節點:管理MySQL Cluster內的其他節點,如提供配置資料、啟動並停止節點、運行備份等

2.      資料節點:用於儲存 Cluster的資料

3.      Sql節點:用來訪問 Cluster資料的節點




二、安裝

此安裝為1個管理節點,2個資料節點,2個sql節點,安裝在兩台機器,一台機器:管理節點,資料節點,sql節點,另一台:資料節點,sql節點

 節點名稱

 IP

 管理節點

 192.168.1.111

 資料節點1

 192.168.1.111

 資料節點2

 192.168.1.112

 Sql節點1

 192.168.1.111

 Sql節點2

 192.168.1.112

 

三、安裝步驟

1.      為mysqld增加一個登陸使用者組,兩台伺服器都需要

#  groupadd mysql

#  useradd –g mysqlmysql

 

2.      安裝管理節點

#  tar zxvf mysql-cluster-gpl-7.3.7-linux-glibc2.5-x86_64.tar.gz

#  mv mysql-cluster-gpl-7.3.7-linux-glibc2.5-x86_64/*/opt/mysql –r

 

建立mysql-cluster目錄,並配置config.ini

#  mkdir/apps/mysql/mysql-cluster

#  cd/apps/mysql/mysql-cluster

#  vi config.ini

內容如下: 

[ndbddefault]

NoOfReplicas=2    (代表sql節點的數量)

DataMemory=500M       

indexMemory=300M     

[tcpdefault]

SendBufferMemory=2M

ReceiveBufferMemory=2M 

[ndb_mgmddefault]

PortNumber=1186

Datadir=/apps/mysql/mysql-cluster

[ndb_mgmd]

NodeId=1

HostName=192.168.1.111 

[ndbd]

NodeId=2

HostName=192.168.1.111

DataDir=/apps/mysql/data

[ndbd]

NodeId=2

HostName=192.168.1.112

DataDir=/apps/mysql/data

 

[mysqld]

NodeId=3

Hostname=192.168.1.111

[mysqld]

NodeId=3

Hostname=192.168.1.112


3.      安裝資料節點

Vi /etc/my.cnf

如下:

[mysqld]  

datadir=/opt/mysql/ndbdata

port =3306

 

ndbcluster  #資料節點(因為在一台機器所以合并)            

ndb-connectstring=192.168.1.111

port =3307

[mysql_cluster]

ndb-connectstring  = 192.168.1.111


4.      安裝sql節點

Vi /etc/my.cnf

如下:

[mysqld]  

datadir=/opt/mysql/ndbdata

port =3306

 

ndbcluster  #資料節點(因為在一台機器所有合并)            

ndb-connectstring=192.168.1.111

port =3307

[mysql_cluster]

ndb-connectstring  = 192.168.1.111 


next:(安裝mysqld)

 #  cd /opt/mysql

         #  ./scripts/mysql_install_db –user=mysql (安裝到了 /opt/mysql/ndbdata)


5.      開始啟動cluster

開啟順序: 管理節點->資料節點->sql節點

 

管理節點啟動

#  cd /opt/mysql

#  ./bin/ndb_mgmd –f /apps/mysql/mysql-cluster/config.ini--configdir=/apps/mysql/mysql-cluster/--ndb-nodeid=1

 

資料節點啟動(兩個節點都要啟動,不然sql節點不能啟動)

#  cd /opt/mysql

#  ./bin/ndbd –-initial –-ndb-connectstring=192.168.1.111:1186

 

Sql節點啟動

#  cd /opt/mysql/ndbdata

#  ../bin/mysqld_safe –user=mysql &

 

6.      查看

#  cd  /opt/mysql/

#  ./bin/ndb_mgm –e show

 

Connectedto Management Server at: 192.168.1.111:1186

ClusterConfiguration

---------------------

[ndbd(NDB)]     1 node(s)

id=2 @192.168.1.111 (mysql-5.6.21 ndb-7.3.7, Nodegroup: 0, *)

id=3 @192.168.1.112 (mysql-5.6.21 ndb-7.3.7, Nodegroup: 0, *)

 

[ndb_mgmd(MGM)]         1 node(s)

id=1 @192.168.1.111 (mysql-5.6.21 ndb-7.3.7)

 

[mysqld(API)]   1 node(s)

id=4 @192.168.1.112  (mysql-5.6.21 ndb-7.3.7)

id=5 @192.168.1.112  (mysql-5.6.21 ndb-7.3.7)

 

說明已經成功

 

7.      問題

Q:  sql節點無法啟動“Tablesnot available after 30 seconds.  Considerincreasing --ndb-wait-setup value”

A:  資料節點沒有全部啟動

Q:  sql節點啟動時: “Unable to lock./ibdata1, error: 11”

A:  已經啟動了

Q:  登入sql時:mysql –u root-p

1045 access denied for user 'root'@'localhost' using password yes 

A:  直接  mysql –u root (需要修改設定檔)


註:歡迎踴躍提出疑問,共同進步!

 

 

 

 

相關文章

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.