数据库
首页 > 数据库> > 安装SQL Server 2017,我得到E:无法找到包mssql-server

安装SQL Server 2017,我得到E:无法找到包mssql-server

作者:互联网

我正在使用Ubuntu 17.10,但在为17.10添加Microsoft repo之后

sudo add-apt-repository "$(curl https://packages.microsoft.com/config/ubuntu/$(lsb_release -sr)/prod.list)"

我试着安装SQL Server

# apt-get install mssql-server
Reading package lists... Done
Building dependency tree       
Reading state information... Done
E: Unable to locate package mssql-server

解决方法:

通常,发行版以特定格式打包事物,例如添加类似的存储库

deb [arch=amd64] https://packages.microsoft.com/ubuntu/17.10/prod zesty main

会告诉apt下载包列表并在这里查找包,

https://packages.microsoft.com/ubuntu/17.10/prod/pool/

但是,微软并非如此.他们有一个17.10的存储库(他们应该),它有Ubuntu的所有包,但是他们有另一个专门用于SQL Server的存储库.更令人困惑的是,SQL Server存储库位于16.04的树中.

所以他们都有(注意/ pool / s)

> https://packages.microsoft.com/ubuntu/16.04/mssql-server/pool/main/m/
> https://packages.microsoft.com/ubuntu/16.04/prod/pool/main/m/

您需要16.04 / mssql-server存储库.您可以添加

sudo add-apt-repository "$(curl https://packages.microsoft.com/config/ubuntu/16.04/mssql-server-2017.list)"

你可能会想,因为你有17.10 / prod,你安装了SQL Server,你不需要16.04 / prod存储库.这是不正确的,如果你想要SQL客户端sqlcmd provided by mssql-tools,你也需要它

sudo add-apt-repository "$(curl https://packages.microsoft.com/config/ubuntu/16.04/prod.list)"

我确实提交了doc bug upstream with a description of the confusion so maybe they’ll fix it someday

如果您因任何原因发现系统处于不一致状态,则可以always remove SQL Server and start over.

标签:sql-server-2017,sql-server,linux,ubuntu
来源: https://codeday.me/bug/20190806/1601056.html