Ich hatte auch das gleiche Problem auf Ubuntu 14, nachdem ich das Microsoft-Tutorial für den SQL Server Linux ODBC-Treiber befolgt hatte.
Die Datei existiert und nach dem Ausführen eines ldd zeigte es, dass Abhängigkeiten fehlten:
/opt/microsoft/msodbcsql/lib64/libmsodbcsql-13.0.so.0.0:/usr/lib/x86_64-linux-gnu/libstdc++.so.6:Version GLIBCXX_3.4.20' not found (required by /opt/microsoft/msodbcsql/lib64/libmsodbcsql-13.0.so.0.0)
/opt/microsoft/msodbcsql/lib64/libmsodbcsql-13.0.so.0.0: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version
CXXABI_1.3.8' nicht gefunden (erforderlich für
Nachdem ich eine Weile gesucht hatte, fand ich es, weil Ubuntus Repo kein GLIBCXX in Version 3.4.20 hatte, es war bei 3.4.19.
Ich habe dann ein Repo zu Ubuntu hinzugefügt, es aktualisiert und es gezwungen, libstdc++6
zu aktualisierensudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install libstdc++6
Problem gelöst, getestet mit isql:
+---------------------------------------+
| Connected! |
| |
| sql-statement |
| help [tablename] |
| quit |
| |
+---------------------------------------+
SQL>
Danach habe ich versucht, mit pdo_odbc (PHP) zu testen, es gab mir dann den gleichen Fehler, dass der Treiber nicht gefunden wurde. Um dies zu lösen, musste ich einen symbolischen Link erstellen, um libodbcinst.so.2
zu beheben :
sudo ln -s /usr/lib64/libodbcinst.so.2 /lib/x86_64-linux-gnu/libodbcinst.so.2
Ich habe hier eine Antwort gefunden, die für mich funktioniert. Dies ist für Python 2.7 (funktioniert also möglicherweise nicht für diejenigen, die nach einer Lösung für Python 3.x suchen).
Die vorgeschlagene Lösung besteht darin, libgcc zu aktualisieren:4.8.5-2 --> 5.2.0-0
Verwenden Sie zum Aktualisieren von libgcc diesen Befehl
conda update libgcc
Ich hatte das gleiche Problem 'Datei nicht gefunden (0) (SQLDriverConnect)' auf MAC OS mit dem folgenden Code
cnxn =pyodbc.connect('DRIVER={ODBC-Treiber 13 für SQL Server};SERVER=myServerIP,1433;DATABASE=myDBName;UID=sa;PWD=dbPassword')
Nachdem ich zwei Tage lang gegoogelt habe, kann ich das Problem nicht beheben, auch wenn ich die freetds.conf, odbcinst.ini und odbc.ini ändere
Schließlich habe ich die Lösung gefunden, indem ich DRIVER ersetzt habe Wert
cnxn =pyodbc.connect('DRIVER={/usr/local/lib/libmsodbcsql.13.dylib};SERVER=myServerIP,1433;DATABASE=myDBName;UID=sa;PWD=dbPassword')
Meine Entwicklungsumgebung
- MAC OS El Capitan
- Python 3.6.1 in Anaconda