clickhouse从mysql同步数据
MySQL引擎
MySQL引擎用于将远程的MySQL服务器中的表映射到clickhouse中,并允许对表进行insert和select操作,以方便在clickhouse与MySQL之间进行数据交换.
MySQL数据库引擎会将对其的查询转换为MySQL语法并发送到MySQL服务器中,因此以执行诸如SHOW TABLES 或 SHOW CREATE TABLE之类的操作.
但无法对其执行以下操作:
- ATTACH/DETACH
- DROP
- RENAME
- CREATE TABLE
- ALTER
CREATE DATABASE:
CREATE DATABASE [IF NOT EXISTS] db_name [ON CLUSTER cluster] ENGINE = MySQL('host:port','database','user','password')
PS:该database就是MySQL的database的映射,MySQL中的数据发生变化,clickhouse中的数据也会跟着变化.
单次单表同步
此为将数据从MySQL的某表中全量同步到clickhouse中,clickhouse中的数据不会随MySQL中数据的变化而变化.
CREATE TABLE tmp ENGINE = MergeTree ORDER BY id AS SELECT * FROM mysql('hostip:3306','db','table'