ClickHouse là một hệ thống quản lý cơ sở dữ liệu hướng cột nguồn mở do Yandex phát triển. Hệ thống này đa nền tảng và có thể cài đặt trên bất kỳ hệ điều hành Linux, FreeBSD hoặc Mac OS X nào. ClickHouse cung cấp các giới hạn linh hoạt về độ phức tạp của truy vấn và mức sử dụng tài nguyên, có thể được tinh chỉnh bằng các cài đặt. ClickHouse cung cấp một bộ tính năng phong phú, chẳng hạn như Nén dữ liệu, Hỗ trợ IPv6, Tính khả dụng cao, Thu thập dữ liệu theo thời gian thực, Thực thi truy vấn song song và phân tán, Vị trí tham chiếu trên đĩa, Lưu trữ hướng cột thực sự và nhiều tính năng khác.
Hướng dẫn này sẽ giải thích cách cài đặt ClickHouse trên máy chủ Debian 10. Chúng tôi cũng sẽ giải thích cách tạo cơ sở dữ liệu và bảng bằng máy khách ClickHouse và cấu hình máy chủ ClickHouse để cho phép kết nối từ máy chủ từ xa.
Sau khi máy chủ của bạn được cập nhật, hãy khởi động lại máy chủ để áp dụng các thay đổi.
Đầu tiên, hãy tải xuống và nhập khóa GPG bằng lệnh sau:
Bạn sẽ thấy đầu ra sau:
Tiếp theo, thêm kho lưu trữ ClickHouse vào APT bằng lệnh sau:
Tiếp theo, cập nhật kho lưu trữ và cài đặt gói máy chủ và máy khách ClickHouse bằng lệnh sau:
Trong quá trình cài đặt, bạn sẽ được yêu cầu cung cấp mật khẩu ClickHouse như hiển thị bên dưới:
Cung cấp mật khẩu của bạn và nhấn Enter để tiếp tục cài đặt. Sau khi cài đặt hoàn tất, hãy khởi động máy chủ ClickHouse và cho phép nó khởi động sau khi hệ thống khởi động lại bằng lệnh sau:
Bạn có thể xác minh trạng thái của dịch vụ ClickHouse bằng lệnh sau:
Bạn sẽ thấy đầu ra sau:
Trong kết quả ở trên, bạn sẽ thấy máy chủ ClickHouse không khởi động được. Để giải quyết lỗi này, hãy mở tệp /etc/ssl/openssl.cnf bằng lệnh sau:
Bình luận dòng sau:
Lưu và đóng tệp khi bạn hoàn tất. Sau đó, khởi động lại máy chủ Clickhouse bằng lệnh sau:
Khi máy chủ ClickHouse khởi động thành công, bạn sẽ nhận được kết quả sau:
Khi bạn hoàn tất, bạn có thể tiến hành bước tiếp theo.
Trước tiên, hãy kết nối máy chủ ClickHouse bằng cách chỉ định mật khẩu mà bạn đã tạo trong quá trình cài đặt ClickHouse bằng lệnh sau:
Bạn sẽ thấy đầu ra sau:
Bây giờ, hãy tạo một cơ sở dữ liệu mẫu có tên clickdb bằng lệnh sau:
Bạn sẽ thấy kết quả sau:
Tiếp theo, hãy thay đổi cơ sở dữ liệu thành clickdb bằng lệnh sau:
Bạn sẽ thấy kết quả sau:
Tiếp theo, tạo một bảng có tên là ontime bằng lệnh sau:
Bạn sẽ thấy đầu ra sau:
Bạn cũng có thể xem nội dung của bảng bằng lệnh sau:
Bạn sẽ thấy đầu ra sau:
Bạn cũng có thể chèn, cập nhật và xóa dữ liệu khỏi bảng ontime.
Nếu bạn muốn xóa bảng, hãy chạy lệnh sau:
Bạn sẽ thấy đầu ra sau:
Bạn cũng có thể xóa cơ sở dữ liệu bằng lệnh sau:
Bạn sẽ thấy kết quả sau:
Khi bạn hoàn tất, bạn có thể tiến hành bước tiếp theo.
Tìm dòng sau:
Và thay đổi thành như sau:
Lưu và đóng tệp khi bạn hoàn tất. Sau đó, khởi động lại dịch vụ ClickHouse để áp dụng cấu hình mới:
ClickHouse hiện đã được cấu hình để kết nối từ máy chủ từ xa.
Bây giờ, hãy đăng nhập vào máy chủ từ xa và kết nối máy chủ ClickHouse bằng lệnh sau:
Sau khi kết nối thành công, bạn sẽ thấy đầu ra sau:
Hướng dẫn này sẽ giải thích cách cài đặt ClickHouse trên máy chủ Debian 10. Chúng tôi cũng sẽ giải thích cách tạo cơ sở dữ liệu và bảng bằng máy khách ClickHouse và cấu hình máy chủ ClickHouse để cho phép kết nối từ máy chủ từ xa.
Yêu cầu
- Máy chủ chạy Debian 10.
- Mật khẩu gốc được thiết lập cho máy chủ của bạn.
Bắt đầu
Trước khi bắt đầu, bạn sẽ cần cập nhật hệ thống của mình lên phiên bản mới nhất. Bạn có thể thực hiện việc này bằng cách chạy lệnh sau:
Mã:
apt-get update -y
apt-get upgrade -y
Cài đặt ClickHouse
Theo mặc định, ClickHouse không có trong kho lưu trữ mặc định của Debian 10. Vì vậy, bạn sẽ cần thêm kho lưu trữ ClickHouse vào APT.Đầu tiên, hãy tải xuống và nhập khóa GPG bằng lệnh sau:
Mã:
apt-key adv --keyserver keyserver.ubuntu.com --recv E0C56BD4
Mã:
Đang thực thi: /tmp/apt-key-gpghome.CJf2zS1pCH/gpg.1.sh --keyserver keyserver.ubuntu.com --recv E0C56BD4gpg: key C8F1E19FE0C56BD4: public key "ClickHouse Repository Key " đã nhậpgpg: Tổng số đã xử lý: 1gpg: đã nhập: 1
Mã:
echo "deb http://repo.yandex.ru/clickhouse/deb/stable/ main/" | tee /etc/apt/sources.list.d/clickhouse.list
Mã:
apt-get update -y
apt-get install dirmngr clickhouse-server clickhouse-client -y
Cung cấp mật khẩu của bạn và nhấn Enter để tiếp tục cài đặt. Sau khi cài đặt hoàn tất, hãy khởi động máy chủ ClickHouse và cho phép nó khởi động sau khi hệ thống khởi động lại bằng lệnh sau:
Mã:
systemctl start clickhouse-server
systemctl enable clickhouse-server
Mã:
systemctl status clickhouse-server
Mã:
systemctl status clickhouse-server? clickhouse-server.service - Máy chủ ClickHouse (DBMS phân tích cho dữ liệu lớn) Đã tải: đã tải (/etc/systemd/system/clickhouse-server.service; đã bật; cài đặt trước của nhà cung cấp: đã bật) Đang hoạt động: đang kích hoạt (tự động khởi động lại) (Kết quả: mã thoát) kể từ Thứ bảy 2019-09-07 07:48:00 EDT; 8 giây trước Tiến trình: 642 ExecStart=/usr/bin/clickhouse-server --config=/etc/clickhouse-server/config.xml --pid-file=/run/clickhouse-server/clickhouse-ser PID chính: 642 (code=exited, status=1/FAILURE)
Mã:
nano /etc/ssl/openssl.cnf
Mã:
#ssl_conf = ssl_sect
Mã:
systemctl start clickhouse-server
Mã:
? clickhouse-server.service - ClickHouse Server (hệ quản trị cơ sở dữ liệu phân tích cho dữ liệu lớn) Đã tải: đã tải (/etc/systemd/system/clickhouse-server.service; đã bật; cài đặt trước của nhà cung cấp: đã bật) Đang hoạt động: đang hoạt động (đang chạy) kể từ Thứ sáu 2019-09-06 05:28:51 EDT; 1 phút 24 giây trước PID chính: 1822 (clickhouse-serv) Nhiệm vụ: 38 (giới hạn: 1138) Bộ nhớ: 42,6M CGroup: /system.slice/clickhouse-server.service ??1822 /usr/bin/clickhouse-server --config=/etc/clickhouse-server/config.xml --pid-file=/run/clickhouse-server/clickhouse-server.pid06/09 05:28:51 debian systemd[1]: Đã khởi động ClickHouse Server (hệ quản trị cơ sở dữ liệu phân tích cho dữ liệu lớn).06/09 05:28:51 debian clickhouse-server[1822]: Không tìm thấy include: clickhouse_remote_servers06/09 05:28:51 debian clickhouse-server[1822]: Không tìm thấy include: clickhouse_compression06/09 05:28:51 debian clickhouse-server[1822]: Ghi nhật ký theo dõi đến /var/log/clickhouse-server/clickhouse-server.log06/09 05:28:51 debian clickhouse-server[1822]: Ghi nhật ký lỗi đến /var/log/clickhouse-server/clickhouse-server.err.log06/09 05:28:51 debian clickhouse-server[1822]: Không tìm thấy include: networks06/09 05:28:53 debian clickhouse-server[1822]: Không tìm thấy include: clickhouse_remote_servers06/09 05:28:53 debian clickhouse-server[1822]: Không tìm thấy include: clickhouse_compression
Tạo cơ sở dữ liệu và bảng bằng ClickHouse
Bạn có thể tạo và xóa cơ sở dữ liệu và bảng bằng cách chạy lệnh SQL trực tiếp trong dấu nhắc của máy khách ClickHouse.Trước tiên, hãy kết nối máy chủ ClickHouse bằng cách chỉ định mật khẩu mà bạn đã tạo trong quá trình cài đặt ClickHouse bằng lệnh sau:
Mã:
clickhouse-client --password admin@123
Mã:
Phiên bản máy khách ClickHouse 19.13.3.26 (bản dựng chính thức).Đang kết nối với localhost:9000 làm mặc định của người dùng.Đã kết nối với máy chủ ClickHouse phiên bản 19.13.3 bản sửa đổi 54425.debian :)
Mã:
debian :) CREATE DATABASE clickdb;
Mã:
CREATE DATABASE clickdbOk.0 hàng trong bộ. Đã trôi qua: 0,014 giây.
Mã:
debian :) USE clickdb;
Mã:
USE clickdbOk.0 hàng trong bộ. Đã trôi qua: 0,002 giây.
Mã:
debian :) CREATE TABLE ontime ( Year UInt16, Quarter UInt8, Month UInt8, DayofMonth UInt8, DayOfWeek UInt8, FlightDate Date, AirlineID Int32, FlightNum String ) ENGINE = MergeTree(FlightDate, (Year, FlightDate), 8192);
Mã:
CREATE TABLE ontime( `Year` UInt16, `Quarter` UInt8, `Month` UInt8, `DayofMonth` UInt8, `DayOfWeek` UInt8, `FlightDate` Date, `AirlineID` Int32, `FlightNum` String)ENGINE = MergeTree(FlightDate, (Year, FlightDate), 8192)Ok.0 hàng trong tập hợp. Đã trôi qua: 0,127 giây.
Mã:
debian :) describe ontime;
Mã:
DESCRIBE TABLE ontime??name????????????type????????default_type???comment???codec_expression???ttl_expression??? Năm ? UInt16 ? ? ? ? ? ?? Quý ? UInt8 ? ? ? ? ? ? ?? Tháng ? UInt8 ? ? ? ? ? ? ?? DayofMonth ? UInt8 ? ? ? ? ? ?? DayOfWeek ? UInt8 ? ? ? ? ? ?? FlightDate ? Ngày ? ? ? ? ? ?? AirlineID ? Int32 ? ? ? ? ? ? ?? FlightNum ? Chuỗi ? ? ? ? ? ??????????????????????????????????????????????????????????????????????????????????????????????????????8 hàng trong tập hợp. Đã trôi qua: 0,007 giây.
Xóa Cơ sở dữ liệu và Bảng
Bạn cũng có thể xóa cơ sở dữ liệu và bảng của mình bằng ứng dụng khách ClickHouse.Nếu bạn muốn xóa bảng, hãy chạy lệnh sau:
Mã:
debian :) DROP TABLE ontime;
Mã:
DROP TABLE ontimeĐược.0 hàng trong tập hợp. Đã trôi qua: 0,003 giây.
Mã:
debian :) DROP DATABASE clickdb;
Mã:
DROP DATABASE clickdbOk.0 hàng trong tập hợp. Đã trôi qua: 0,002 giây.
Cấu hình ClickHouse để kết nối từ máy chủ từ xa
Bạn cũng có thể kết nối máy chủ cơ sở dữ liệu ClickHouse từ máy chủ từ xa. Để thực hiện việc này, bạn sẽ cần chỉnh sửa tệp cấu hình ClickHouse config.xml:
Mã:
nano /etc/clickhouse-server/config.xml
Mã:
Mã:
0.0.0.0
Mã:
systemctl restart clickhouse-server
Bây giờ, hãy đăng nhập vào máy chủ từ xa và kết nối máy chủ ClickHouse bằng lệnh sau:
Mã:
clickhouse-client --host your_server_ip --password admin@123
Mã:
Phiên bản máy khách ClickHouse 19.13.3.26 (bản dựng chính thức).Đang kết nối với localhost:9000 làm mặc định của người dùng.Đã kết nối với máy chủ ClickHouse phiên bản 19.13.3 bản sửa đổi 54425.debian :)