Как подключиться к SQL Server с помощью SQuirreL SQL из не зарегистрированного домена Linux? - PullRequest
27 голосов
/ 08 февраля 2012

Мне нужно подключиться к серверу SQL 2008 R2 из моей системы Linux, которая не зарегистрирована в домене моей компании. Я пытаюсь использовать SQuirreL SQL версии 3.2.1. Я скачал Драйвер JDBC Microsoft SQL Server 3.0 и назначил его для SQuirreL на вкладке Драйверы.

Теперь, когда я пытаюсь создать псевдоним в SQuirreL, я выбираю драйвер SQL Server и корректирую URL. Для учетных данных я использую зарегистрированное имя пользователя и пароль в моем домене.

Когда я пытаюсь проверить соединение, я всегда получаю одну и ту же ошибку:

<"database-name">: ошибка входа для пользователя '<"domain"> \ <"domain-user">'.

Как я могу заставить это работать? Заранее спасибо!

Ответы [ 5 ]

27 голосов
/ 21 января 2013

Я избавился от драйвера JDBC для Microsoft SQL Server и скачал jTDS драйвер. Я немного подправил его, пока не получил успешное соединение. Правильная строка подключения была:

jdbc:jtds:sqlserver://<server_ip>:1433;databaseName=<instance_name>;domain=<domain_name>
20 голосов
/ 29 мая 2014

Ответ может быть устаревшим, так как у меня была похожая проблема с SQuirrel SQL на MacOS 10.9.3, а не на Linux.То, как Питер решил проблему, вдохновило меня.Поскольку решение было не самым простым, я решил разместить его здесь.Надеюсь, это кому-нибудь поможет.

  1. Загрузите последнюю версию драйвера Microsoft JDBC 4.0 для SQL Server (пакет tar.gz)
  2. Извлеките из пакета только sqljdbc4.jar
  3. Копироватьфайл JAR в Squirrel SQL (Содержание-> Ресурсы-> Java-> Lib)
  4. Теперь доступен драйвер JDBC Microsoft MSSQL Server для создания псевдонима
  5. URL-адрес соединения: jdbc: sqlserver: //SERVERNAME; databaseName = DATABASENAME
7 голосов
/ 09 декабря 2015

Еще одно решение, которое сработало для меня. На рабочем столе Windows, подключающемся к SQL Server 2008 R2, мне пришлось выполнить следующие шаги:

  • скопируйте jtds-1.3.1.jar в каталог SQuirrel SQL \ lib
  • перезапустите SQuirrel SQL и убедитесь, что вы видите jTDS Microsoft SQL в списке драйверов
  • убедитесь, что в конфигурации драйвера для имени класса указано net.sourceforge.jtds.jdbc.Driver
  • используйте строку подключения, подобную этой

jdbc:jtds:sqlserver://<hostnameOrIp>:<port>/<databaseName>;instance=<instanceName>

3 голосов
/ 29 июля 2013

Мне удалось подключиться к серверу SQL из SQuirrel на компьютере с Linux.Примерные * шаги ...

  • Вам нужен только один из jdbc jar из загрузки MS (скопированный в 'lib')
  • Необходимо использовать аутентификацию SQL Server (не аутентификацию сети Windows)
  • Аутентификация SQL Server уже была включена на нашей базе данных
  • Добавлен логин 'jdoe'
  • Установить для базы данных jdoe по умолчанию значение 'XxxDb'
  • Добавлен«Отображение пользователя» из jdoe в нужную базу данных
  • Настройка разрешения на SQL Server для jdoe: «Подключение» и «Просмотр любой базы данных»
  • Строка подключения: jdbc: sqlserver: //SERVERNAME: 1433; databaseName = XxxDb

* Может не понадобиться все, так как я копаюсь

0 голосов
/ 10 мая 2018

Убедитесь, что драйвер Microsoft jdbc совместим с используемой версией Java,

Я пытался использовать драйвер 6.0 с Java-9, и я получил эту ошибку: ClassNotFoundException: javax.xml.bind.DatatypeConverter когда я понизился до версии Java SE Runtime Environment 8u101 подключил без проблем.

...