首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Docker容器中sqlserver的连接字符串

Docker容器中sqlserver的连接字符串
EN

Stack Overflow用户
提问于 2017-08-16 19:17:54
回答 2查看 44K关注 0票数 53

我正在使用带有dotnet Core和EF Core的Visual Studio 2017 for mac。在Docker容器中设置mssql镜像后,我试图添加连接字符串,但抛出连接错误。我尝试使用不同的选项,如ip地址、容器名称、主机名等作为服务器名称,但它们都不起作用。

代码语言:javascript
复制
 "Default": "Server=172.17.0.2; Database=ERPDb; User=sa; Password =******;"

使用容器名称

代码语言:javascript
复制
 "Default": "Server=ecstatic_hermann; Database=ERPDb; User=sa; Password=******;"

使用主机名:

代码语言:javascript
复制
 "Default": "Server=f45840a59623; Database=ERPDb; User=sa; Password=******;"

在终端中使用localhost连接时,连接成功

代码语言:javascript
复制
$ mssql -s localhost -p Technocrat123
Connecting to localhost...done

sql-cli version 0.6.2
Enter ".help" for usage hints.

但在运行应用程序时,连接失败。

感谢任何人的帮助。提前谢谢。

如果使用localhost,则错误为

代码语言:javascript
复制
Login failed for user ''. Reason: An attempt to login using SQL authentication failed. Server is configured for Integrated authentication only.
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-04-16 22:44:32

我刚刚写了一篇关于这方面的博文。看看richminchuk.io吧。否则:

代码语言:javascript
复制
sudo docker pull microsoft/mssql-server-linux:2017-latest
docker run \
   -e 'ACCEPT_EULA=Y' \
   -e 'MSSQL_SA_PASSWORD=YourSTRONG!Passw0rd' \
   -p 1401:1433 \
   -n sql1 \
   -d microsoft/mssql-server-linux:2017-latest

然后,

代码语言:javascript
复制
private static string _connStr = @"
   Server=127.0.0.1,1401;
   Database=Master;
   User Id=SA;
   Password=YourSTRONG!Passw0rd
";
票数 48
EN

Stack Overflow用户

发布于 2018-02-19 10:25:55

您的服务器名称最有可能是localhost和端口1401 (这是Docker容器设置的默认设置)。因此,您需要使用以下连接字符串:

代码语言:javascript
复制
"Default": "Server=localhost,1401; Database=ERPDb; User=sa; Password =******;"
票数 21
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45712122

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档