我想从mysql转储导入clickhouse。我试过查阅官方文件,但什么也找不到。我试过在堆栈溢出回答之后使用csv导入。谢谢你的帮助。我有一个ubuntu 16.04 lts。
yws3nbqq1#
在小数据上,导出到tsv会起作用,但总体上不会起作用,因为只导出会花费很多时间。在这种情况下,您需要直接从stdout导入,clickhouse知道如何完美地进行导入。示例代码:
mysql -u user -ppass --compress -ss -e "SELECT * FROM table WHERE id >0 AND id <=1000000" db_name | sed 's/\"//g;s/\t/","/g;s/^/"/;s/$/"/' | clickhouse-client --query="INSERT INTO db_name.table FORMAT CSV"
使用这种方法,我在clickhouse中7-10小时内导入500GB和19亿行
htzpubme2#
您可以使用mysql命令行将数据从mysql导出到tsv文件:
mysql -Bse "select * from TABLE_NAME" > table.tsv
然后将数据导入clickhouse:
cat table.tsv | clickhouse-client --query="INSERT INTO TABLE_NAME FORMAT TabSeparated"
2条答案
按热度按时间yws3nbqq1#
在小数据上,导出到tsv会起作用,但总体上不会起作用,因为只导出会花费很多时间。
在这种情况下,您需要直接从stdout导入,clickhouse知道如何完美地进行导入。
示例代码:
使用这种方法,我在clickhouse中7-10小时内导入500GB和19亿行
htzpubme2#
您可以使用mysql命令行将数据从mysql导出到tsv文件:
然后将数据导入clickhouse: