Python - Linux - Подключение к MS SQL с учетными данными Windows - FreeTDS + UnixODBC + pyodbc или pymssql - PullRequest
6 голосов
/ 24 мая 2010

Кажется, нет никаких хороших инструкций для настройки этого.У кого-нибудь есть хорошие инструкции?Я Линукс Нуб, так что будь нежным.Я видел другой пост , который похож, но реального ответа нет.

У меня есть пара проблем.

  1. FreeTDS "не похоже" работает.Я пытаюсь подключиться и получаю следующее сообщение с помощью команды "tsql": "Для базы данных по умолчанию задано значение databaseName. Была проблема с подключением к серверу", но в ней не упоминается, в чем заключается проблема.

  2. Ошибка при попытке подключения с использованием pyodbc: «pyodbc.Error: ('08S01', '[08S01] [unixODBC] [FreeTDS] [SQL Server] Невозможно подключиться: Adaptive Server isнедоступен или не существует (20009) (SQLDriverConnectW) ') "

  3. Я пробовал что-то похожее с pymssql, но столкнулся с похожими проблемами.Я продолжаю получать сообщения об ошибках, которые не могу подключить, но это не говорит мне, почему.

Ответы [ 3 ]

2 голосов
/ 22 августа 2010

Следующее работает, если вы настраиваете сервер MS SQL для разрешения удаленных подключений TCP / IP и имеете соответствующего пользователя для подключения как.

Вы также должны быть осторожны, чтобы установить правильное имя хоста для БД, как сообщается в MS SQL.

import pymssql
connection = pymssql.connect(
            user = 'username', 
            password = 'password', 
            host = 'server', 
            database = 'database',
        )
cursor = connection.cursor()
cursor.execute('select * from db;')
rows = cursor.fetchall()
1 голос
/ 17 июня 2011

При построении FreeTDS (http://www.freetds.org/userguide/config.htm):

./configure --with-tdsver=8.0 --enable-msdblib
0 голосов
/ 25 октября 2010

Эта ошибка говорит о том, что версия TDS установлена ​​неправильно. Вы можете установить это в настройках конфигурации для FreeTDS. Вы не упоминаете, какую версию MSSQL вы используете. Но если вы используете скажем 2005, установка 8.0 в качестве версии TDS будет работать.

...