Подключите метабазу к серверу Sql

Я установил Java на свой компьютер с Windows 10 и скачал Metabase.jar и запустил его.

Теперь я мог получить доступ к метабазе на локальном хосте:3000

Но я не могу настроить базу данных SQL Server как ссылку на данные.

Я либо получаю:

Не удалось подключиться к базе данных. Пожалуйста, проверьте детали подключения.

или же

Тайм-аут через 5000 миллисекунд.

Кто-нибудь, кто успешно установил соединение Metabase - SQL Server?

2 ответа

В настоящее время, начиная с версии Metabase 0.30.x, ответ зависит от того, можете ли вы использовать пользователя, настроенного непосредственно на SQL Server:

  • Более простой вариант установки - пользователь, настроенный непосредственно на SQL Server. Тогда конфигурация - это просто Имя: (что угодно), Хост: (полное имя), Имя базы данных, Имя пользователя, Пароль, как и следовало ожидать. (Я считаю, что вы не должны заполнять домен Windows).

  • Только в Windows вы также можете использовать встроенную встроенную аутентификацию с sqljdbc_auth.dll, просто укажите свойство соединения integratedSecurity = true (и опционально authenticationScheme=NativeAuthentication). Я нашел, если я уронил x64 sqljdbc_auth.dll в моем <java path>\jre\bin Папка была подобрана. Конфигурация метабазы ​​как на скриншоте ниже, кроме падения authenticationScheme=JavaKerberos

  • Кроссплатформенная authenticationScheme=JavaKerberos Возможность использования Windows Authentication с пользователем домена все еще выполнима, но сложнее. Вот эти шаги:

    1. Создать krb.conf и убедитесь, что логин работает с <Java path>\bin\kinit.exe [user], Вот шаблон, отредактированный для соответствия настройке базы данных Metabase на скриншоте ниже.

    2. Запустите файл Metabase.jar с параметрами для загрузки krb.conf, У меня работает с java -Djava.security.krb5.conf=c:/<path>/kerberos/krb.conf -jar metabase.jar,

    3. Теперь настройте параметры базы данных в метабазе, как показано на скриншоте ниже.

    4. Момент истины!...

    5. Необязательно: все еще не работает? Может быть, ваш SQL Server не настроен для Kerberos? Может быть, вам нужна настройка SPN? Может быть, вам нужно указать java.security.auth.login.config (я сам не сталкивался с этим, единственное, что я могу предложить, это прокрутить до конца этого поста и погрузиться, а затем отредактировать свой вопрос в соответствии с тем, где вы получили и какой у вас конфиг)

Настройка метабазы ​​SQL Server с использованием Kerberos:

Для фона, текущий (август 2018) очень долго:| Подводя итог множеству ссылок о том, как подключиться к SQL Server, можно прочитать в теме обсуждения Metabase. Примечание. В v0.30.0 была исправлена ​​проблема с динамической обработкой портов (особенно для людей, использующих именованные экземпляры).

Связанный: аккуратный ответ Stackru на Kerberos на Mac

Если вы подключаетесь к "Именованному экземпляру" ({SERVER_NAME}/{INSTANCE_NAME}) вместо "Экземпляра по умолчанию" ({SERVER_NAME}), возможно, ваш сервер настроен на использование динамического порта.

  • Быстрое исправление - вы можете найти текущий порт с помощью приведенных ниже сценариев, а затем использовать его в параметрах соединения Metabase. Но этот порт, скорее всего, изменится, когда произойдет перезапуск службы.

    ВЫБЕРИТЕ DISTINCT local_tcp_port ОТ sys.dm_exec_connections ГДЕ local_tcp_port НЕ НУЛЬ

или же

USE master
GO
Xp_readerrorlog

(ищите строку "Сервер прослушивает...")

  • Более чистым способом является установка порта для вашего экземпляра с помощью "Диспетчера конфигурации SQL Server" - "Конфигурация сети SQL Server" - "TCP/IP" - Свойства правой кнопки мыши - "Динамические порты TCP" (должно быть 0, и его следует удалить) и "Порт TCP" (здесь должен быть установлен новый порт по умолчанию). А также должна быть запущена служба "Браузер SQL Server". Более подробное объяснение здесь
Другие вопросы по тегам