ClickHouse 客戶端命令

文章目錄

  • 一、簡介
  • 二、常用命令
    • 1、連接命令
    • 2、SQL語法
      • (1)查看數據庫列表
      • (2)查看當前使用的數據庫
      • (3)查看數據庫中表列表
      • (4)創建數據庫
      • (5)創建表
      • (6)查看表結構
      • (7)刪除表
      • (8)刪除庫
      • (9)清空數據
      • (10)插入數據
      • (11)查詢
      • (12)重命名表
      • (13)添加列
      • (14)查看分區信息
      • (15)刪除分區
      • (16)查看后臺進程
      • (17)殺死后臺進程
    • 3、導入csv數據
    • 4、導入數據時忽略錯誤
    • 5、導出csv數據
    • 6、執行sql文件


一、簡介

進入ClickHouse安裝目錄下的bin目錄下,執行如下命令:

./clickhouse-client --help

執行結果(只列舉常用的參數):

--host, -h        – 服務端的 host 名稱, 默認是 'localhost'。 您可以選擇使? host 名稱或者 IPv4 或 IPv6 地址。 
--port            – 連接的端?,默認值: 9000。注意 HTTP 接?以及 TCP 原?接?是使?不同端?的。 
--user, -u        – ?戶名。 默認值: default。 
--password        – 密碼。 默認值: 空字符串。 
--query, -q       – ?交互模式下的查詢語句. 
--database, -d    – 默認當前操作的數據庫. 默認值: 服務端默認的配置 (默認是 default )。 
--multiline, -m   – 如果指定,允許多?語句查詢(Enter 僅代表換?,不代表查詢語句完結)。 
--multiquery, -n  – 如果指定, 允許處理?逗號分隔的多個查詢,只在?交互模式下?效。 
--format, -f      – 使?指定的默認格式輸出結果。 
--vertical, -E    – 如果指定,默認情況下使?垂直格式輸出結果。這與 '--format=Vertical' 相同。在這種格式中,每個值都在單獨的?上打印,這種?式對顯示寬表很有幫助。 
--time, -t        – 如果指定,?交互模式下會打印查詢執?的時間到 'stderr' 中。 
--stacktrace      – 如果指定,如果出現異常,會打印堆棧跟蹤信息。 
-config-file      – 配置?件的名稱。
...

二、常用命令

1、連接命令

./clickhouse-client -h [ip] --port [端口號] -u [用戶名] --password [密碼]

ClickHouse默認端口號為:9000
ClickHouse默認用戶名為:default
ClickHouse默認密碼為:空

如果ClickHouse的端口號、用戶名、密碼都使用的默認值,那么可用如下連接命令:

./clickhouse-client

2、SQL語法

(1)查看數據庫列表

show databases;

(2)查看當前使用的數據庫

select currentDatabase();

(3)查看數據庫中表列表

show tables;

(4)創建數據庫

create database test;

(5)創建表

-- 創建一個表(建表的時候指定數據類型,建表的時候一定要指定表引擎,要么使用-m,要么使用反斜杠,不然不能寫多行)
create  table if not exists test.t1 ( \id UInt16,name String \
) ENGINE = Memory;

(6)查看表結構

desc test.t1;

(7)刪除表

drop table if exists test.t1;

(8)刪除庫

drop database test;

(9)清空數據

truncate table test.t1;

(10)插入數據

insert into test.t1 (id, name) values (1, 'zhangsan'), (2, 'lishi');

(11)查詢

select * from test.t1;

(12)重命名表

rename table tab1 to tab2;

(13)添加列

alter table tbl add column cost UInt32 default 0;

(14)查看分區信息

select partition, name, active from system.parts WHERE table = 't1';

(15)刪除分區

alter table xxx drop partition '2018-08-08';

默認情況下,Clickhouse 不允許刪除分區或表的大小大于 50GB 的分區或表。可以通過修改server的配置文件來永久配置,也可以臨時設置一下來刪除而不用重啟服務。

永久配置:更改config.xml配置文件。

<!-- <max_table_size_to_drop>0</max_table_size_to_drop> -->
<!-- <max_partition_size_to_drop>0</max_partition_size_to_drop> -->	 

0表示不限制,或者你可以設置為你想限制的最大的大小。


(16)查看后臺進程

-- 這個命令和mysql是一樣的
show processlist
-- 如果進程太多,也可用通過查詢系統表 processes,
select * from system.processes
-- 指定主要關心字段
select user,query_id,query,elapsed,memory_usage from system.processes;

(17)殺死后臺進程

--  通過上面指令獲取到進程相關信息后,可以用query_id條件kill進程
KILL QUERY WHERE query_id='2e33f3ae-f7e1-4c10-af8c-af96aff20837' 
-- 殺死default用戶下的所有進程
KILL QUERY WHERE user='default'

3、導入csv數據

cat xxx.csv | clickhouse-client --query="insert into tablename format CSV"

指定分隔符:cat xxx.csv | clickhouse-client --format_csv_delimiter=“|” --query=“insert into tablename format CSV”

如果csv文件有列名,使用CSVWithNames,解析時,第一行會被直接忽略。

注意:query后面的=不能有空格。


4、導入數據時忽略錯誤

./clickhouse-client --input_format_allow_errors_num=100000 --input_format_allow_errors_ratio=0.2
  • --input_format_allow_errors_num:是允許的錯誤數;

  • --input_format_allow_errors_ratio:是允許的錯誤率,范圍是 [0-1];


5、導出csv數據

./clickhouse-client --query="select * from test.t1 format CSV" > test.csv

6、執行sql文件

./clickhouse-client --user xxx --password xxx --multiquery <  /root/temp.sql

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/446674.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/446674.shtml
英文地址,請注明出處:http://en.pswp.cn/news/446674.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

2000年考研英語閱讀理解文章三

文章詳細解析 注意點 1.當作者在文章中寫到:實際問題是:我們從根本上改變了嗎? 說明:我們沒有發生根本上的改變,作者不同意前文中的未來派詩歌 知識點 ----單詞 unhampered adj無阻礙的 finite adj有限的 ink n墨水 corresponding adj相應的,符合的 upsetting adj令人生厭…

SpringBoot 集成Mybatis

文章目錄一、創建SpringBoot項目二、添加Mybatis相關依賴三、數據源配置四、創建事務的模型實體類五、創建和數據庫交互聯系的映射關系類六、創建業務接口和實現類七、創建控制器類八、請求驗證一、創建SpringBoot項目 如何創建詳見&#xff1a;IDEA 創建 SpringBoot 項目 二、…

C++primer 第 3 章 字符串、向量和數組 3.1 命名空間的using聲明 3.2標準庫類型string

引言 除了第2章介紹的內置類型之外,C語言還定義了 -個內容豐富的抽象數據類型庫。其中,string和 vector是兩種最重耍的標準庫類型&#xff0c;前者支持可變長字符串&#xff0c;后者則 表示可變長的集合。還有…種標準庫類型是迭代器&#xff0c;它是string和vector的配套類型…

ClickHouse 四舍五入函數

文章目錄一、round(x[,N])二、floor(x[,N])三、ceil(x[,N]),ceiling(x[,N])四、trunc(x[, N]), truncate(x[, N])一、round(x[,N]) 說明&#xff1a;將值取整到指定的小數位數&#xff0c;該函數按順序返回最近的數字。 語法&#xff1a; round(expression [, decimal_place…

codeforces 59A-C語言解題報告

59A題目網址 題目解析 1.輸入字符串,如果大寫字母最多,則全部輸出為大寫;如果小寫字母多或大小寫字母一樣多,則全部輸出為小寫 舉例: 輸入: maTRIx 輸出: matrix 2.使用a,b兩個變量去記錄大小寫字母的數量 代碼 #include<stdio.h> #include<stdlib.h> #includ…

C++primer 第 3 章 字符串、向量和數組 3 . 3 標準庫類型vector

標準庫類型vector表示對象的集合&#xff0c;其中所有對象的類型都相同。集合中的每個對象都有一個與之對應的索引&#xff0c;索引用于訪問對象。因為vector"容納著”其他對象&#xff0c;所以它也常被稱作容器(container).第 II部將對容器進行更為詳細的介紹。 要想使用…

SpringBoot AOP切面實現

文章目錄一、AOP簡介二、AOP體系與概念三、AOP實例1、創建SpringBoot工程2、添加依賴3、AOP相關注解3.1、Aspect3.2、Pointcut3.2.1、execution()3.2.2、annotation()3.3、Around3.4、Before3.5、After3.6、AfterReturning3.7、AfterThrowing一、AOP簡介 AOP&#xff08;Aspec…

英語口語-文章朗讀Week8 Friday

文章 It is a phenomenon that people are losing trust in each other in today’s society. Some people become selfish,and for interest, they are likely to betray their colleagues,friends, and even their relatives. They tend to cater to those who can benefit …

C++primer 第 3 章 字符串、向量和數組 3 . 4 迭代器介紹

