如何搭建一個(gè)MySQL分布式集群?
下載mysql集群
首先,下載mysql集群。建議使用下圖。下載速度比官網(wǎng)快。
我下載的版本是MySQL-cluster-GPL-7.5.4-Linux-glibc2.5-x86_64.tar.gz。
仔細(xì)看它是64位版本,不要不要下載錯(cuò)了。
安裝mysqlcluster之前
安裝前,如果之前已經(jīng)安裝了mysql,需要?jiǎng)h除相應(yīng)的mysql文件。請(qǐng)?jiān)趧h除前停止mysql服務(wù)。唐不要忘記刪除這些配置文件。確保刪除是干凈的。否則可能會(huì)和后面的安裝。如果是實(shí)驗(yàn),關(guān)閉防火墻。實(shí)際上,防火墻會(huì)打開相應(yīng)的端口。{注意實(shí)際中不僅需要3306端口,同步也需要1186端口!!!}。確保服務(wù)器可以相互訪問并在之前執(zhí)行ping操作。確保固定的ip地址。確保沒有其他程序占用所需的端口。比如3306。這些在安裝前得到確認(rèn)。你需要精通基于linux的命令,你需要精通安裝mysql的基礎(chǔ)版本,因?yàn)槲視?huì)在下面的序列中簡(jiǎn)要描述一些操作,并贏得不要解釋太多。
安裝配置管理節(jié)點(diǎn)
將下載的包上傳到服務(wù)器/usr/local。
解壓
#tarxvfMySQL-cluster-GPL-7.5.4-Linux-glibc2.5-x86_64.tar.gz
拿出需要的證件。
#CDMySQL-cluster-GPL-7.5.4-Linux-glibc2.5-x86_64
#cpbin/ndb_mgm*/usr/local/bin
#cd/usr/local/bin
#chmodxndb_mgm*
創(chuàng)建新的配置文件并初始化管理節(jié)點(diǎn)。
#mkdir/var/lib/mysql-cluster
#mkdir/usr/local/mysql
#六
以下是配置文件,可以根據(jù)自己的需要進(jìn)行修改。先給官網(wǎng)默認(rèn)配置文件,再給我配置文件。按照我的修改修改就行了,其他的都不能動(dòng)。
查看代碼
查看代碼
使用配置文件初始化管理節(jié)點(diǎn)
#/usr/local/bin/ndb_mgmd-f-initial
出現(xiàn)MySQL集群管理服務(wù)器MySQL-5.7.16NDB-7.5.4。
然后你可以使用ndbd來管理它(如果ndbd命令不能t工作,在/usr/local/bi中使用它。在n目錄中使用ndb_mgm命令)
#ndbd
Ndb_mgmgtshow(使用show命令查看管理情況,我們將使用該命令查看和管理配置后的數(shù)據(jù)節(jié)點(diǎn))。
到目前為止,已經(jīng)配置了管理節(jié)點(diǎn),然后配置了數(shù)據(jù)和sql節(jié)點(diǎn)。
安裝配置數(shù)據(jù)和mysql節(jié)點(diǎn)
以下所有操作都需要在所有集群節(jié)點(diǎn)上執(zhí)行。
添加用戶組mysql和用戶msyql。
#groupaddmysql
#useradd-gMySQL-s/bin/falseMySQL
創(chuàng)建一個(gè)新文件夾,并授予它權(quán)限。
#mkdir/var/lib/mysql-cluster
#chownroot:MySQL/var/lib/MySQL-cluster
將下載的包上傳到服務(wù)器/usr/local。
解壓
#tarxvfMySQL-cluster-GPL-7.5.4-Linux-glibc2.5-x86_64.tar.gz
創(chuàng)建便于訪問的鏈接
#ln-s/usr/local/MySQL-cluster-GPL-7.5.4-Linux-glibc2.5-x86_64/usr/local/MySQL
初始化數(shù)據(jù)庫(kù)(這里請(qǐng)注意,如果你安裝的版本和我的不同,數(shù)據(jù)庫(kù)初始化命令也不同。很多之前的版本都會(huì)用:scripts/mysql_install_db-UserMySQL初始化,在新版本中已經(jīng)被MySQL放棄了,所以需要用下面的命令安裝。如果需要安裝其他版本,請(qǐng)參考MySQL官網(wǎng)相應(yīng)版本的安裝命令。)
輸入您剛剛創(chuàng)建的目錄。
#cd/usr/local/mysql
如果下面的命令可以t被使用,然后進(jìn)入bin目錄并使用。/mysqld-initialize進(jìn)行初始化。總之,如何初始化mysql的正常安裝就夠了。您還可以在這里設(shè)置安裝數(shù)據(jù)庫(kù)的數(shù)據(jù)目錄等參數(shù)。網(wǎng)上有很多安裝mysql5.7的教程。
#mysqld-初始化
如果初始化成功,系統(tǒng)會(huì)提示一個(gè)隨機(jī)生成的數(shù)據(jù)庫(kù)密碼。這個(gè)時(shí)候你需要記住這個(gè)密碼,然后你需要用這個(gè)密碼登錄數(shù)據(jù)庫(kù)!!!
修改權(quán)限
#chown-R根。
#chown-Rmysql數(shù)據(jù)
#chgrp-Rmysql。
#cp/etc/rc.d/init.d/
#chmodx
#chkconfig-add
配置數(shù)據(jù)節(jié)點(diǎn)
#六
查看代碼
其中IP是管理節(jié)點(diǎn)的IP。
在群集節(jié)點(diǎn)上啟動(dòng)服務(wù)。啟動(dòng)mysql(成功隨之而來)#start。
成功啟動(dòng)mysql后,請(qǐng)自己登錄mysql,然后修改密碼,就像正常安裝mysql一樣。需要注意的是,集群數(shù)據(jù)庫(kù)的密碼需要相同!
啟動(dòng)ndbd#/etcndbd#/etc/init.d/ndbd-initial。如果上面的都不能用,這個(gè)帶絕對(duì)路徑的:#/usr/local/MySQL/bin/ndbd-initial如果出現(xiàn)以下現(xiàn)象就會(huì)成功。
2017-03-0614:04:07[ndbd]INFO-Ang:1186
2017-03-0614:04:07[ndbd]INFO-Ang:2
最后,當(dāng)所有節(jié)點(diǎn)都配置好之后,返回到管理節(jié)點(diǎn),使用上面提到的顯示來查看它。下面類似的顯示證明連接已經(jīng)完成。
ndb_mgmgt顯示
集群配置
-
[ndbd(NDB)]2個(gè)節(jié)點(diǎn)
id2(未連接,接受來自192.168.75.128的連接)
ID3@192.168.75.130(MySQL-5.1.63ndb-7.1.23,首發(fā),Nod:0)
[ndb_mgmd(MGM)]1個(gè)節(jié)點(diǎn)
id1@192.168.75.129(MySQL-5.7.16ndb-7.5.4)
[mysqld(API)]2個(gè)節(jié)點(diǎn)
id4(未連接,接受來自任何主機(jī)的連接)
id5(未連接,接受來自任何主機(jī)的連接)
mysql分布式怎么連表查詢?
用write語(yǔ)句連接到sql數(shù)據(jù)庫(kù),然后使用語(yǔ)句索引。只需查詢表中的數(shù)據(jù)。