Как установить систему баз данных ClickHouse OLAP на Debian 11
На этой странице
- Предпосылки
- Начало работы
- Установите ClickHouse в Debian 11
- Управление сервисом ClickHouse
- Как использовать ClickHouse
- Включить веб-интерфейс ClickHouse
- Доступ к веб-интерфейсу ClickHouse
- Заключение
ClickHouse — это бесплатная система управления базами данных с открытым исходным кодом, ориентированная на столбцы. Он используется для оперативной аналитической обработки и позволяет формировать аналитические отчеты с помощью SQL-запросов в режиме реального времени. Он хранит записи в блоках, сгруппированных по столбцам, а не по строкам. Таким образом, он тратит меньше времени на чтение данных при выполнении запросов. Кроме того, базы данных, ориентированные на столбцы, могут выполнять вычисления и возвращать результаты намного быстрее, чем традиционные системы, основанные на строках, для определенных рабочих нагрузок.
В этом посте мы покажем вам, как установить базу данных ClickHoust на Debian 11.
Предпосылки
- Сервер под управлением Debian 11.
- На вашем сервере настроен пароль root.
Начиная
Перед запуском вам нужно будет обновить ваши системные пакеты до обновленной версии. Вы можете обновить их, выполнив следующую команду:
apt-get update -y
После обновления всех пакетов установите другие необходимые пакеты с помощью следующей команды:
apt-get install curl gnupg2 wget git apt-transport-https ca-certificates -y
После установки всех необходимых пакетов можно переходить к следующему шагу.
Установите ClickHouse на Debian 11
По умолчанию пакет ClickHouse не включен в стандартный репозиторий Debian 11. Поэтому вам нужно будет добавить репозиторий ClickHouse в вашу систему.
Сначала загрузите и добавьте ключ GPG, используя следующую команду:
apt-key adv --keyserver keyserver.ubuntu.com --recv E0C56BD4
Вы получите следующий вывод:
Executing: /tmp/apt-key-gpghome.WyTt1Mpvh7/gpg.1.sh --keyserver keyserver.ubuntu.com --recv E0C56BD4 gpg: key C8F1E19FE0C56BD4: public key "ClickHouse Repository Key <>" imported gpg: Total number processed: 1 gpg: imported: 1
Затем добавьте репозиторий ClickHouse в APT с помощью следующей команды:
echo "deb http://repo.yandex.ru/clickhouse/deb/stable/ main/" | tee /etc/apt/sources.list.d/clickhouse.list
Далее обновите репозиторий и установите ClickHouse с помощью следующей команды:
apt-get update -y
apt-get install clickhouse-server clickhouse-client -y
Во время установки вам будет предложено ввести пароль администратора ClickHouse, как показано ниже:
Enter password for default user: Password for default user is saved in file /etc/clickhouse-server/users.d/default-password.xml. Setting capabilities for clickhouse binary. This is optional. chown -R clickhouse:clickhouse '/etc/clickhouse-server' ClickHouse has been successfully installed. Start clickhouse-server with: sudo clickhouse start Start clickhouse-client with: clickhouse-client --password Synchronizing state of clickhouse-server.service with SysV service script with /lib/systemd/systemd-sysv-install. Executing: /lib/systemd/systemd-sysv-install enable clickhouse-server Created symlink /etc/systemd/system/multi-user.target.wants/clickhouse-server.service → /etc/systemd/system/clickhouse-server.service. Setting up clickhouse-client (21.12.3.32) ...
После завершения установки можно переходить к следующему шагу.
Управление сервисом ClickHouse
Теперь вы можете запустить сервис ClickHouse и включить его запуск при перезагрузке системы с помощью следующей команды:
systemctl start clickhouse-server
systemctl enable clickhouse-server
Теперь вы можете проверить статус ClickHouse с помощью следующей команды:
systemctl status clickhouse-server
Вы получите следующий вывод:
? clickhouse-server.service - ClickHouse Server (analytic DBMS for big data) Loaded: loaded (/etc/systemd/system/clickhouse-server.service; enabled; vendor preset: enabled) Active: active (running) since Fri 2021-12-31 11:22:57 UTC; 9s ago Main PID: 18152 (clckhouse-watch) Tasks: 206 (limit: 2341) Memory: 108.2M CPU: 931ms CGroup: /system.slice/clickhouse-server.service ??18152 clickhouse-watchdog --config=/etc/clickhouse-server/config.xml --pid-file=/run/clickhouse-server/clickhouse-serve> ??18153 /usr/bin/clickhouse-server --config=/etc/clickhouse-server/config.xml --pid-file=/run/clickhouse-server/clickhouse-serve> Dec 31 11:22:57 debian11 systemd[1]: Started ClickHouse Server (analytic DBMS for big data). Dec 31 11:22:57 debian11 clickhouse-server[18152]: Processing configuration file '/etc/clickhouse-server/config.xml'. Dec 31 11:22:57 debian11 clickhouse-server[18152]: Logging trace to /var/log/clickhouse-server/clickhouse-server.log Dec 31 11:22:57 debian11 clickhouse-server[18152]: Logging errors to /var/log/clickhouse-server/clickhouse-server.err.log Dec 31 11:22:58 debian11 clickhouse-server[18153]: Processing configuration file '/etc/clickhouse-server/config.xml'. Dec 31 11:22:58 debian11 clickhouse-server[18153]: Saved preprocessed configuration to '/var/lib/clickhouse/preprocessed_configs/config.xml'. Dec 31 11:22:58 debian11 clickhouse-server[18153]: Processing configuration file '/etc/clickhouse-server/users.xml'. Dec 31 11:22:58 debian11 clickhouse-server[18153]: Merging configuration file '/etc/clickhouse-server/users.d/default-password.xml'. Dec 31 11:22:58 debian11 clickhouse-server[18153]: Saved preprocessed configuration to '/var/lib/clickhouse/preprocessed_configs/users.xml'.
Как использовать ClickHouse
В этом разделе мы покажем вам, как подключиться к ClickHouse, создать базу данных и таблицу.
Сначала подключитесь к ClickHouse с помощью следующей команды:
clickhouse-client --password
Вам будет предложено ввести пароль по умолчанию, как показано ниже:
ClickHouse client version 21.12.3.32 (official build). Password for user (default): Provide the password which you have set during the installation and press the Enter key. You will get the following shell: Connecting to localhost:9000 as user default. Connected to ClickHouse server version 21.12.3 revision 54452. debian11 :)
Теперь создайте базу данных с именем testdb, используя следующую команду:
debian11 :) CREATE DATABASE testdb;
Вы получите следующий вывод:
CREATE DATABASE testdb Query id: a48b3031-a363-4357-b4f9-ffd3edd73b0e Ok. 0 rows in set. Elapsed: 0.005 sec.
Затем измените базу данных на testdb, используя следующую команду:
debian11 :) USE testdb;
Вы получите следующий вывод:
USE testdb Query id: 827e0d94-c3eb-46ec-ba04-97386a58e531 Ok. 0 rows in set. Elapsed: 0.001 sec.
Затем создайте таблицу с именем table1 с помощью следующей команды:
debian11 :) CREATE TABLE table1 (? id UInt64,? name String,? url String,? created DateTime?) ENGINE = MergeTree()?PRIMARY KEY id?ORDER BY id;
Вы получите следующий вывод:
CREATE TABLE table1 ( `id` UInt64, `name` String, `url` String, `created` DateTime ) ENGINE = MergeTree PRIMARY KEY id ORDER BY id Query id: 922f4fe1-283f-4e5d-9966-498344b2aa4d Ok. 0 rows in set. Elapsed: 0.006 sec.
Затем вставьте какое-либо значение в таблицу, используя следующую команду:
debian11 :) INSERT INTO table1 VALUES (1, 'jay', 'https://linux-console.net', '2021-12-31 00:01:01');
Вы получите следующий вывод:
INSERT INTO table1 FORMAT Values Query id: be1c57cd-5759-47cd-8649-ce82cd0c1f7d Ok. 1 rows in set. Elapsed: 0.005 sec.
Затем добавьте новый столбец с помощью следующей команды:
debian11 :) ALTER TABLE table1 ADD COLUMN location String;
Вы получите следующий вывод:
ALTER TABLE table1 ADD COLUMN `location` String Query id: 106fa166-afda-4598-a32c-b50da237bfe5 Ok. 0 rows in set. Elapsed: 0.007 sec.
Если вы хотите получить данные из таблицы, выполните следующую команду:
debian11 :) SELECT url, name FROM table1 WHERE url = 'https://linux-console.net' LIMIT 1;
Вы получите следующий вывод:
SELECT url, name FROM table1 WHERE url = 'https://linux-console.net' LIMIT 1 Query id: 8ee433ec-0eb1-4409-b9a8-7e5794b872ce ??url?????????????????????name?? ? https://linux-console.net ? jay ? ???????????????????????????????? 1 rows in set. Elapsed: 0.007 sec.
Чтобы удалить столбец, выполните следующую команду:
debian11 :) ALTER TABLE table1 DROP COLUMN location;
Чтобы удалить таблицу, выполните следующую команду:
debian11 :) DROP TABLE table1;
Чтобы удалить базу данных, выполните следующую команду:
debian11 :) DROP DATABASE testdb;
Чтобы выйти из оболочки ClickHouse, выполните следующую команду:
debian11 :) exit;
Включить веб-интерфейс ClickHouse
ClickHouse также предоставляет веб-интерфейс для управления базой данных. Но по умолчанию он отключен. Вы можете включить его, отредактировав конфигурационный файл ClickHouse:
nano /etc/clickhouse-server/config.xml
Раскомментируйте и измените следующие строки:
<listen_host>0.0.0.0</listen_host> <http_server_default_response><![CDATA[<html ng-app="SMI2"><head><base href="http://ui.tabix.io/"></head><body><div ui-view="" class="content-ui"></div><script src="http://loader.tabix.io/master.js"></script></body></html>]]></http_server_default_response>
Сохраните и закройте файл, затем перезапустите сервис ClickHouse, чтобы применить изменения конфигурации:
systemctl restart clickhouse-server
Доступ к веб-интерфейсу ClickHouse
По умолчанию веб-интерфейс ClickHouse прослушивает порт 8123. Вы можете проверить это с помощью следующей команды:
ss -antpl | grep 8123
Вы должны увидеть следующий вывод:
LISTEN 0 4096 0.0.0.0:8123 0.0.0.0:* users:(("clickhouse-serv",pid=18580,fd=158))
Теперь откройте веб-браузер и войдите в веб-интерфейс ClickHouse, используя URL-адрес http://your-server-ip:8123. Вы должны увидеть следующий экран:
Введите имя пользователя и пароль по умолчанию и нажмите кнопку «Войти». После входа в систему вы должны увидеть следующий экран:
Заключение
В приведенном выше руководстве мы объяснили, как установить систему баз данных ClickHouse в Debian 11. Мы также объяснили, как создавать базы данных и управлять ими, а также включать веб-интерфейс ClickHouse. Надеюсь, это поможет вам установить ClickHouse в рабочей среде. Не стесняйтесь спрашивать меня, если у вас есть какие-либо вопросы.