MySQL?到?ClickHouse?實(shí)時(shí)數(shù)據(jù)同步實(shí)操
摘要:
很多 DBA 同學(xué)經(jīng)常會(huì)遇到要從一個(gè)數(shù)據(jù)庫(kù)實(shí)時(shí)同步到另一個(gè)數(shù)據(jù)庫(kù)的問(wèn)題,同構(gòu)數(shù)據(jù)還相對(duì)容易,遇上異構(gòu)數(shù)據(jù)、表多、數(shù)據(jù)量大等情況就難以同步。我自己親測(cè)了一種方式,可以非常方便地完成 MySQL 數(shù)據(jù)實(shí)時(shí)同步到ClickHouse,跟大家分享一下,希望對(duì)你有幫助。
MySQL 到 ClickHouse 實(shí)時(shí)數(shù)據(jù)同步實(shí)操分享
本次 MySQL 數(shù)據(jù)實(shí)時(shí)同步到ClickHouse大概只花了幾分鐘就完成。使用的工具是 Tapdata Cloud ,這個(gè)工具是永久免費(fèi)的。
@[TOC](MySQL 到 ClickHouse 實(shí)時(shí)數(shù)據(jù)同步實(shí)操分享)
第一步:配置MySQL 連接
1.點(diǎn)擊 Tapdata Cloud 操作后臺(tái)左側(cè)菜單欄的【連接管理】,然后點(diǎn)擊右側(cè)區(qū)域【連接列表】右上角的【創(chuàng)建連接】按鈕,打開(kāi)連接類型選擇頁(yè)面,然后選擇MySQL

2.在打開(kāi)的連接信息配置頁(yè)面依次輸入需要的配置信息

【連 接 名 稱】:設(shè)置連接的名稱,多個(gè)連接的名稱不能重復(fù) 【數(shù)據(jù)庫(kù)地址】:數(shù)據(jù)庫(kù) IP / Host 【端 口】:數(shù)據(jù)庫(kù)端口 【數(shù)據(jù)庫(kù)名稱】:tapdata 數(shù)據(jù)庫(kù)連接是以一個(gè) db 為一個(gè)數(shù)據(jù)源。這里的 db 是指一個(gè)數(shù)據(jù)庫(kù)實(shí)例中的 database,而不是一個(gè) mysql 實(shí)例。 【賬 號(hào)】:可以訪問(wèn)數(shù)據(jù)庫(kù)的賬號(hào) 【密 碼】:數(shù)據(jù)庫(kù)賬號(hào)對(duì)應(yīng)的密碼 【時(shí) 間 時(shí) 區(qū)】:默認(rèn)使用該數(shù)據(jù)庫(kù)的時(shí)區(qū);若指定時(shí)區(qū),則使用指定后的時(shí)區(qū)設(shè)置
3.測(cè)試連接,提示測(cè)試通過(guò)

4.測(cè)試通過(guò)后保存連接即可。
第二步:配置ClickHouse 連接
3.同第一步操作,點(diǎn)擊左側(cè)菜單欄的【連接管理】,然后點(diǎn)擊右側(cè)區(qū)域【連接列表】右上角的【創(chuàng)建連接】按鈕,打開(kāi)連接類型選擇頁(yè)面,然后選擇ClickHouse

4.在打開(kāi)的連接信息配置頁(yè)面依次輸入需要的配置信息,配置完成后測(cè)試連接保存即可。

第三步:選擇同步模式-全量/增量/全+增
進(jìn)入Tapdata Cloud 操作后臺(tái)任務(wù)管理頁(yè)面,點(diǎn)擊添加任務(wù)按鈕進(jìn)入任務(wù)設(shè)置流程

根據(jù)剛才建好的連接,選定源端與目標(biāo)端。

根據(jù)數(shù)據(jù)需求,選擇需要同步的庫(kù)、表,如果你對(duì)表名有修改需要,可以通過(guò)頁(yè)面中的表名批量修改功能對(duì)目標(biāo)端的表名進(jìn)行批量設(shè)置.

在以上選項(xiàng)設(shè)置完畢后,下一步選擇同步類型,平臺(tái)提供全量同步、增量同步、全量+增量同步,設(shè)定寫(xiě)入模式和讀取數(shù)量。
如果選擇的是全量+增量同步,在全量任務(wù)執(zhí)行完畢后,Tapdata Agent 會(huì)自動(dòng)進(jìn)入增量同步狀態(tài)。在該狀態(tài)中,Tapdata Agent 會(huì)持續(xù)監(jiān)聽(tīng)源端的數(shù)據(jù)變化(包括:寫(xiě)入、更新、刪除),并實(shí)時(shí)的將這些數(shù)據(jù)變化寫(xiě)入目標(biāo)端。

點(diǎn)擊任務(wù)名稱可以打開(kāi)任務(wù)詳情頁(yè)面,可以查看任務(wù)詳細(xì)信息。

點(diǎn)擊任務(wù)監(jiān)控可以打開(kāi)任務(wù)執(zhí)行詳情頁(yè)面,可以查看任務(wù)進(jìn)度/里程碑等的具體信息。

第四步:進(jìn)行數(shù)據(jù)校驗(yàn)
一般同步完成后,我都習(xí)慣性進(jìn)行一下數(shù)據(jù)校驗(yàn),防止踩坑。
Tapdata Cloud 有三種校驗(yàn)?zāi)J?,我常用最快的快?code>count校驗(yàn) ,只需要選擇到要校驗(yàn)的表,不用設(shè)置其他復(fù)雜的參數(shù)和條件,簡(jiǎn)單方便。