3.4迭代器介紹 我們已經知道可以使用下標運算符來訪問string對象的字符或vector對象的元素&#xff0c;還有另外一種更通用的機制也可以實現同樣的目的&#xff0c;這就是迭代器&#xff08;iterator&#xff09;。在第II部分中將要介紹&#xff0c;除了vector之外&#xff0c…

ClickHouse 函數

文章目錄一、日期函數1、時間或日期截取函數&#xff08;返回非日期&#xff09;2、時間或日期截取函數&#xff08;返回日期&#xff09;3、日期或時間日期生成函數二、類型轉化類函數1、精度保留&#xff08;非四舍五入&#xff09;2、字符串轉化為整數&#xff08;非整數的字…

英語口語-文章朗讀Week9 TuesDay

朗讀文章 People living in ancient times had no alternative but to do housework manually. They fire the wood when they cook,they hand wash clothes with hands; they sweep the floor with brooms. Now, modern inventions come as a great relief to people. We co…

SpringBoot @Value注解

目錄一、非配置文件注入1、注入普通字符串2、注入JAVA系統變量3、注入表達式4、注入其他Bean屬性5、注入文件資源6、注入URL資源二、通過配置文件注入1、注入普通字符串2、注入基本類型3、注入數組類型4、注入List類型5、注入Map類型一、非配置文件注入 1、注入普通字符串 直…

C++primer 第 3 章 字符串、向量和數組 3 . 5 數組

3.5數組 數組是一種類似于標準庫類型vector&#xff08;參見3.3節&#xff0c;第86頁&#xff09;的數據結構&#xff0c;但是在性能和靈活性的權衡上又與vector有所不同。與vector相似的地方是&#xff0c;數組也是存放類型相同的對象的容器&#xff0c;這些對象本身沒有名字…

codeforces 122A-C語言解題報告

122A題目網址 題目解析 1.輸入數字(在1000以內),若能被4,7幸運數整除或只含4,7則輸出YES,否則輸出NO 舉例: 輸入: 107 輸出: NO 2.解題關鍵: 1)使用列舉法,把所有符合的幸運數列出來(int number[]) 1—2 2–224 3–22*28 24814個 2)若n是幸運數中的一個或n%幸運數0,則為YES…

SpringBoot @Value給靜態變量注入值

文章目錄一、簡介二、Value給靜態變量注入值方案一&#xff1a;set()方法設置方案二&#xff1a;PostConstruct注解修飾的方法中進行賦值三、總結一、簡介 SpringBoot 中給普通變量注入值只需在變量上添加 Value 注解即可。 application.properties 配置文件有如下配置&#…

C++primer 第 4 章 表達式 4.1基礎 4 . 2 算術運算符 4 .3 邏輯和關系運算符 4 . 4 賦值運算符 4 .5 遞增和遞減運算符 4.6成員訪問運算符

表達式由一個或多個運算對象(operand)組成&#xff0c;對表達式求值將得到一個結果(result)字面值和變量是最簡單的表達式(expression),其結果就是字面值和變量的值。把一個運算符(operator)和一個或多個運算對象組合起來可以生成較復雜的表達式 4.1基礎 有幾個基礎概念對表達…

codeforces 266B-C語言解題報告

266B題目網址 題目解析 輸入n,t,排隊情況s,輸出第t次循環后,排隊情況 舉例: 輸入: 5 1 BGGBG 輸出: GBGGB 2.輸入的n代表排隊的人數,t代表整個循環t次之后再輸出結果 3.注意點: 使用while()大循環去控制t次的循環,使用for()內層循環去遍歷整個字符串 如果if(s[j]‘B’&…

Nginx Location配置詳解

目錄一、語法二、匹配順序三、root 與 alias 的區別四、server 和 location 中的 root一、語法 Location 是 Nginx 中一個非常核心的配置&#xff0c;關于Location&#xff0c;舉個簡單的配置例子&#xff1a; server {listen 80;server_name 10.0.7.115;location / {root /d…

英語口語-文章朗讀Week9 Wednesday

英語文章 Birds of the same species flock together&#xff0c; People tend to look for someone like themselves to be friends. But having the same interests is not the only standard when we are seeking friends. In most cases, especially for adults, people l…

C++primer 第 4 章 表達式 4.7條件運算符 4.8位運算符 4.9 sizeof運算符 4.10逗號運算符 4.11類型轉換 4 . 1 2 運算符優先級表

4.7條件運算符 條件運算符(?&#xff1a;)允許我們把簡單的if else邏輯嵌入到單個表達式當中&#xff0c;條件運算符按照如下形式使用&#xff1a;cond ? expr1 : expr2;其中cond是判斷條件的表達式&#xff0c;而expr1和expr2是兩個類型相同或可能轉換為某個公共類型的表達…