无法使用 Docker 访问 Mac 上的 SQL Server Express

Cannot access SQL Server Express on Mac using Docker

提问人:Joseph Anderson 提问时间:9/11/2023 最后编辑:Joseph Anderson 更新时间:9/15/2023 访问量:121

问:

我在 MacBook Pro M2022 芯片上的 Windows Parallels 上使用 Visual Studio 2022。我的目标是在 Windows Parallels 上使用 SQL Server Express。我找到了这个指南:

https://kb.parallels.com/en/129699

我能够在 Mac 上创建 SQL Server Express 的 docker 映像。我有一些问题:

  1. 使用我提供的指南,我的连接字符串是什么?
  2. 我应该在 parallels 内部还是在 Mac OS 上创建一个 docker 映像?
  3. 是否可以下载 SQL Server Management Studio 的 docker 映像?

我在 parallels 之外的 MacOS 上启动了 docker 映像,但我无法找出连接字符串。服务器名称是什么?SQL?用户名也是 SQL 吗?

我进入了 Azure Data Studio,并输入了以下连接字符串:

用户 SA 密码VeryStr0ngP@ssw0rd 服务器 localhost:1433

我还尝试了 3 个 IP 地址:

  1. 我在谷歌上搜索了我的 IP 是什么,然后输入了它。
  2. 在 Parallels 中,我转到了网络>设备,并使用了该 IP 地址。
  3. 我进入 Mac OS > Network 并单击我的 WiFi 旁边的详细信息。

当我在没有并行的情况下连接时,我收到以下错误:

Microsoft.Data.SqlClient.SqlException (0x80131904):与 SQL Server 建立连接时发生与网络相关的错误或特定于实例的错误。找不到服务器或无法访问服务器。验证实例名称是否正确,以及 SQL Server 是否配置为允许远程连接。(提供程序:TCP 提供程序,错误:35 - 捕获到内部异常) ---> System.Net.Sockets.SocketException(00000005、0xFFFDFFFF):提供 nodename 或 servname,或者未知 在 System.Net.Dns.GetHostEntryOrAddressesCore (字符串主机名、 布尔值 justAddresses、 地址家庭、 Int64 开始时间戳)

docker sql-server-express 并行

评论

0赞 Kaneki21 9/11/2023
超级用户应该是,您可以连接salocalhost:1433
0赞 Joseph Anderson 9/14/2023
谢谢。我试过了,但还是失败了。

答:

0赞 arnaud 9/14/2023 #1

SQL Server 的主机应来自 MacOS。您可以使用 MacOS 中的客户端测试您是否能够使用此主机连接到 SQL Server。localhost:1433

但是你的并行不能使用 localhost。您需要从您的参数中查找 MacOS 的 IP,并将 localhost 替换为此 IP。本文档可以帮助 https://kb.parallels.com/4948

并确保端口未被防火墙阻止1433