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%';
show variables like '%binlog_format%';
show variables like 'server_id';
select version();
2)设置mysql配置参数
需要的配置为:
log-bin=mysqlbin.log
binlog_format=ROW
server-id=1
我这边需要配置的是开启binlog
编辑my.ini (linux下是my.conf文件)
重启mysql服务