Хранение реквизитов для подключения к внешним источникам в конфигурационных файлах
Реквизиты для подключения к внешним источникам (словарям, таблицам, табличным функциям) можно сохранить в конфигурационных файлах и таким образом упростить создание объектов и скрыть реквизиты (пароли) от пользователей, имеющих только SQL доступ.
Параметры можно задать в XML <format>CSV</format>
и переопределить в SQL , format = 'TSV'
.
При использовании именованных соединений, параметры в SQL задаются в формате ключ
= значение
: compression_method = 'gzip'
.
Именованные соединения хранятся в файле config.xml
сервера ClickHouse в секции <named_collections>
и применяются при старте ClickHouse.
Пример конфигурации:
Именованные соединения для доступа к S3
Описание параметров смотрите Табличная Функция S3.
Пример конфигурации:
Пример использования именованных соединений с функцией s3
Пример использования именованных соединений с таблицей S3
Пример использования именованных соединений с базой данных MySQL
Описание параметров смотрите mysql.
Пример конфигурации:
Пример использования именованных соединений с табличной функцией mysql
Пример использования именованных соединений таблицей с движком mysql
Пример использования именованных соединений базой данных с движком MySQL
Пример использования именованных соединений с внешним словарем с источником mysql
Пример использования именованных соединений с базой данных PostgreSQL
Описание параметров смотрите postgresql. Дополнительно есть алиасы:
username
дляuser
db
дляdatabase
.
Параметр addresses_expr
используется в коллекции вместо host:port
. Параметр опционален, потому что есть так же другие: host
, hostname
, port
. Следующий псевдокод показывает приоритет:
Пример создания:
Пример конфигурации:
Пример использования именованных соединений с табличной функцией postgresql
Пример использования именованных соединений таблицей с движком PostgreSQL
PostgreSQL копирует данные из named collection при создании таблицы. Изменения в коллекции не влияют на существующие таблицы.
Пример использования именованных соединений базой данных с движком PostgreSQL
Пример использования именованных соединений с внешним словарем с источником POSTGRESQL
Пример использования именованных соединений с удалённой базой данных Сlickhouse
Описание параметров смотрите remote.
Пример конфигурации: