无法从 WSL2 Ubuntu 连接到 sql 服务器

问题描述 投票:0回答:1

我正在尝试让 Ubuntu 22.04 与我的 Windows 计算机上的 mssql 服务器通信。托管 WSL2 Ubuntu 发行版的同一台计算机。我已经安装了unixodbc。 odbc.ini文件如下:

[MYDSN]
Driver="ODBC Driver 18 for SQL Server"
Server=192.168.1.100
Port=1433
Database=mydb

我的 odbinst.ini 文件如下所示:

[ODBC Driver 18 for SQL Server]
Description=Microsoft ODBC Driver 18 for SQL Server
Driver=/opt/microsoft/msodbcsql18/lib64/libmsodbcsql-18.3.so.2.1
UsageCount=1

当我执行 sudo odbcinst -j 时,我得到以下信息:

DRIVERS............: /etc/odbcinst.ini
SYSTEM DATA SOURCES: /etc/odbc.ini
FILE DATA SOURCES..: /etc/ODBCDataSources
USER DATA SOURCES..: /root/.odbc.ini
SQLULEN Size.......: 8
SQLLEN Size........: 8
SQLSETPOSIROW Size.: 8

但是,当我执行时:

isql -v MYDSN sa "mypassword"

我得到以下信息:

[IM002][unixODBC][Driver Manager]Data source name not found and no default driver specified
[ISQL]ERROR: Could not SQLConnect

我能够 ping SQL Server 的 IP 地址。我在 Windows 防火墙上打开了端口 1433,并且 SQL Server 设置为允许远程连接并使用 TCP/IP。

sql-server ubuntu odbc windows-subsystem-for-linux unixodbc
1个回答
0
投票

在我的故障排除中,我未能按照 AlwaysLearning 的建议返回并删除 odbc.ini 中的 Driver="ODBC Driver 18 for SQL Server" 中的引号。删除引号后,我收到了不同的错误 [08001][unixODBC][Microsoft][ODBC Driver 18 for SQL Server]SSL Provider: [error:0A000086:SSL 例程::证书验证失败:自签名证书] 通过将 Encrypt=no 添加到 odbc.ini 文件已修复此问题。我在[此处]找到了这个问题的答案。1我现在可以使用 isql 连接到 sql server。

© www.soinside.com 2019 - 2024. All rights reserved.