clickhouse做mysql从库_ClickHouse MaterializeMySQL 数据库引擎

本文介绍了如何使用ClickHouse的MaterializeMySQL引擎将MySQL数据库实时物化,提升数仓查询性能和数据同步时效性。通过配置MySQL的binlog和ClickHouse的参数,实现了全量和增量数据同步。测试了插入、更新、删除、DDL操作,证明了OLTP和OLAP业务的完美融合。
摘要由CSDN通过智能技术生成

ClickHouse 20.8将新增 MaterializeMySQL引擎 ,可通过binlog日志实时物化mysql数据,极大提升了数仓的查询性能和数据同步的时效性;原有mysql中承担的数据分析工作 可交由clickhouse去做,这么做可显著降低线上mysql的负载,从此OLTP与OLAP业务实现完美融合。

MaterializeMySQL database engine 支持的情况:

1.支持mysql 库级别的数据同步,暂不支持表级别的。

2.MySQL 库映射到clickhouse中自动创建为ReplacingMergeTree 引擎的表

3.支持全量和增量同步,首次创建数据库引擎时进行一次全量复制,之后通过监控binlog变化进行增量数据同步

4.支持的MySQL版本:5.6 、5.7、8.0

5.支持的操作:insert,update,delete,alter,create,drop,truncate等大部分DDL操作

6.支持的MySQL复制为GTID复制

我的环境:

RedHat 7

ClickHouse 20.8.3.18

Mysql  5.7(window上安装的mysql服务)

1)查看当前mysql配置情况

show variables like '%log%bin%';

ad41ba9a9ac1648fffe8a5cc13a6f1f0.png

show variables like '%binlog_format%';

fd92616416f2bbee18a69e1bf77bde0f.png

show variables like 'server_id';

45d9524099e483a07642d8a1d0199456.png

select version();

1bdaabfd9e330981dcccb69e93446314.png

2)设置mysql配置参数

需要的配置为:

log-bin=mysqlbin.log

binlog_format=ROW

server-id=1

我这边需要配置的是开启binlog

编辑my.ini   (linux下是my.conf文件)

24a31cfb0282c0bf3bf20622ed290c91.png

重启mysql服务

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值