Pyodbc: Login-Timeout-Fehler
Ich versuche eine Verbindung zu MS SQL Server mit pyodbc
von einer remote-Maschine mit Ubuntu 16.04.
import pyodbc
conn = pyodbc.connect(r'DRIVER=ODBC Driver 17 for SQL Server; SERVER=xxxTest-SRV; PORT=51333; DATABASE=TestDB; UID=xxxx; PWD=xxxx;')
Ich bin immer folgende Fehlermeldung:
pyodbc.OperationalError: ('HYT00', '[HYT00] [unixODBC][Microsoft][ODBC
Fahrer 17 für SQL Server]Login timeout expired (0)
(SQLDriverConnect)')
Ich habe versucht, mit dem server IP
in der Verbindungszeichenfolge, aber noch kein Glück.
Allerdings bin ich in der Lage, eine Verbindung mit sqlcmd
vom terminal
Die folgenden arbeiten:
sqlcmd -S xxxTest-SRV, 51333 -d TestDB -U xxxx -P xxxx
Ich nicht finden jedes Problem, das gab eine Antwort auf mein problem.
odbcinst.ini
[ODBC Driver 17 for SQL Server]
Description=Microsoft ODBC Driver 17 for SQL Server
Driver=/opt/microsoft/msodbcsql/lib64/libmsodbcsql-17.1.so.1.1
UsageCount=1
Es scheint immer ein Problem, eine Verbindung zu MS SQL Server mit pyodbc
von einer linux-Maschine. Gibt es einen Weg, um eine Verbindung zu SQL Server von Python. Ich werde dankbar für Ihre Hilfe bei der Lösung dieses Fehlers. Danke.
[UPDATE]
Gemäß der unten Antwort, ich aktualisiert die Verbindungszeichenfolge. Aber jetzt bekomme ich folgenden Fehler:
pyodbc.Fehler: ('01000', "[01000] [unixODBC][Driver Manager]nicht öffnen Können
lib '/opt/microsoft/msodbcsql17/lib64/libmsodbcsql-17.0.so.1.1' : Datei
nicht gefunden (0) (SQLDriverConnect)")
Meine odbcinst.ini Datei Treiber definition:
[ODBC Driver 17 for SQL Server]
Description=Microsoft ODBC Driver 17 for SQL Server
Driver=/opt/microsoft/msodbcsql17/lib64/libmsodbcsql-17.0.so.1.1
UsageCount=1
Ist es immer ein Alptraum, eine Verbindung zu MS-SQL-Server von einem Linux-Rechner. Können Sie mir bitte sagen, welche pyodbc
, unixODBC
und Driver
version ist die stabilste?
Ich den Treiber installiert haben folgenden diese Microsoft Anweisungen. Meine pyodbc
version ist 4.0.23
InformationsquelleAutor Krishnang K Dalal | 2018-04-26
Du musst angemeldet sein, um einen Kommentar abzugeben.
Microsoft ODBC-Treiber für SQL Server verwenden Sie keine
PORT=
parameter. Die port-Nummer, falls vorhanden, angefügt, um die server-name/IP-Adresse mit einem Komma, z.B.,pyodbc.Error: ('01000', "[01000] [unixODBC][Driver Manager]Can't open lib '/opt/microsoft/msodbcsql17/lib64/libmsodbcsql-17.0.so.1.1' : file not found (0) (SQLDriverConnect)")
FehlerIch deinstalliert
Microsoft ODBC Driver 17
und installiertMicrosoft ODBC Driver 13
, dann machte ich die änderung, die Sie vorgeschlagen, in Ihrem Antwort-und es funktionierte. Vielen Dank und ich bin der Annahme, diese Antwort.InformationsquelleAutor Gord Thompson