MySQL?到?ClickHouse?實(shí)時(shí)數(shù)據(jù)同步實(shí)操
摘要:
很多 DBA 同學(xué)經(jīng)常會(huì)遇到要從一個(gè)數(shù)據(jù)庫實(shí)時(shí)同步到另一個(gè)數(shù)據(jù)庫的問題,同構(gòu)數(shù)據(jù)還相對(duì)容易,遇上異構(gòu)數(shù)據(jù)、表多、數(shù)據(jù)量大等情況就難以同步。我自己親測了一種方式,可以非常方便地完成 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)建連接】按鈕,打開連接類型選擇頁面,然后選擇MySQL
2.在打開的連接信息配置頁面依次輸入需要的配置信息
【連 接 名 稱】:設(shè)置連接的名稱,多個(gè)連接的名稱不能重復(fù) 【數(shù)據(jù)庫地址】:數(shù)據(jù)庫 IP / Host 【端 口】:數(shù)據(jù)庫端口 【數(shù)據(jù)庫名稱】:tapdata 數(shù)據(jù)庫連接是以一個(gè) db 為一個(gè)數(shù)據(jù)源。這里的 db 是指一個(gè)數(shù)據(jù)庫實(shí)例中的 database,而不是一個(gè) mysql 實(shí)例。 【賬 號(hào)】:可以訪問數(shù)據(jù)庫的賬號(hào) 【密 碼】:數(shù)據(jù)庫賬號(hào)對(duì)應(yīng)的密碼 【時(shí) 間 時(shí) 區(qū)】:默認(rèn)使用該數(shù)據(jù)庫的時(shí)區(qū);若指定時(shí)區(qū),則使用指定后的時(shí)區(qū)設(shè)置
3.測試連接,提示測試通過
4.測試通過后保存連接即可。
第二步:配置ClickHouse 連接
3.同第一步操作,點(diǎn)擊左側(cè)菜單欄的【連接管理】,然后點(diǎn)擊右側(cè)區(qū)域【連接列表】右上角的【創(chuàng)建連接】按鈕,打開連接類型選擇頁面,然后選擇ClickHouse
4.在打開的連接信息配置頁面依次輸入需要的配置信息,配置完成后測試連接保存即可。
第三步:選擇同步模式-全量/增量/全+增
進(jìn)入Tapdata Cloud
操作后臺(tái)任務(wù)管理頁面,點(diǎn)擊添加任務(wù)按鈕進(jìn)入任務(wù)設(shè)置流程
根據(jù)剛才建好的連接,選定源端與目標(biāo)端。
根據(jù)數(shù)據(jù)需求,選擇需要同步的庫、表,如果你對(duì)表名有修改需要,可以通過頁面中的表名批量修改功能對(duì)目標(biāo)端的表名進(jìn)行批量設(shè)置.
在以上選項(xiàng)設(shè)置完畢后,下一步選擇同步類型,平臺(tái)提供全量同步、增量同步、全量+增量同步,設(shè)定寫入模式和讀取數(shù)量。
如果選擇的是全量+增量同步,在全量任務(wù)執(zhí)行完畢后,Tapdata Agent 會(huì)自動(dòng)進(jìn)入增量同步狀態(tài)。在該狀態(tài)中,Tapdata Agent 會(huì)持續(xù)監(jiān)聽源端的數(shù)據(jù)變化(包括:寫入、更新、刪除),并實(shí)時(shí)的將這些數(shù)據(jù)變化寫入目標(biāo)端。
點(diǎn)擊任務(wù)名稱可以打開任務(wù)詳情頁面,可以查看任務(wù)詳細(xì)信息。
點(diǎn)擊任務(wù)監(jiān)控可以打開任務(wù)執(zhí)行詳情頁面,可以查看任務(wù)進(jìn)度/里程碑等的具體信息。
第四步:進(jìn)行數(shù)據(jù)校驗(yàn)
一般同步完成后,我都習(xí)慣性進(jìn)行一下數(shù)據(jù)校驗(yàn),防止踩坑。
Tapdata Cloud
有三種校驗(yàn)?zāi)J剑页S米羁斓目焖?code>count校驗(yàn) ,只需要選擇到要校驗(yàn)的表,不用設(shè)置其他復(fù)雜的參數(shù)和條件,簡單方便。
如果覺得不夠用,也可以選擇表全字段值校驗(yàn) ,這個(gè)除了要選擇待校驗(yàn)表外,還需要針對(duì)每一個(gè)表設(shè)置索引字段。
在進(jìn)行表全字段值校驗(yàn)時(shí),還支持進(jìn)行高級(jí)校驗(yàn)。通過高級(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
的操作分享,相比自己寫代碼,簡直不要太方便了。碼字不易,轉(zhuǎn)載請(qǐng)注明出處~
其他數(shù)據(jù)庫的同步操作
其他數(shù)據(jù)庫數(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相同,其他就不再貼圖說明了。創(chuàng)建連接的時(shí)候,有沒有發(fā)現(xiàn):DB2、Sybase、Gbase 幾個(gè)數(shù)據(jù)庫現(xiàn)在是灰色鎖定狀態(tài),應(yīng)該是在開發(fā)中了,可能后續(xù)也會(huì)支持這些數(shù)據(jù)庫的同步功能
到此這篇關(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數(shù)據(jù)庫INSERT、UPDATE、DELETE以及REPLACE語句的用法詳解
本篇文章是對(duì)MySQL數(shù)據(jù)庫INSERT、UPDATE、DELETE以及REPLACE語句的用法進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-06-06解決MySQL因不能創(chuàng)建 PID 導(dǎo)致無法啟動(dòng)的方法
這篇文章主要給大家介紹了關(guān)于解決MySQL因不能創(chuàng)建 PID 導(dǎo)致無法啟動(dòng)的方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面跟著小編一起來學(xué)習(xí)學(xué)習(xí)吧。2017-06-06MySQL子查詢?cè)斀?單行子查詢、多行子查詢與相關(guān)子查詢)
所謂子查詢是指在一個(gè)查詢中嵌套了其他的若干查詢,即在一個(gè)SELECT查詢語句的WHERE或FROM子句中包含另一個(gè)SELECT查詢語句,下面這篇文章主要給大家介紹了關(guān)于MySQL單行子查詢、多行子查詢與相關(guān)子查詢的相關(guān)資料,需要的朋友可以參考下2022-09-09mysql數(shù)據(jù)庫創(chuàng)建賬號(hào)、授權(quán)、數(shù)據(jù)導(dǎo)出、導(dǎo)入操作示例
這篇文章主要介紹了mysql數(shù)據(jù)庫創(chuàng)建賬號(hào)、授權(quán)、數(shù)據(jù)導(dǎo)出、導(dǎo)入操作,結(jié)合實(shí)例形式分析了MySQL數(shù)據(jù)庫賬號(hào)創(chuàng)建、權(quán)限控制、數(shù)據(jù)導(dǎo)入導(dǎo)出等具體實(shí)現(xiàn)方法與操作注意事項(xiàng),需要的朋友可以參考下2020-01-01Linux系統(tǒng)下修改mysql字符集為UTF8步驟
大家好,本篇文章主要分享的是Linux系統(tǒng)下修改mysql字符集為UTF8步驟,感興趣的同學(xué)趕快來看一看吧,對(duì)你有幫助的話記得收藏一下吧,方便下次瀏覽2021-12-12mysql存儲(chǔ)過程之錯(cuò)誤處理實(shí)例詳解
這篇文章主要介紹了mysql存儲(chǔ)過程之錯(cuò)誤處理,結(jié)合實(shí)例形式詳細(xì)分析了mysql存儲(chǔ)過程錯(cuò)誤處理相關(guān)原理、操作技巧與注意事項(xiàng),需要的朋友可以參考下2019-12-12mysql數(shù)據(jù)存儲(chǔ)過程參數(shù)實(shí)例詳解
這篇文章主要介紹了mysql數(shù)據(jù)存儲(chǔ)過程參數(shù)實(shí)例詳解,小編覺得挺不錯(cuò)的,這里分享給大家,供需要的朋友參考。2017-10-10