clickhouse实时同步mysql数据
clickhouse-client -m --password ‘admin’
使用 MaterializedMySQL 引擎实时同步
1 | SET allow_experimental_database_materialized_mysql = 1; |
安装配置 MySQL 同步用户
- 创建用户
- 全局赋予 replication client,replication slave, reload 权限
- 对同步库 db 赋予 select 权限
如果赋予权限不正确,会报错,
1 | CREATE USER 'clickhouse'@'%' IDENTIFIED BY 'alitrack'; |
遇到没有主键的表,
如果没有初始化完成,删掉没有主键的表,直接重启clickhouse就可以了
如果已经初始化,修改GTID,再重启。
vim /data/clickhouse/metadata/dbtest/.metadata 修改GTID 跳过 重启clickhouse服务
– 不支持的数据类型
MaterializeMySQL don’t support the json,bit,time data type
–如果没有生成 .metadata 文件 查看日志, 可能是不支持的类型 ,或者没有主键
1 | /var/log/clickhouse-server/clickhouse-server.err.log |