También tuve el mismo problema en Ubuntu 14 después de seguir el tutorial de Microsoft para el controlador ODBC de SQL Server Linux.
El archivo existe y después de ejecutar un ldd, mostró que faltaban dependencias:
/opt/microsoft/msodbcsql/lib64/libmsodbcsql-13.0.so.0.0:/usr/lib/x86_64-linux-gnu/libstdc++.so.6:versión 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' no encontrado (requerido por
después de buscar por un tiempo encontré que el repositorio de Ubuntu no tenía GLIBCXX en la versión 3.4.20, estaba en la 3.4.19.
Luego agregué un repositorio a Ubuntu, lo actualicé y lo obligué a actualizar 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
Problema resuelto, probado con isql:
+---------------------------------------+
| Connected! |
| |
| sql-statement |
| help [tablename] |
| quit |
| |
+---------------------------------------+
SQL>
Después de eso, intenté probar usando pdo_odbc (PHP), luego me dio el mismo error de controlador no encontrado. Para resolver esto, tuve que crear un enlace simbólico para arreglar libodbcinst.so.2
:
sudo ln -s /usr/lib64/libodbcinst.so.2 /lib/x86_64-linux-gnu/libodbcinst.so.2
Encontré una respuesta que me funciona aquí. Esto es para python 2.7 (por lo que puede no funcionar para aquellos que buscan una solución para python 3.x).
La solución sugerida es actualizar libgcc:4.8.5-2 --> 5.2.0-0
Para actualizar libgcc, use este comando
conda update libgcc
Tuve el mismo problema 'archivo no encontrado (0) (SQLDriverConnect)' en MAC OS con el siguiente código
cnxn =pyodbc.connect('CONTROLADOR={Controlador ODBC 13 para SQL Server};SERVER=myServerIP,1433;DATABASE=myDBName;UID=sa;PWD=dbPassword')
después de buscar en Google durante dos días, no puedo solucionar el problema ni siquiera modificar freetds.conf, odbcinst.ini y odbc.ini
finalmente, encontré la solución reemplazando DRIVER valor
cnxn =pyodbc.connect('CONTROLADOR={/usr/local/lib/libmsodbcsql.13.dylib};SERVER=myServerIP,1433;DATABASE=myDBName;UID=sa;PWD=dbPassword')
Mi entorno de desarrollo
- MAC OS El Capitán
- Python 3.6.1 en Anaconda