clickhouse数据导出导入

clickhouse数据导出导入

CSV格式

导出为csv格式

shell 复制代码
# 不带表头
clickhouse-client -h 127.0.0.1 --database="db" --query="select * from db.test_table FORMAT CSV" > /tmp/data.csv
# 带表头
clickhouse-client -h 127.0.0.1 --database="db" --query="select * form db.test_table format CSVWithNames" > /tmp/data.csv

导入为csv格式

shell 复制代码
# 不带表头
clickhouse-client -h 127.0.0.1 --database="db" --query="insert into db.test_table FORMAT CSV" < /tmp/data.csv
# 带表头
clickhouse-client -h 127.0.0.1 --database="db" --query="insert into db.test_table format CSVWithNames" < /tmp/data.csv

JSON格式

导出为json格式

shell 复制代码
clickhouse-client -h 127.0.0.1 --database="db" --query="select * form db.test_table format JSONEachRow" > /tmp/data.json

导入为json格式

shell 复制代码
clickhouse-client -h 127.0.0.1 --database="db" --query="insert into db.test_table format JSONEachRow" < /tmp/data.json

SQL格式

导出为SQL

shell 复制代码
#table=table_name

table='db_name.table_name'
columns='column1,column2,column3,...'
clickhouse-client --port=29010 --user=账号 --password=密码 --database=库名 -q \ "SELECT ${columns} FROM ${table} FORMAT Values"|sed -r -e 's#\),\(#\)\n\(#g' -e "s/^/INSERT INTO ${table}(${columns}) VALUES /g" -e 's/$/;/g' -e "s/'[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}:[0-9]{2}.[0-9]{0,3}'/now()/g" > /tmp/data.txt
相关推荐
我是一颗柠檬7 小时前
【MySQL全面教学】MySQL面试高频考点汇总Day15(2026年)
数据库·后端·mysql·面试
凯瑟琳.奥古斯特7 小时前
高阶子查询题目精炼
开发语言·数据库·python·职场和发展·数据库开发
身如柳絮随风扬7 小时前
数据库读写分离:从原理到实战,构建高并发系统
数据库·mysql
提笔了无痕8 小时前
RAG存储策略中.md格式的切片与存储怎么处理
数据库·ai·rag
陳土9 小时前
DuckDB精读——基于Getting started with DuckDB
数据库·oracle
凯瑟琳.奥古斯特9 小时前
数据库原理选择题精选
数据库·python·职场和发展
曹牧9 小时前
C#:主线程能够捕获到子线程中的异常
开发语言·数据库·c#
朝阳58110 小时前
MongoDB 副本集从零搭建到生产可用
数据库·mongodb
雨辰AI10 小时前
SpringBoot3 整合达梦 DM9 超详细入门实战|从零搭建可直接上线
数据库·微服务·架构·政务