国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

數(shù)據(jù)庫|TiDB Binlog實踐指南,輕松實現(xiàn)主備集群部署和數(shù)據(jù)同步

2023-06-14 20:00 作者:神州數(shù)碼云基地  | 我要投稿

劉昊?| 數(shù)據(jù)庫工程師

最近手頭有個系統(tǒng),有需要搭建災備庫的需求(RTO要求4小時內(nèi),根據(jù)實際情況計算)。考慮到生產(chǎn)系統(tǒng)是5版本,TiCDC存在一些兼容性問題,且TiDB Binlog已經(jīng)有實踐案例及經(jīng)驗可供參考,故選擇使用TiDB Binlog來實現(xiàn)主集群-->災備集群的增量數(shù)據(jù)同步。數(shù)據(jù)全量初始化采用Dumpling + TiDB Lightning工具。

具體實施過程如下:


一、災備集群部署

災備集群搭建方案,采用與主集群1:1的方式進行部署,直接用現(xiàn)生產(chǎn)環(huán)境集群拓撲文件進行部署,部署完成后建用戶并賦權,具體過程不再贅述。


二、主集群擴容pump

編輯生產(chǎn)集群擴容pump所需拓撲文件,內(nèi)容如下

編輯完成后,執(zhí)行擴容命令

擴容完成后,最終會輸出如下內(nèi)容


三、開啟主集群Binlog功能

執(zhí)行edit-config命令,修改集群配置:

在server_configs下TiDB部分,添加如下配置


編輯完成后,reload tidb節(jié)點使配置生效

reload完成后,會輸出如下內(nèi)容



四、主集群調整GC時間

登錄數(shù)據(jù)庫,執(zhí)行如下sql:

sql返回執(zhí)行成功后,再次執(zhí)行select @@tidb_gc_life_time;,查詢結果輸出為6h或360m,即為調整成功。


五、使用dumpling工具并將生產(chǎn)數(shù)據(jù)全量導出

導出完成后,日志最終會輸出["dump data successfully, dumpling will exit now"]字樣,如下圖所示:



六、將導出數(shù)據(jù)目錄上傳至災備服務器,進行全量導入


第一步,使用lightning工具將數(shù)據(jù)全量導入

以下為運行l(wèi)ightning所需配置文件,因導入數(shù)據(jù)量大,建議開啟斷點

第二步,開始導入

導入完成后,日志會輸出["tidb lightning exit"],如圖:



七、災備集群擴容pump

編輯擴容pump所需配置文件

上傳完成后,執(zhí)行如下命令擴容

擴容完成后,最終會輸出如下內(nèi)容



八、災備集群開啟Binlog功能

執(zhí)行edit-config命令,修改集群配置文件

在server_config下tidb部分,添加如下配置



修改完成后,reload tidb節(jié)點使配置生效

reload完成后,會輸出如下內(nèi)容



九、生產(chǎn)集群與災備集群新建Drainer用戶并授權

分別登錄生產(chǎn)和災備數(shù)據(jù)庫,執(zhí)行如下SQL,創(chuàng)建Drainer用戶并授權

以上sql均返回成功后,執(zhí)行show grants for 'drainer'@'%';確認drainer用戶權限包含Insert、Update、Delete、Create、Drop、Alter、Execute、Index、Select、Create View權限。


十、災備集群擴容Drainer(本地記錄Binlog,實現(xiàn)增量備份)

編輯擴容Binlog所需配置文件

編輯完成后,執(zhí)行如下命令擴容

擴容完成后,最終會輸出如下內(nèi)容



十一、主集群擴容Drainer

編輯擴容Drainer所需配置文件

dumpling導出metadata中Pso查看方式:

導出數(shù)據(jù)目錄中$/dumpdir ,會有一個metadata的文件,執(zhí)行cat命令即可查看該文件中Pso,如圖所示:



編輯完成后,執(zhí)行如下命令擴容

擴容完成后,最終會輸出如下內(nèi)容:



十二、檢驗同步鏈路是否搭建成功

分別訪問集群監(jiān)控(10.3.31.1:3000、10.3.31.101:3000),查詢grafana監(jiān)控面板中tidb-test-binlog-->drainer界面,如圖:


checkpoint正常推進,代表drainer同步鏈路正常工作。

在生產(chǎn)庫新建test表或在原有test表中插入數(shù)據(jù),在災備庫進行查詢,如生產(chǎn)庫執(zhí)行的DDL或DML在災備庫能夠查詢到,證明生產(chǎn)庫增量數(shù)據(jù)可通過同步鏈路同步至災備庫,生產(chǎn)-->災備數(shù)據(jù)同步鏈路搭建成功。


十三、GC時間調整回原配置

登錄數(shù)據(jù)庫,執(zhí)行如下SQL:

sql返回執(zhí)行成功后,再次執(zhí)行select @@tidb_gc_life_time;,查詢結果輸出為1h或10m,即為調整成功。

至此TiDB Binlog搭建的集群數(shù)據(jù)同步鏈路搭建完成,數(shù)據(jù)同步成功。

部署過程中,需要注意的是drainer的initial-commit-ts參數(shù),只能在部署的時候配置,無法在已有drainer節(jié)點上進行配置。后續(xù)運維過程中,需額外關注Skip Binlog Count監(jiān)控指標,防止出現(xiàn)TiDB 寫入 Binlog 失敗的情況,如出現(xiàn)TiDB 寫入 Binlog 失敗,需及時進行處理。

各位路過大佬如果有相關方案及操作步驟改進建議,歡迎進群討論。


數(shù)據(jù)庫|TiDB Binlog實踐指南,輕松實現(xiàn)主備集群部署和數(shù)據(jù)同步的評論 (共 條)

分享到微博請遵守國家法律
平陆县| 云梦县| 讷河市| 河池市| 凌云县| 乳山市| 上蔡县| 綦江县| 灵璧县| 金华市| 岳普湖县| 辉南县| 马关县| 当涂县| 南江县| 东源县| 马尔康县| 巩留县| 西青区| 和政县| 阆中市| 永德县| 象州县| 密云县| 新泰市| 凯里市| 台山市| 河北省| 广西| 马龙县| 平果县| 青龙| 迁西县| 遵化市| 辽源市| 二连浩特市| 滨海县| 花莲县| 洛阳市| 汨罗市| 葫芦岛市|