簡述MySQL分片中快速資料遷移

2022-10-06 00:15:16 字數 1188 閱讀 1455

推薦閱讀:mysql 資料庫跨作業系統的最快遷移方法

mysql 備份與遷移 資料同步方法

操作實踐背景:

tr**elrecord表定義為10個分片,嘗試將10個分片中的2個分片轉移到第二台mysql上,並完成記錄, 要求最快的資料遷移做法,中斷業務時間最短

思路一利用mysqldump:

在這裡我們只針對mysql innodb engine,而且配置bin-log的資料庫進行分析。因為是將10個分片中的兩個分片進行遷移,其實就是資料庫的遷移過程,就是將10個資料庫中的兩個資料遷移到另外一台機器;中斷業務最短的做法就是:

1) 準備mycat新的配置檔案備用,以便快速切換配置檔案。

2) 在業務地峰期間,如凌晨,使用mysqldump進行資料庫的全量備份(附帶--flush-logs);

3) 將兩個分片資料庫的全量備份第二台機器上進行全量恢復;

4) 停止mycat伺服器,

5) 停止第一台機器的mycat例項(假設原來的分片在乙個mysql例項)

6) 拷貝第一台機器的binlog檔案到第二台機器,並使用mysql的mysqlbinlog工具進行這兩個資料庫的增量資料的恢復。

wcrco7) 啟動第一台資料例項,校驗遷移的兩個分片資料正確性(主要看記錄數)

8) 替換mycat的配置檔案並啟動mycat例項

在該方案中,業務中斷的時間主要是處理mysqlbinlog的增量資料恢復。

思路二利用mysql的ms機制做級聯複製

在這裡二程式設計客棧個片比如第乙個分片db11,第二個分片db21,我在db11上面再做個級聯主從,db11-->db16,在db21上面做個級聯主從db21->db26,這樣到時候資料實時同步,中斷業務比較短的做法程式設計客棧是:

1)準備mycat新配置檔案備用,以便快速切換配置檔案。

2)在業務低峰期間,比如凌晨時分,開始操作,停止mycat伺服器

3)進行db11-db16主備切換,進行db21-db26主備切換

4)停止第一台機器的mycat例項

5)在主備切換過程中,舊的主db11、db21上面的binlog中如果有新的dml、ddl操作,就用mysqlbinlog解析出來,在新的主db16和db26上面重做一遍

6)使用mk-table-checksum工具檢查新主從db16->db11、db26->db21的資料一致性。

7)替換mycat的配置檔案並啟動mycat例項

怎麼遷mysql資料庫 MySQL資料庫遷移

mysql資料庫遷移 資料檔案直接遷移 在遷移之前有三種方案 1.資料庫直接匯出,拷貝檔案到新伺服器,在新伺服器上匯入。2.使用 mysql gui tools 中的 mysqlmigrationtool。3.資料檔案和庫表結構檔案直接拷貝到新伺服器,掛載到同樣配置的mysql服務下。我在我的電腦上...

mysql資料遷移不生效 MySQL資料遷移問題

最近嘗試了一下小型資料遷移。本地遷移,windows平台,修改配置檔案中的data dir項,然後將舊的data檔案下的資料檔案全部拷貝過去。之後登陸資料庫,竟然1145錯誤。可以看到資料庫的結構,各個表的名稱,但是想深入表看其中資料卻看不了。不知道為什麼,搜了一下,有人說拷貝的時候原sql服務沒有...

Mongodb資料庫集群分片技術簡述

一 分片 二 mongos mongodb需要路由程序mongos,mongos知道所有資料的存放位置,應用連線mongos傳送請求.mongos對應用隱藏分片細節,將請求 到相應資料庫機器 三 片鍵 1.片鍵是作為資料拆分的依據,mongodb依據片鍵將資料拆分 根據機器的數量的新增和刪除,mon...