MSSQL 2017 установить на один компьютер SUSE12 SP2, затем установить драйвер unixODBC на компьютер приложения, попробуйте разрешить приложению общаться с MSSQL 2017 под SUSE Linux, но ODBC api сообщает об ошибке во время подключения.вот пока я установил msodbcsql17
# sudo zypper install msodbcsql17
check configure
# odbcinst -j
unixODBC 2.3.7
DRIVERS............: /etc/unixODBC/odbcinst.ini
SYSTEM DATA SOURCES: /etc/unixODBC/odbc.ini
FILE DATA SOURCES..: /etc/unixODBC/ODBCDataSources
USER DATA SOURCES..: /users/nvh1wa/.odbc.ini
SQLULEN Size.......: 8
SQLLEN Size........: 8
SQLSETPOSIROW Size.: 8
проверьте odbcinst.ini
#cat /etc/unixODBC/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`
проверьте odbc.ini и odbc.ini пусто
вот наш коддля подключения к серверу MSSQL
`if(!SQL_SUCCEEDED(SQLDriverConnect(handle, NULL, (SQLTCHAR*)
connect_string.c_str(), SQL_NTS, ConnStrOut, 1024, &cbConnStrOut,
SQL_DRIVER_NOPROMPT)))){ report error here;}`
, который сообщает о сбое.
вот ошибка из системного журнала:
ODBC error. SQLSTATE: 08001 Native error: -1
Message: [Microsoft][ODBC Driver 17 for SQL Server]SSL Provider: [error:140A90A1:SSL routines:func(169):reason(161)]
Approx SQL was "CONNECT"
выглядит наша строка connect_stringthis "DRIVER=ODBC Driver 17 for SQL Server;DATABASE=master;SERVER=127.0.0.28;UID=testing;PWD=testing"
Из сообщения об ошибке драйвер ODBC сообщает об ошибке SSL?но мой MSSQL-сервер никогда не включал SSL.и мой sqlcmd может без проблем подключиться к моему MSSQL.
Сделал дальнейшие исследования и обнаружил ошибку SSL из драйвера MSSQL odbc.вот что я нашел, проверив ошибку SSL
/usr/bin/openssl errstr 0x140A90A1
error:140A90A1:SSL routines:SSL_CTX_new:library has no ciphers