測試初始化
clickhouse-client -m
create database ifnot exists test;
use test;
drop table test;
create table test(id uint8, text string, created datetime) engine=tinylog;
shell命令列執行
echo -ne "1, 'some text', '2016-08-14 00:00:00'\n2, 'some more text', '2016-08-14 00:00:01'" | clickhouse-client --database=test --query="insert into test format csv";
cat <<_eof | clickhouse-client --database=test --query="insert into test format csv";
3, 'some text', '2016-08-14 00:00:00'
4, 'some more text', '2016-08-14 00:00:01'
_eof
[root@ch2 /]# clickhouse-client --query="select * from test.test
" > /tmp/test.tsv
[root@ch2 /]# cat /tmp/test.tsv
1 some text 2016-08-14
00:00:00
2 some more text 2016-08-14
00:00:01
3 some text 2016-08-14
00:00:00
4 some more text 2016-08-14
00:00:01
--multiquery 除了 insert
[root@ch2 /]# clickhouse-client --multiquery --query="select * from test.test limit 1;select * from test.test limit 1;
"1 some text 2016-08-14
00:00:00
1 some text 2016-08-14
00:00:00
批模式下的預設資料格式為tab空格分隔,可使用format指定格式
使用--multiline或-m引數,允許執行多行的查詢
退出客戶端的方式,按ctrl + d 或 ctrl + c 或 q; quit; exit;
指定引數,格式為:
name:佔位識別符號。通過clickhouse-client引數指定,格式為--param_= value 。
data type:指定引數值的資料型別,例如:uint8、string等。
clickhouse-client --param_myid=1 --database=test --query="select * from test where id>"
clickhouse-client --param_parname="[1, 2]" -q "select * from table where a = "
clickhouse-client --query="select * from test.test format tabseparated" > file.tsv
指定資料庫
clickhouse-client --database=test --query="select * from test where id>1"
配置檔案
clickhouse-client查詢配置檔案的順序:
1)通過--config-file指定的配置檔案。
2)./clickhouse-client.xml
3)~/.clickhouse-client/config.xml
4)/etc/clickhouse-client/config.xml
# ll /etc/clickhouse-client/total4drwxr-xr-x 2 root root 6 jul 31
09:46
conf.d
-rw-r--r-- 1 root root 1568 may 18
12:26 config.xml
修改預設配置埠
不指定埠時,預設有以下埠
# netstat -tunlp|grep clickhousetcp 00
127.0.0.1:9000
0.0.0.0:* listen 340/clickhouse-serv
tcp 00
127.0.0.1:9004
0.0.0.0:* listen 340/clickhouse-serv
tcp 00
127.0.0.1:9009
0.0.0.0:* listen 340/clickhouse-serv
tcp 00
127.0.0.1:8123
0.0.0.0:* listen 340/clickhouse-serv
vim /etc/clickhouse-server/config.xml
9300
重啟clickhouse
systemctl restart clickhouse-server.service再次連線需要指定--port
[root@ch2 /]# clickhouse-client --port 9300clickhouse client version
20.3.9.70
(official build).
connecting to localhost:
9300
as user default
.connected to clickhouse server version
20.3.9 revision 54433
.ch2 :) q;
bye.
[root@ch2 /]#
設定預設的客戶端連線埠
vim /etc/clickhouse-client/config.xml
9300
這樣就可以像以前一樣,不用每次都輸入埠;注釋中給了五個可設定的薦,host/port/user/database... 都可以設定預設值,不需要每次都輸入
[root@ch2 /]# clickhouse-clientclickhouse client version
20.3.9.70
(official build).
connecting to localhost:
9300
as user default
.connected to clickhouse server version
20.3.9 revision 54433
.ch2 :)
ch2 :)
ch2 :) q;
bye.
使用tcp select實現客戶端與客戶端的通訊
使用多路復用實現客戶端與客戶端進行通訊 原理 客戶端只要一連上伺服器,立馬給伺服器傳送使用者名稱,然後在服務端將newsocketfd 存放在同乙個結構體中,客戶端先給伺服器傳送資料,然後通過伺服器 給客戶端。伺服器先會查詢對應名字的 newsocketfd 然後向該 newsocketfd 中寫入...
瘦客戶端 胖客戶端 智慧型客戶端
胖客戶端模式將應用程式處理分成了兩部分 由使用者的桌面計算機執行的處理和最適合乙個集中的伺服器執行的處理。乙個典型的胖客戶端包含乙個或多個在使用者的pc上執行的應用程式,使用者可以檢視並運算元據 處理一些或所有的業務規則 同時提供乙個豐富的使用者介面做出響應。伺服器負責管理對資料的訪問並負責執行一些...
msysgit(git 客戶端使用)
3 在學習git基本命令 本地操作 發布github 遠端倉庫等 4 遇到的問題 ssh t github github.com 提示connection refused port 22 的錯誤 解決方法 在 ssh目錄下增加配置檔案 config 內容 host user abc123 hostn...