golang clikchouse常用命令及macos上的docker内部署指西

本文介绍了如何在MacOS上通过Docker部署ClickHouse,详细阐述了下载、启动容器、进入命令行模式的过程,并列举了ClickHouse的常用命令,包括查看数据库、创建表、导入导出CSV文件等。同时,还涉及了远程访问配置及与本地文件的交互操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.ClikcHouse

目前ClikcHouse只能在 Linux, x86_64 with SSE 4.2下运行,其他系统只能使用万能又无敌的docker。

2.开始使用Docker安装

2.1 下载

docker pull yandex/clickhouse-client
docker pull yandex/clickhouse-server

在终端输入上面2条命令后会进行漫长的下载过程
在这里插入图片描述

2.2 启动

都成功后就可以使用下面的命令启动了

docker run -d --name ch-server --ulimit nofile=262144:262144 -p 8123:8123 -p 9000:9000 -p 9009:9009 yandex/clickhouse-server

如果成功就会返回一个容器ID,你也可以使用docker ps -a查看,如下图:
在这里插入图片描述

2.3 进入容器

确定名称ch-server后可以使用下面的命令进入容器:

docker exec -i -t ch-server /bin/bash 

docker exec:在运行的容器中执行命令,操作的对象是 容器
docker run :根据镜像创建一个容器并运行一个命令,操作的对象是 镜像;
这样就进入容器了,前面就是你的容器ID
在这里插入图片描述

2.4 进入clickhouse命令行模式

使用clickhouse-client命令 进入clickhouse命令行模式
在这里插入图片描述
这样你就成功的在容器中部署了ClickHouse,进入了操作界面。

3 常用命令

下面是ClickHouse的一些常用命令

查看所有的数据库
show databases 
创建表
CREATE TABLE IF NOT EXISTS example (
			country_code FixedString(2),
			os_id        UInt8,
			browser_id   UInt8,
			categories   Array(Int16),
			action_day   Date,
			action_time  DateTime
		) engine=Memory
重命名表
rename table tbl1 to btl2;
删除表
drop table tbl;
添加列
alter table dsp_statis add column cost UInt32 default 0;
查看表结构
desc tbl;
执行 SQL 文件
clickhouse-client -d 数据库 --multiquery < /tmp/your.sql.file
ClickHouse导入,导出 CSV 文件数据

注意:导入导出的工作是在容器内,不用进入ClickHouse命令行模式内
也就是在下面这个目录:
在这里插入图片描述
导出CSV 文件:clickhouse-client --query=" select * from example format CSV" > /tmp/1.csv
导入CSV 文件:cat /tmp/2.csv | clickhouse-client --query="INSERT INTO bindo FORMAT CSV";

4 远程暴露端口,云服务器访问

clickhouse 允许远程访问,将clickhouse的配置文件拷贝出来

docker cp clickhouse-server:/etc/clickhouse-server/ /etc/clickhouse-server/

修改 /etc/clickhouse-server/config.xml 中 65行 注释去掉<listen_host>::</listen_host>

用自定义配置文件启动容器

docker run -d --name docker-clickhouse --ulimit nofile=262144:262144 -p 8123:8123 -p 9000:9000 -p 9009:9009 -v /etc/clickhouse-server/config.xml:/etc/clickhouse-server/config.xml yandex/clickhouse-server

5 docker和本机文件的导入导出

从docker复制文件到本地

docker container cp 64f4da13c199:/tmp/1.csv /Users/xxx/Desktop

把本地文件复制到docker

docker cp /Users/xxx/Desktop/1.csv 64f4da13c199:/tmp/2.csv

其中/Users/xxx/Desktop是你本机文件所在的目录地址,
64f4da13c199:/tmp/2.csv前面是你的容器ID,后面是指在容器中的地址

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值