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

2.在打開的連接信息配置頁面依次輸入需要的配置信息

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

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

4.在打開的連接信息配置頁面依次輸入需要的配置信息,配置完成后測試連接保存即可。

第三步:選擇同步模式-全量/增量/全+增
進入Tapdata Cloud 操作后臺任務管理頁面,點擊添加任務按鈕進入任務設置流程

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

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

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

點擊任務名稱可以打開任務詳情頁面,可以查看任務詳細信息。

點擊任務監(jiān)控可以打開任務執(zhí)行詳情頁面,可以查看任務進度/里程碑等的具體信息。

第四步:進行數(shù)據(jù)校驗
一般同步完成后,我都習慣性進行一下數(shù)據(jù)校驗,防止踩坑。
Tapdata Cloud 有三種校驗模式,我常用最快的快速count校驗 ,只需要選擇到要校驗的表,不用設置其他復雜的參數(shù)和條件,簡單方便。

如果覺得不夠用,也可以選擇表全字段值校驗 ,這個除了要選擇待校驗表外,還需要針對每一個表設置索引字段。

在進行表全字段值校驗時,還支持進行高級校驗。通過高級校驗可以添加JS校驗邏輯,可以對源和目標的數(shù)據(jù)進行校驗。

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

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

