Перейти к содержанию

Коннектор источника для MS SQL Server

Это руководство описывает, как настроить digna для подключения к Microsoft SQL Server через ODBC со строкой подключения без DSN (DSN-less).

Сторона digna одинакова для всех технологий — где создаются подключения, как шифруются значения свойств, как проверяется подключение и что означают режимы профилирования. Она описана в разделе Обзор подключений к базам данных. Эта страница описывает то, что специфично для SQL Server.

Azure Synapse Analytics

Synapse также настраивается как подключение SQL Server, но с другим именем хоста и несколькими дополнительными особенностями — см. Azure Synapse.


1. Установка драйвера ODBC

Установите ODBC Driver 18 for SQL Server на машину, где работает бэкенд digna, следуя руководству по установке Microsoft.

Драйвер, который поставляется с Windows под простым именем SQL Server, тоже работает, но он давно устарел и не поддерживает ни современные настройки TLS, ни аутентификацию Azure. Используйте его только там, где установить актуальный драйвер невозможно.

Узнайте точное зарегистрированное имя драйвера на вашем хосте, как описано в разделе Установка драйвера ODBC на хосте digna.


2. Свойства ODBC

Пример, а не спецификация

Набор ниже — одна комбинация, которая заведомо работает. Свойства принадлежат драйверу ODBC от Microsoft, поэтому их имена, значения по умолчанию и допустимые значения различаются между версиями драйвера — например, Driver 18 по умолчанию шифрует подключение, а Driver 17 этого не делал — и между платформами. Используйте этот набор как отправную точку и сверяйтесь с документацией установленной версии драйвера.

Добавьте следующие свойства на экране Add DB Connection:

Ключ Пример значения Примечания
DRIVER ODBC Driver 18 for SQL Server Должно совпадать с именем драйвера, зарегистрированным на хосте digna
SERVER sql.example.com Имя сервера или IP-адрес. Именованные экземпляры: host\instance; нестандартный порт: host,1433
PORT 1433 Не указывайте, если порт уже входит в SERVER
DATABASE digna_source_db База данных, содержащая исходные схемы. Это единственная база данных, которую может профилировать это подключение
UID digna_source_user Пользователь базы данных
PWD <password> Отметьте Encrypted

Итоговая строка подключения выглядит так:

DRIVER=ODBC Driver 18 for SQL Server;SERVER=sql.example.com;PORT=1433;DATABASE=digna_source_db;UID=digna_source_user;PWD=<password>

Шифрование с ODBC Driver 18

Driver 18 по умолчанию шифрует подключения и проверяет сертификат сервера. При подключении к серверу с сертификатом, которому ваш хост digna не доверяет, — как правило, самоподписанным, — подключение завершается ошибкой цепочки сертификатов. Добавьте:

Ключ Пример значения Примечания
Encrypt yes Значение по умолчанию в Driver 18; указывайте no, только если сервер не поддерживает TLS
TrustServerCertificate yes Пропускает проверку сертификата. Удобно в тестовых средах; в продуктивной среде лучше установить сертификат

Аутентификация Windows

Чтобы подключаться от имени учётной записи, под которой работает служба digna, а не с именем входа SQL, удалите UID и PWD и добавьте:

Ключ Пример значения Примечания
Trusted_Connection yes Учётной записи службы digna нужны права в базе данных

3. Настройка digna

На экране Add DB Connection укажите следующее:

Name:               Name of the connection. This is used for referencing the connection in other screens.
Technology:         SQL Server
Profiling Mode:     Standard, Permanent or Session
Work Schema:        Schema for the work tables of "Permanent" profiling, e.g. "digna_work"

4. Особенности MS SQL Server

  • Одно подключение видит одну базу данных. digna предлагает схемы базы данных, указанной в DATABASE, потому что SQL Server сообщает в качестве каталога только текущую базу данных. Для исходных таблиц в другой базе данных нужно отдельное подключение.
  • Режимы профилирования. Permanent создаёт рабочие таблицы в Work Schema, поэтому пользователю нужно право CREATE TABLE в ней. Session использует локальные временные таблицы (#wt_…) в tempdb и не затрагивает Work Schema. Для Standard нужен только доступ на чтение.
  • SERVER содержит экземпляр и порт. Для именованного экземпляра host\instance должна быть доступна служба SQL Server Browser; вариант host,port позволяет обойтись без неё.

5. Проверка драйвера (необязательно)

Для подключения без DSN настраивать источник данных ODBC не требуется, но собственный мастер драйвера — удобный способ убедиться, что драйвер работает, а сервер принимает ваши учётные данные, прежде чем вводить их в digna.

Шаг 1

Шаг 1

Нажмите кнопку Next >.

Шаг 2

Шаг 2

Выберите метод аутентификации (например, имя пользователя и пароль) и укажите необходимые данные.

Нажмите кнопку Next >.

Шаг 3

Шаг 3

Выберите параметры, соответствующие ANSI, затем нажмите кнопку Next >.

Шаг 4

Шаг 4

Можно оставить настройки по умолчанию или выбрать нужные параметры журналирования, после чего нажмите кнопку Finish.

Шаг 5

Шаг 5

Теперь нажмите кнопку Test datasource.

Шаг 6

Шаг 6

Экран успешного завершения подтверждает, что драйвер и учётные данные работают. Введённые вами значения — это именно те значения, которые принимают свойства из раздела 2.