Clickhouse新特性之MaterializeMySQL 數據庫引擎


Clickhouse 20.8.2.3版本新增加了一個叫MaterializeMySQL的 數據庫引擎,該引擎用於快速同步mysql 數據庫(必須是5.7以上版本),話不多說,趕快上車吧

  • 安裝並運行clickhouse(ps:使用docker 安裝最方便)

  • 用客戶端登錄,輸入 "clickhouse-client"即進入客戶端界面 。由於MaterializeMySQL目前只是實驗版本,所以需要在客戶端打開MaterializeMySQL 這個功能 : SET allow_experimental_database_materialize_mysql = 1

    若是上面這樣,便設置成功

  • clickhouse 是借助mysql的gtid 進行同步的,所以需要提前打開mysql的gtid_mode哦。mysql5.7以前打開gtid_mode 需要重啟數據庫,但是5.7以后就可以熱更改了。
    具體設置可以參考我要配置mysql主從 執行 show global variables like '%gtid_%';

    可以看到gtid_mode是開啟的,這個時候要重啟CK

  • 接下來就可以同步數據庫拉,繼續輸入:CREATE DATABASE db_name ENGINE = MaterializeMySQL('host.docker.internal:3306','yourmysqldb','root','yourpassword');
    ps:
    db_name:你想要在ck里面創建的數據庫名字,一般和mysql的數據庫名對應
    host.docker.internal:docker 容器訪問宿主機的localhost 即 127.0.0.1
    yourmysqldb:你想要同步的mysql 數據庫
    root:登陸mysql的用戶
    yourpassword:登陸mysql的數據庫密碼

  • 如果顯示OK表示同步OK啦,和mysql一樣可以查看通過過來的數據,show databases,use yourdatabase,select ...一頓操作猛如虎,一看戰績0-5(*如果同步的表沒有創建主鍵,ck就會報DB:Exception,這很坑爹)

  • 最后CK 在國內用得比較少,本人正在踩坑中。。。未完,待續。。。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM