clickhouse 同步mysql数据

clickhouse 版本

docker 21.12.3.32
安装步骤请看上篇文章 docker 部署 clickhouse

配置 mysql 开启bin log

config

[mysqld]
server_id=1
log-bin=binlog
binlog_format=ROW

## 需要产生 bin log 日志的 库名 ,默认为空 所有库都产生bin log 记录
binlog_do_db= mydatebase1
binlog_do_db= mydatebase2

查看验证

SHOW VARIABLES LIKE '%log%bin%';
show variables like 'server_id';

在这里插入图片描述

配置 mysql GTID模式

#  需要 MySQL 5.7 以上 不用重启 启用
 SET GLOBAL ENFORCE_GTID_CONSISTENCY = 'WARN';
 SET GLOBAL ENFORCE_GTID_CONSISTENCY = 'ON';
 SET GLOBAL GTID_MODE = 'OFF_PERMISSIVE';
 SET GLOBAL GTID_MODE = 'ON_PERMISSIVE';
 SET GLOBAL GTID_MODE = 'ON';

## 重启 启用 
[mysqld]
gtid_mode=on
enforce_gtid_consistency=on

验证

show variables like 'gtid_mode';
show variables like 'ENFORCE_GTID_CONSISTENCY';

在这里插入图片描述

idea 连接 clickhouse

在这里插入图片描述

clickhouse 开启物化引擎

set allow_experimental_database_materialized_mysql=1;

select * from system.settings where name ='allow_experimental_database_materialized_mysql';

clickhouse中创建同步表

CREATE DATABASE [IF NOT EXISTS] db_name [ON CLUSTER cluster]
ENGINE = MaterializedMySQL(‘host:port’, [‘database’ | database], ‘user’, ‘password’) [SETTINGS …]
[TABLE OVERRIDE table1 (…), TABLE OVERRIDE table2 (…)]

CREATE DATABASE test_bi
ENGINE = MaterializeMySQL('localhost:3306', 'test_bi', 'root', 'root')
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值