Estou com o erro abaixo ao executar um script para conectar a uma instância do MSSQL.
Estou usando o Ubuntu Disco Dingo (branch de desenvolvimento) 19.04.
Nenhum dos problemas abaixo é encontrado no Ubuntu 18.04.02. No entanto, gostaria de tentar fazê-lo funcionar na nova versão do Ubuntu.
Tenho uma instalação do Azure Data Studio v1.5.2 datada de 22 de março de 2019
Também instalou o driver Microsoft ODBC Server 2017 para Linux (versão: Ubuntu 18.10)
Driver ODBC 17 para SQL Server
Eu verifiquei que meu driver existe no caminho:
/opt/microsoft/msodbcsql17/lib64/libmsodbcsql-17.3.so.1.1
Eu executei odbcinst -j com a seguinte saída:
unixODBC 2.3.7
DRIVERS............: /etc/odbcinst.ini
SYSTEM DATA SOURCES: /etc/odbc.ini
FILE DATA SOURCES..: /etc/ODBCDataSources
USER DATA SOURCES..: /home/leeca/.odbc.ini
SQLULEN Size.......: 8
SQLLEN Size........: 8
SQLSETPOSIROW Size.: 8
No entanto, tenho um arquivo odbcinst.ini em dois locais.
Local 1:
/opt/microsoft/msodbcsql17/etc/odbcinst.ini
nano odbcinst.ini:
[ODBC Driver 17 for SQL Server]
Description=Microsoft ODBC Driver 17 for SQL Server
Driver=/opt/microsoft/msodbcsql17/lib64/libmsodbcsql-17.3.so.1.1
Localização 2:
/etc/odbcinst.ini
nano odbcinst.ini:
[ODBC Driver 17 for SQL Server]
Description=Microsoft ODBC Driver 17 for SQL Server
Driver=/opt/microsoft/msodbcsql17/lib64/libmsodbcsql-17.3.so.1.1
UsageCount=1
Eu tentei navegar para /opt/microsoft/msodbcsql17/etc
fazer o link simbólico do arquivo /etc/odbcinst.ini
executando ln -s /etc/odbcinst.ini
, mas ele falhou com o erro:ln: failed to create symbolic link 'etc/odbcinst.ini': File exists
Conectando-se à instância do SQL Server no JupyterLab usando este script:
class Database():
def __init__(self):
self.cnxn = pyodbc.connect(driver='{ODBC Driver 17 for SQL Server}',
server='servername',
database=dbname,
uid=user,
pwd=password)
dá o erro:
('01000', "[01000] [unixODBC][Driver Manager]Can't open lib '/opt/microsoft/msodbcsql17/lib64/libmsodbcsql-17.3.so.1.1' : file not found (0) (SQLDriverConnect)")
Conectar-se à instância do SQL Server usando o Azure Data Studio gera o erro:
Extension host terminated unexpectedly.
Permissões de caminho de pasta:
drwxr-xr-x /
drwxrwxr-x opt
drwxr-xr-x microsoft
drwxr-xr-x msodbcsql17
drwxr-xr-x lib64
-rwxr-xr-x libmsodbcsql-17.3.so.1.1
f: /etc/
drwxr-xr-x /
drwxr-xr-x etc
Qualquer ajuda seria apreciada, muito obrigado
Eu tive esse erro exato no Ubuntu 19.04 ontem e hoje, e pensei que poderia ajudar, depois de horas de frustração.
Usei o comando "ldd /opt/microsoft/msodbcsql17/lib64/libmsodbcsql-17.3.so.1.1" e descobri que libssl1.0.0 não foi encontrado.
Infelizmente, eu não tinha um substituto adequado disponível no repositório do Ubuntu 19.04 Disco. Consegui baixar o .deb diretamente deste recurso: https://packages.ubuntu.com/cosmic/amd64/libssl1.0.0/download , e isso resolveu meu problema.