我正在尝试使用此指南在 Ubuntu 16.04 上安装 mssql 驱动程序。当我进入步骤时:
sudo ACCEPT_EULA=Y apt-get install msodbcsql
Run Code Online (Sandbox Code Playgroud)
我收到错误消息:无法找到包 msodbcsql 我错过了哪一步?
提前致谢。
似乎是因为,根据那个 url,Ubuntu 的正确命令是:
sudo ACCEPT_EULA=Y apt-get install msodbcsql17
Run Code Online (Sandbox Code Playgroud)
16.04 的完整脚本:
sudo su
curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add -
#Download appropriate package for the OS version
#Choose only ONE of the following, corresponding to your OS version
#Ubuntu 16.04
curl https://packages.microsoft.com/config/ubuntu/16.04/prod.list > /etc/apt/sources.list.d/mssql-release.list
exit
sudo apt-get update
sudo ACCEPT_EULA=Y apt-get install msodbcsql17
# optional: for bcp and sqlcmd
sudo ACCEPT_EULA=Y apt-get install mssql-tools
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc
source ~/.bashrc
# optional: for unixODBC development headers
sudo apt-get install unixodbc-dev
Run Code Online (Sandbox Code Playgroud)
更新(18 年 4 月 13 日)
考虑通过运行来检查 Microsoft 存储库是否正确注册:
sudo apt-get update
Run Code Online (Sandbox Code Playgroud)
因此,您应该看到类似于“Get:30 http packages.microsoft.com/ ..”的一行。
我的虚拟机示例:
Get:29 http://security.ubuntu.com/ubuntu xenial-security/multiverse amd64 Packages [3,208 B]
Get:30 https://packages.microsoft.com/ubuntu/16.04/prod xenial/main amd64 Packages [31.7 kB]
Fetched 12.9 MB in 5s (2,265 kB/s)
Run Code Online (Sandbox Code Playgroud)
我在 Debian GNU/Linux 9 上遇到了同样的错误。
结果证明是失败的 apt-get update
# apt-get update
....
N: Is the package apt-transport-https installed?
E: Failed to fetch https://packages.microsoft.com/debian/9/prod/dists/stretch/InRelease
Run Code Online (Sandbox Code Playgroud)
根据错误日志,我跑apt-get install apt-transport-https和 apt-get update一次。
然后我就可以ACCEPT_EULA=Y apt-get install msodbcsql17成功了
注意:我是 root 用户,如果不是,请添加 sudo,尝试一下。:)
| 归档时间: |
|
| 查看次数: |
15825 次 |
| 最近记录: |