centos7安裝clickhouse並設置用戶名密碼案例詳解
ClickHouse是近年來備受關註的開源列式數據庫,主要用於數據分析(OLAP)領域,由俄羅斯最大的搜索引擎公司Yandex(相當國內的百度)於2016年開源。Yandex有著許多數據分析的業務,其中數據量最大的業務,就是Yandex.Metrica(相當於百度的百度統計),這也就是ClickHouse出現的原因。由於其出色的性能,近年來發展非常迅猛,國內很多大廠都在生產環境中廣泛使用。
社區熱度方面,2016年開源clickhouse熱度非常之高,在GitHub上的star已有13.9k。
1.準備
騰訊雲服務器:centos7系統
ClickHouse版本: 20.5.2
2.安裝
2.1 首先安裝一下curl
yum install -y curl # 添加clickhouse源 curl -s https://packagecloud.io/install/repositories/altinity/clickhouse/script.rpm.sh | bash
2.2 安裝server 和 client,這個過程需要花點時間,多等待一下就好瞭
yum install -y clickhouse-server clickhouse-client # 檢查是否安裝成功 yum list installed 'clickhouse*' # 啟動clickhouse systemctl start clickhouse # 進入cli,啟動clickhouse客戶端 clickhouse-client
2.4 clickhouse的目錄結構
- /etc/clickhouse-server:服務端的配置文件目錄,包括全局配置 config.xml 和用戶配置 users.xml
- /var/lib/clickhouse:默認的數據存儲目錄,如果是生產環境可以將其修改到空間較大的磁盤掛載路徑。可以通過修改
- /etc/clickhouse-server/config.xml 配置文件中
、<tmp_path> 和<user_files_path> 標簽值來設置。 -
/var/log/clickhouse-server:默認的日志保存目錄。同樣可以通過修改/etc/clickhouse-server/config.xml 配置文件中 和 標簽值來設置。
- /etc/cron.d/clickhouse-server:clickhouse server 的一個定時配置,用於恢復因異常中斷的ClickHouse 服務進程。
- ~/.clickhouse-client-history (隱藏文件) 所有通過交互式命令行執行的sql歷史記錄。可使用ll -a命令查看
2.5 現在已經安裝並啟動好瞭一個clickhouse客戶端,但沒有密碼驗證誰都可以訪問,所以要設置密碼。
3.設置用戶名密碼
3.1 clickhouse的密碼有2種形式,一種是明文,一種是寫sha256sum的Hash值
官方不建議直接寫明文密碼,可以用以下命令生成密碼
PASSWORD=$(base64 < /dev/urandom | head -c8); echo "$PASSWORD"; echo -n "$PASSWORD" | sha256sum | tr -d '-'
這樣可以得到兩行數據,第一行是密碼明文,第二行是密碼密文
3.2 cilckhouse的配置文件默認地址 /etc/clickhouse-server
vim users.xml,找到 users –> default –> 標簽下的password修改成password_sha256_hex,並把密文填進去
<password_sha256_hex>密碼密文</password_sha256_hex>
3.3 添加密碼後,命令行啟動的方式為
clickhouse-client -h ip地址 -d default -m -u default --password 密碼明文
或者直接使用datagrip連接,用戶名是default,密碼是密碼明文
3.4 開放外網訪問,vim config.xml 找到 listen_host 標簽,修改為以下
<listen_host>0.0.0.0</listen_host>
重啟一下clickhouse服務
systemctl restart clickhouse-server
3.5 使用datagrip連接
使用datagrip連接輸入用戶名密碼既可連接,
在default庫下新建一張表測試一下:
create table table1 ( userId Int32, appId String, version String, regTime Date ) engine = MergeTree PARTITION BY toYYYYMM(regTime) ORDER BY userId SETTINGS index_granularity = 8192;
就可以直接使用clickhouse瞭
參考文檔:https://github.com/Altinity/clickhouse-rpm-install
到此這篇關於centos7安裝clickhouse並設置用戶名密碼案例詳解的文章就介紹到這瞭,更多相關centos7安裝clickhouse內容請搜索GuideAH以前的文章或繼續瀏覽下面的相關文章,希望大傢以後多多支持GuideAH!