如果覺(jué)得不夠用,也可以選擇表全字段值校驗(yàn) ,這個(gè)除了要選擇待校驗(yàn)表外,還需要針對(duì)每一個(gè)表設(shè)置索引字段。

在進(jìn)行表全字段值校驗(yàn)時(shí),還支持進(jìn)行高級(jí)校驗(yàn)。通過(guò)高級(jí)校驗(yàn)可以添加JS校驗(yàn)邏輯,可以對(duì)源和目標(biāo)的數(shù)據(jù)進(jìn)行校驗(yàn)。

還有一個(gè)校驗(yàn)方式關(guān)聯(lián)字段值校驗(yàn) ,創(chuàng)建關(guān)聯(lián)字段值校驗(yàn)時(shí),除了要選擇待校驗(yàn)表外,還需要針對(duì)每一個(gè)表設(shè)置索引字段。

以上就是 MySQL數(shù)據(jù)實(shí)時(shí)同步到ClickHouse 的操作分享,相比自己寫(xiě)代碼,簡(jiǎn)直不要太方便了。碼字不易,轉(zhuǎn)載請(qǐng)注明出處~
其他數(shù)據(jù)庫(kù)的同步操作
其他數(shù)據(jù)庫(kù)數(shù)據(jù)實(shí)時(shí)同步到 Oracle、MySQL、PG、SQL Server、MongoDB、ES 、達(dá)夢(mèng)、Kafka、GP、MQ、ClickHouse、Hazelcast Cloud、ADB MySQL、ADB PostgreSQL、KunDB、TiDB、Dummy DB 的方式也都是先配置源和目標(biāo)的連接,然后新建任務(wù)選擇同步模式:全量/增量/全量+增量,因?yàn)椴襟E相同,其他就不再貼圖說(shuō)明了。創(chuàng)建連接的時(shí)候,有沒(méi)有發(fā)現(xiàn):DB2、Sybase、Gbase 幾個(gè)數(shù)據(jù)庫(kù)現(xiàn)在是灰色鎖定狀態(tài),應(yīng)該是在開(kāi)發(fā)中了,可能后續(xù)也會(huì)支持這些數(shù)據(jù)庫(kù)的同步功能
到此這篇關(guān)于MySQL 到 ClickHouse 實(shí)時(shí)數(shù)據(jù)同步實(shí)操的文章就介紹到這了,更多相關(guān)MySQL 到 ClickHouse 實(shí)時(shí)數(shù)據(jù)同步內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
mysql性能優(yōu)化工具--tuner-primer使用介紹
這篇文章主要介紹了mysql性能優(yōu)化工具--tuner-primer的使用方法與返回?cái)?shù)據(jù)分析,需要的朋友可以參考下2016-05-05
MySQL慢查詢?nèi)罩?Slow Query Log)的實(shí)現(xiàn)
慢查詢?nèi)罩居脕?lái)記錄在 MySQL 中執(zhí)行時(shí)間超過(guò)指定時(shí)間的查詢語(yǔ)句,本文就來(lái)介紹一下MySQL慢查詢?nèi)罩?nbsp;的使用,感興趣的可以了解一下2024-08-08
Mysql中having與where的區(qū)別小結(jié)
本文主要介紹了MySQL中WHERE和HAVING子句的區(qū)別,包括它們的執(zhí)行順序、效率、適用條件和在多表關(guān)聯(lián)查詢中的應(yīng)用,具有一定的參考價(jià)值,感興趣的可以了解一下2025-03-03
mysql刪除關(guān)聯(lián)表的實(shí)操方法
在本篇內(nèi)容里我們給大家整理了關(guān)于mysql刪除關(guān)聯(lián)表的實(shí)操方法以及相關(guān)SQL語(yǔ)句,需要的朋友們學(xué)習(xí)下吧。2019-05-05
DQL命令查詢數(shù)據(jù)實(shí)現(xiàn)方法詳解
DQL(Data?Query?Language,數(shù)據(jù)查詢語(yǔ)言),查詢數(shù)據(jù)庫(kù)數(shù)據(jù),如SELECT語(yǔ)句,簡(jiǎn)單的單表查詢或多表的復(fù)雜查詢和嵌套查詢,數(shù)據(jù)庫(kù)語(yǔ)言中最核心、最重要的語(yǔ)句,使用頻率最高的語(yǔ)句2022-09-09
navicat 8 創(chuàng)建數(shù)據(jù)庫(kù)與創(chuàng)建用戶分配權(quán)限圖文方法
navicat是一款不錯(cuò)的圖形化管理mysql的工具,大家一般都是用phpmyadmin或直接命令行操作,對(duì)于不是很熟悉命令的朋友,就可以使用navicat這個(gè)工具了,方便操作。2011-04-04
mysql tmp_table_size優(yōu)化之設(shè)置多大合適
這篇文章主要介紹了mysql tmp_table_size優(yōu)化問(wèn)題,很多朋友都會(huì)問(wèn)tmp_table_size設(shè)置多大合適,其實(shí)既然你都搜索到這篇文章了,一般大于64M比較好,當(dāng)然你也可以可以根據(jù)自己的機(jī)器內(nèi)容配置增加,一般64位的系統(tǒng)能充分利用大內(nèi)存2016-05-05

