全量从 MySQL 导入数据到 ClickHouse(并建表)
1 | clickhouse-client -m -u default --password 123456 --query="CREATE TABLE clickhouse_database_name.clickhouse_table_name ENGINE = MergeTree ORDER BY id AS SELECT * FROM mysql('ip:port', 'database_name', 'table_name','name', 'password');" |
ClickHouse 数据导出到 CSV 文件
1 | clickhouse-client -h 127.0.0.1 --database="db" --query="SELECT * FROM db.test_table FORMAT CSV" > test.csv |
CSV 文件导入到 ClickHouse 数据库
1 | clickhouse-client -h 127.0.0.1 --database="db" --query="INSERT INTO db.test_table FORMAT CSV" < ./test.csv |
建表示例
关于建表时指定的 ORDER BY:
ORDER BY决定了每个分区中数据的排序规则PRIMARY KEY决定了一级索引(primary.idx)ORDER BY可以指代PRIMARY KEY,通常只用声明ORDER BY即可
1 | CREATE TABLE database_name.table_name ( |
ALTER 字段
1 | -- 追加新字段 |
ALTER 表
1 | -- 修改数据表名称 |
命令行批量执行 SQL
1 | clickhouse-client --user 用户名 --password 密码 -d 数据库 --multiquery < /root/temp.sql |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 小五的个人杂货铺!
