這種架構(gòu)一般用在以下三類場(chǎng)景
創(chuàng)新互聯(lián)擁有10多年成都網(wǎng)站建設(shè)工作經(jīng)驗(yàn),為各大企業(yè)提供成都做網(wǎng)站、網(wǎng)站制作服務(wù),對(duì)于網(wǎng)頁設(shè)計(jì)、PC網(wǎng)站建設(shè)(電腦版網(wǎng)站建設(shè))、重慶App定制開發(fā)、wap網(wǎng)站建設(shè)(手機(jī)版網(wǎng)站建設(shè))、程序開發(fā)、網(wǎng)站優(yōu)化(SEO優(yōu)化)、微網(wǎng)站、域名注冊(cè)等,憑借多年來在互聯(lián)網(wǎng)的打拼,我們?cè)诨ヂ?lián)網(wǎng)網(wǎng)站建設(shè)行業(yè)積累了很多網(wǎng)站制作、網(wǎng)站設(shè)計(jì)、網(wǎng)絡(luò)營(yíng)銷經(jīng)驗(yàn),集策劃、開發(fā)、設(shè)計(jì)、營(yíng)銷、管理等網(wǎng)站化運(yùn)作于一體,具備承接各種規(guī)模類型的網(wǎng)站建設(shè)項(xiàng)目的能力。
1. 備份多臺(tái) Server 的數(shù)據(jù)到一臺(tái)如果按照數(shù)據(jù)切分方向來講,那就是垂直切分。比如圖 2,業(yè)務(wù) A、B、C、D 是之前拆分好的業(yè)務(wù),現(xiàn)在需要把這些拆分好的業(yè)務(wù)匯總起來備份,那這種需求也很適用于多源復(fù)制架構(gòu)。實(shí)現(xiàn)方法我大概描述下:業(yè)務(wù) A、B、C、D 分別位于 4 臺(tái) Server,每臺(tái) Server 分別有一個(gè)數(shù)據(jù)庫(kù)來隔離前端的業(yè)務(wù)數(shù)據(jù),那這樣,在從庫(kù)就能把四臺(tái)業(yè)務(wù)的數(shù)據(jù)全部匯總起來,而不需要做額外的操作。那沒有多源復(fù)制之前,要實(shí)現(xiàn)這類需求,只能在匯總機(jī)器上搭建多個(gè) MySQL 實(shí)例,那這樣勢(shì)必會(huì)涉及到跨庫(kù)關(guān)聯(lián)的問題,不但性能急劇下降,管理多個(gè)實(shí)例也沒有單臺(tái)來的容易。
2. 用來聚合前端多個(gè) Server 的分片數(shù)據(jù)。
同樣,按照數(shù)據(jù)切分方向來講,屬于水平切分。比如圖 3,按照年份拆分好的數(shù)據(jù),要做一個(gè)匯總數(shù)據(jù)展現(xiàn),那這種架構(gòu)也非常合適。實(shí)現(xiàn)方法稍微復(fù)雜些:比如所有 Server 共享同一數(shù)據(jù)庫(kù)和表,一般為了開發(fā)極端透明,前端配置有分庫(kù)分表的中間件,比如愛可生的 DBLE。
3. 匯總并合并多個(gè) Server 的數(shù)據(jù)
第三類和第一種場(chǎng)景類似。不一樣的是不僅僅是數(shù)據(jù)需要匯總到目標(biāo)端,還得合并這些數(shù)據(jù),這就比第一種來的相對(duì)復(fù)雜些。比如圖 4,那這樣的需求,是不是也適合多源復(fù)制呢?答案是 YES。那具體怎么做呢?
1、使用軟件Navicat就可遷移復(fù)制數(shù)據(jù)庫(kù),打開Navicat,右鍵點(diǎn)擊左邊空白的地方,點(diǎn)擊New Connection下的MySQL,創(chuàng)建一個(gè)服務(wù)器的連接,下面將演示把本地的數(shù)據(jù)遷移到服務(wù)器:
2、在彈出的創(chuàng)建新連接的窗口里,輸入服務(wù)器的IP,數(shù)據(jù)庫(kù)賬號(hào),密碼等,然后就可以連接數(shù)據(jù)庫(kù)了:
3、創(chuàng)建好后們打開本地的數(shù)據(jù)庫(kù),點(diǎn)擊“Data Transfer”(數(shù)據(jù)傳輸),接著彈出新的界面:
4、新窗口中在左邊選擇本地?cái)?shù)據(jù)庫(kù)的庫(kù),和需要轉(zhuǎn)移的表,可以選擇一個(gè),或多個(gè)表:
5、然后在右邊的目標(biāo)里,選擇服務(wù)器的連接,然后選擇服務(wù)器上的數(shù)據(jù)庫(kù):
6、選擇完成后,就開始進(jìn)行數(shù)據(jù)轉(zhuǎn)移了,數(shù)據(jù)量不是很大的,很快就會(huì)轉(zhuǎn)移完成的。以上就是mysql中數(shù)據(jù)復(fù)制到另一個(gè)數(shù)據(jù)庫(kù)的方法:
原目錄:/var/lib/mysql
新目錄:/data/mysql
1.將/smp/mysql/mysql.sock文件復(fù)制到/data/db/mysql.sock,并停止運(yùn)行mysql(注意,需將
mysql.sock文件復(fù)制后,才能停止mysql)
/smp/mysql/bin/mysqladmin -uroot -p shutdown
2.data目錄遷移
cp -a /var/lib/mysql/* /data/mysql
3.修改/etc/my.cnf
socket=/data/db/mysql.sock(注意將原來的socket文件注釋掉,方便回滾)
datadir=/data/db/data
4.建立軟鏈接
ln -s /data/db/mysql.sock /var/lib/mysql/mysql.sock