我可以使用ODBC在windows桌面上连接ms sql server,在使用Linux时遇到了这个问题。ODBC驱动程序已经安装,但我无法连接。我在网上搜索,大多数帖子都说这是windows身份验证问题。我设置Trusted_Connection=No并在isql -v MSSQL [UID] [PWD]中输入UID/PWD。
它给了我一个错误说:

[28000][unixODBC][Microsoft][ODBC Driver 13 for SQL Server][SQL Server]Login failed for user 'UID'.
[ISQL]ERROR: Could not SQLConnect

ODBC配置文件:
[root@IRISOEL01 etc]# cat odbcinst.ini
[ODBC]
Trace = Yes
TraceFile = /tmp/trace.log


[ODBC Driver 13 for SQL Server]
Description=Microsoft ODBC Driver 13 for SQL Server
Driver=/opt/microsoft/msodbcsql/lib64/libmsodbcsql-13.0.so.1.0
UsageCount=3


[root@IRISOEL01 etc]# cat odbc.ini
[MSSQL]
Driver=ODBC Driver 13 for SQL Server
Server=server_address
Database=master
AnsiNPW=Yes
QuotedId=Yes
AutoTranslate=Yes
Trusted_Connection=No
Encrypt=No

最佳答案

我只能告诉您在odbcinst.in I中尝试使用您在odbcinst.ini中配置的驱动程序的名称

Driver=ODBC

在odbcinst.in I中添加驱动程序路径之后,例如,我使用这个odbcinst.ini
[SQLServer]
Description=Microsoft SQL Server ODBC Driver V1.0 for Linux
Driver=/opt/microsoft/sqlncli/lib64/libsqlncli-11.0.so.1790.0
Threading=1
UsageCount=1

然后在odbc.ini中
[source]
Driver=SQLServer
Description=ODBC Database Connection
Trace=No
Server=192.168.1.25,1433
Database=dbname

关于sql-server - Unix ODBC Connect 2016 MS SQL Server SQL状态28000 native 错误18456,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40475252/

10-12 14:47
查看更多