Мне нужно легкое и полное учебное руководство для того, чтобы установить связь MSSQL из Ubuntu.
Я думаю, что установил FreeTDS и UnixODBC, но конфигурации очень сложны, я не понял проблему.
Я следовал этому учебному руководству: https://github.com/rails-sqlserver/activerecord-sqlserver-adapter/wiki/Platform-Installation---Ubuntu
Но я перестал работать.
root@hackmachine:~# isql -v example.com XXXXX XXXXXXX
[IM002][unixODBC][Driver Manager]Data source name not found, and no default driver specified
[ISQL]ERROR: Could not SQLConnect
root@hackmachine:~#
Править:
Прежде чем это редактирование "/etc/odbcinst.ini" и "/etc/odbc.ini" было пусто.
Я добавил эти строки к /etc/odbcinst.ini:
[FreeTDS]
Description = TDS driver (Sybase/MS SQL)
Driver = /usr/lib/x86_64-linux-gnu/odbc/libtdsodbc.so
Setup = /usr/lib/x86_64-linux-gnu/odbc/libtdsS.so
CPTimeout =
CPReuse =
FileUsage = 1
Я добавил эти строки к /etc/odbc.ini:
[project_development]
Driver = FreeTDS
Description = ODBC connection via FreeTDS
Trace = No
Servername = developer
Database = project_development
[project_test]
Driver = FreeTDS
Description = ODBC connection via FreeTDS
Trace = No
Servername = developer
Database = test
[project_production]
Driver = FreeTDS
Description = ODBC connection via FreeTDS
Trace = No
Servername = production
Database = project_production
Я не вносил изменений на "/etc/freetds/freetds.conf" с самого начала.
Однако, ничто не изменилось.
Вот пошаговые инструкции (найдены здесь) :
Первый, установите unixODBC:
sudo apt-get install unixodbc unixodbc-dev
я также установил следующее (возможно, необходимый) пакеты:
sudo apt-get install tdsodbc php5-odbc
Тогда загрузка, untar, компилирует и устанавливает FreeTDS (предупреждение, URL может измениться):
cd /usr/local
wget http://ibiblio.org/pub/Linux/ALPHA/freetds/stable/freetds-stable.tgz
tar xvfz freetds-stable.tgz
cd freetds-0.82
./configure --enable-msdblib --with-tdsver=8.0 --with-unixodbc=/usr
make
make install
make clean
Попытка соединение по Telnet к Вашему экземпляру SQL Server:
telnet 192.168.0.1 1433
Использование tsql инструмент для проверения соединения:
tsql -S 192.168.0.1 -U devuser
Это должно предложить Вам пароль, после которого можно очень сильно надеяться для наблюдения этого красивого знака:
1>
, Если это работало, я рекомендую устроить (кодирование) вечеринку. Затем некоторые конфигурирование. Откройте файл конфигурации FreeTDS./usr/local/etc/freetds.conf
Добавляет следующую запись в нижнюю часть файла. We’re, настраивающий имя источника данных (DSN) под названием вЂMSSQL’.
[MSSQL]
host = 192.168.0.1
port = 1433
tds version = 8.0
Теперь открывают конфигурационный файл ODBC: /usr/local/etc/odbcinst.ini
И добавляет следующую запись драйвера MSSQL (FreeTDS) в конце:
[FreeTDS]
Description = FreeTDS driver
Driver = /usr/local/lib/libtdsodbc.so
Setup=/usr/lib/odbc/libtdsS.so
FileUsage = 1
UsageCount = 1
Затем наконец, настраивает DSN в ODBC в файле odbc.ini здесь /usr/local/etc/odbc.ini Путем добавления этого бита к файлу:
[MSSQL]
Description = MS SQL Server
Driver = /usr/local/lib/libtdsodbc.so
Server = 192.168.2.3
UID = devuser
PWD = devpass
ReadOnly = No
Port = 1433
Проверяют соединение с помощью isql инструмента:
isql -v MSSQL devuser 'devpass'
, Если Вы видите “Connected! ” you’re золотой, поздравления! В противном случае I’m действительно извините; посмотрите, ниже того, где существуют некоторые ресурсы, которые могли бы помочь.
Теперь Apache перезапуска и тест это от PHP, использующего вЂMSSQL’ в качестве DSN. Если что-то работа doesn’t, Вы могли бы попытаться установить кого-либо из этих пакетов: mdbtools libmdbodbc libmdbtools mdbtools-gmdb
На Надежном человеке 14.04 у меня были проблемы при создании http://ibiblio.org/pub/Linux/ALPHA/freetds/stable/freetds-stable.tgz
, Когда я пытался работать tsql
команда, я узнал tsql
, может быть установлен через Кв.:
$ sudo apt-get install freetds-bin
Надежда Вы скопировали содержание в ссылке на файл. Необходимо обновить детали SQL-сервера в файле "/etc/odbc.ini". Вы можете Вы отсылать ссылку http://guywyant.info/log/206/connecting-to-ms-sql-server-from-ubuntu/
Я должен был сделать это для Ubuntu 14.04 и 17.04, оба LTS 64-разрядный. Вероятно, работы для более поздних версий.
Установка unixodbc (соединения ODBC), freetds (соединения SQL Server) и tdsodbc (мост между бывшими двумя)
sudo apt install unixodbc freetds-bin tdsodbc
Добавляет, Ваши драйверы ODBC к /etc/odbcinst.ini (должно быть пустым)
[SQL Server]
Description = FreeTDS driver
Driver = /usr/lib/i386-linux-gnu/odbc/libtdsodbc.so
Setup = /usr/lib/i386-linux-gnu/odbc/libtdsS.so
FileUsage = 1
UsageCount = 1
, Добавляют, Ваш DSNs к /etc/odbc.ini (должно быть также пустым)
[ACCOUNTING]
Description = Accounting database
Driver = /usr/lib/i386-linux-gnu/odbc/libtdsodbc.so
Server = 123.123.123.123
Database = your_database_name
Port = 1433
, И это было всем.
Соединяться с экземпляром MSSQL, работающим на удаленном сервере:
Выполняют применимые шаги в этой статье https://docs.microsoft.com/en-us/sql/connect/odbc/linux-mac/connection-string-keywords-and-data-source-names-dsns? ПРИМЕЧАНИЕ view=sql-server-2017
: Для завершения тестов необходимо сделать еще несколько вещей: Отредактируйте /etc/odbc.ini и добавьте следующее:
[MSSQL] Driver=ODBC Driver 17 for SQL Server Server=[ServerIP][,1433]
Для выполнения теста выполните следующее в терминале:
isql-v MSSQL [имя пользователя] [пароль]
необходимо видеть "связанный" ответ.
, Если Вы боретесь, проверьте, что порты на Вашем Linux и Windows Server открыты!
Отвечать на вопрос, подразумеваемый:
Мне нужно легкое и полное учебное руководство для того, чтобы установить связь MSSQL из Ubuntu
... и игнорирование всего FreeTDS устанавливает материал.
Используйте mssql-cli (установка, использование).
Я работаю в компании, которая в большой степени использует продукты Microsoft. Однако я предпочитаю работать над машиной Linux (Ubuntu). А именно, я использую Ubuntu 16.04 LTS.
Я использую DataGrip JetBrains или Электрон SQL как графический интерфейсы пользователя SQL. DataGrip потребует Microsoft JDBC Driver для SQL Server, на который необходимо указать вручную при открытии DataGrip впервые. Я вставил это /usr/share/java/
, но где угодно будет работать.
Соединение просто на моем ноутбуке Windows 10. Я просто открываю SQL Server Management Studio и использую мои учетные данные для входа в систему (имя пользователя + пароль); я не использую аутентификацию Windows.
Для соединения из Ubuntu это - немного (просто немного) дополнительная работа. Во-первых, на моей машине Windows 10, я открываю терминал Powershell и ввожу в следующем
nslookup <server name here>
и это возвращает что-то как
Non-authoritative answer:
Name: <server name here>
Address: <server's address>
Имя и адрес сервера будет статично, таким образом, вышеупомянутое только будет необходимо для выполнения однажды на сервер, Вы пытаетесь получить доступ.
Затем я перехожу на свою машину Linux и открываю DataGrip. Для Host
Я ввожу <server's address>
, Порт: 1433 (это - значение по умолчанию для SQL Server MS). URL должен посмотреть что-то как,
URL: jdbc:sqlserver://<server's address>:1433
Если Вы нажимаете Test Connection
, это предложит Вам данные для входа, если Вы еще не добавили это. И вот именно для DataGrip!
DataGrip также имеет следующий блог, который может быть полезен новым пользователям: Соединение DataGrip к SQL Server MS
Если Вы не хотите покупать DataGrip, можно использовать Электрон SQL. Шаги подобны. Откройте Электрон SQL, щелчок добавляют для добавления нового сервера, и для Server Address
ввести <server's address>
, Порт: 1433 и наконец Ваши данные для входа в систему. И ВОТ ИМЕННО!