当我在终端中执行以下命令时:
#sudo apt-get install msodbcsql
我收到以下错误:
安装失败,检测到 SQL Server 的 ODBC 驱动程序 11!
我尝试按照本教程重新安装:
但我仍然遇到同样的错误。 有什么想法吗?
我使用 Debian 和 Ubuntu 软件包作为 mssql 服务器。我在尝试重新安装 mssql-tools 时遇到了同样的问题,消息:
Installation Failed, ODBC Driver 13 for SQL Server Detected!
解决方案: 在文件
/etc/odbcinst.ini
中删除以下行:
[ODBC Driver 13 for SQL Server]
Description=Microsoft ODBC Driver 13 for SQL Server
Driver=/opt/microsoft/msodbcsql/lib64/libmsodbcsql-13.1.so.8.0
UsageCount=1
最后,我做到了
apt -f install
,问题解决了。
为了解决这个问题,我做了几件事:
我按照塞巴斯蒂安的建议删除了
/etc/odbcinst.ini
的内容我停止了mssql-server服务
sudo systemctl stop mssql-server
我不知道这是否有必要,但是摆弄与之相关的工具,这似乎是一件不错的事情。我做到了
sudo apt remove mssql-tools
然后
sudo apt remove msodbcsql
mssqlodbc 部分附加任何版本号然后
sudo apt install mssql-tools
这将安装最新版本的mssql-tools
,其中msodbcsql
是必需的,因此它本身会获取该软件包所需的(我认为是最新的)版本。至此,问题已经解决了,不过Sql服务应该还是可以启动的sudo systemctl start mssql-server
因此,一切对我来说又恢复正常了。
请注意,我是在 Primary OS 0.4 Loki 中执行此操作的。
我尝试安装 ODBC 13 但遇到了非常类似的错误
安装失败,检测到 SQL Server 的 ODBC 驱动程序 13!
我必须:
sudo apt-get remove unixodbc mssql-tools odbcinst libodbc1
手动安装apt下载的软件包(我在/var/cache/apt/archives/msodbcsql_13.1.4.0-1_amd64.deb中找到它)
sudo dpkg -i msodbcsql_13.1.4.0-1_amd64.deb
ldd /opt/microsoft/msodbcsql/lib64/libmsodbcsql-*
然后你可以重新安装unixodbc、mssql-tools、libodbc1等
我必须先删除 unixODBC,然后才能成功完成安装。
当 MS 说“yum 删除 unixODBC #以避免冲突”时,他们是认真的
在安装 13 之前,我已按照 MS 删除 msodbc 11 的说明进行操作。(RedHat 7 说明适用于 Fedora 25 - DNF 而不是 YUM)
我发现我也需要删除
/usr/local/etc/odbcinst.ini
。使用该配置文件后,我不断收到“安装失败,检测到 SQL Server 的 ODBC 驱动程序 11!”的消息。错误。
因此:
$ sudo bash
# apt-get remove unixodbc mssql-tools odbcinst libodbc1
# rm /usr/local/etc/odbcinst.ini
# apt-get -f install
# sudo dpkg -i msodbcsql_13.1.4.0-1_amd64.deb
安装失败,检测到 SQL Server 的 ODBC 驱动程序 11!
如果您安装了带有注册选项的软件包(默认情况下),请通过以下方式删除驱动程序:
odbcinst -u -d -n "ODBC Driver 13 for SQL Server"
最终通过以下方式找到驱动程序的ini文件:
odbcinst -j
并手动删除驱动程序部分。
有类似的问题,阻碍了 PopOS (debian) 的自动更新:
安装包时出错:新的 msodbcsql18 包预安装脚本子进程返回错误退出状态 1
我已经手动更新了软件包
sudo apt-get install msodbcsql18
并且我被提升进行必要的 EULA 检查 - 这可能是之前缺失的
更新输出:
Preparing to unpack .../msodbcsql18_18.4.1.1-1_amd64.deb ...
Unpacking msodbcsql18 (18.4.1.1-1) over (18.3.3.1-1) ...
ODBC Driver 18 for SQL Server has been deleted (if it existed at all) because its usage count became zero
Setting up msodbcsql18 (18.4.1.1-1) ...
odbcinst: Driver installed. Usage count increased to 1.