J'ai également eu le même problème sur Ubuntu 14 après avoir suivi le tutoriel Microsoft pour SQL Server Linux ODBC Driver.
Le fichier existe et après avoir exécuté un ldd, il a montré qu'il manquait des dépendances :
/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' introuvable (requis par
après avoir cherché pendant un moment, j'ai trouvé que c'était parce que le repo d'Ubuntu n'avait pas GLIBCXX sur la version 3.4.20, c'était à 3.4.19.
J'ai ensuite ajouté un référentiel à Ubuntu, l'ai mis à jour et l'ai forcé à mettre à niveau libstdc++6
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install libstdc++6
Problème résolu, testé avec isql :
+---------------------------------------+
| Connected! |
| |
| sql-statement |
| help [tablename] |
| quit |
| |
+---------------------------------------+
SQL>
Après cela, j'ai essayé de tester en utilisant pdo_odbc (PHP), cela m'a ensuite donné la même erreur de pilote introuvable. Pour résoudre ce problème, j'ai dû créer un lien symbolique pour corriger libodbcinst.so.2
:
sudo ln -s /usr/lib64/libodbcinst.so.2 /lib/x86_64-linux-gnu/libodbcinst.so.2
J'ai trouvé une réponse qui fonctionne pour moi ici. Ceci est pour python 2.7 (donc peut ne pas fonctionner pour ceux qui recherchent une solution pour python 3.x).
La solution suggérée est de mettre à jour libgcc :4.8.5-2 --> 5.2.0-0
Pour mettre à jour libgcc, utilisez cette commande
conda update libgcc
J'ai eu le même problème 'file not found (0) (SQLDriverConnect)' sur MAC OS avec le code suivant
cnxn =pyodbc.connect('DRIVER={Pilote ODBC 13 pour SQL Server};SERVER=myServerIP,1433;DATABASE=myDBName;UID=sa;PWD=dbPassword')
après avoir cherché sur Google pendant deux jours, je ne peux pas résoudre le problème, même modifier les fichiers freetds.conf, odbcinst.ini et odbc.ini
enfin, j'ai trouvé la solution en remplaçant DRIVER valeur
cnxn =pyodbc.connect('DRIVER={/usr/local/lib/libmsodbcsql.13.dylib};SERVER=myServerIP,1433;DATABASE=myDBName;UID=sa;PWD=dbPassword')
Mon environnement de développement
- MAC OS El Capitan
- python 3.6.1 dans Anaconda