odbc
Возвращает таблицу, подключенную через ODBC.
Параметры:
connection_settings
— название секции с настройками соединения в файлеodbc.ini
.external_database
— имя базы данных во внешней СУБД.external_table
— имя таблицы вexternal_database
.
Чтобы использование ODBC было безопасным, ClickHouse использует отдельную программу clickhouse-odbc-bridge
. Если драйвер ODBC подгружать непосредственно из clickhouse-server
, то проблемы с драйвером могут привести к аварийной остановке сервера ClickHouse. ClickHouse автоматически запускает clickhouse-odbc-bridge
по мере необходимости. Программа устанавливается из того же пакета, что и clickhouse-server
.
Поля из внешней таблицы со значениями NULL
получают значение по умолчанию для базового типа данных. Например, если поле в удалённой таблице MySQL имеет тип INT NULL
оно сконвертируется в 0 (значение по умолчанию для типа данных ClickHouse Int32
).
Пример использования
Получение данных из локальной установки MySQL через ODBC
Этот пример проверялся в Ubuntu Linux 18.04 для MySQL server 5.7.
Убедитесь, что unixODBC и MySQL Connector установлены.
По умолчанию (если установлен из пакетов) ClickHouse запускается от имени пользователя clickhouse
. Таким образом, вам нужно создать и настроить этого пользователя на сервере MySQL.
Теперь настроим соединение в /etc/odbc.ini
.
Вы можете проверить соединение с помощью утилиты isql
из установки unixODBC.
Таблица в MySQL:
Получение данных из таблицы MySQL в ClickHouse: