提问人:Joseph Anderson 提问时间:9/11/2023 最后编辑:Joseph Anderson 更新时间:9/15/2023 访问量:121
无法使用 Docker 访问 Mac 上的 SQL Server Express
Cannot access SQL Server Express on Mac using Docker
问:
我在 MacBook Pro M2022 芯片上的 Windows Parallels 上使用 Visual Studio 2022。我的目标是在 Windows Parallels 上使用 SQL Server Express。我找到了这个指南:
https://kb.parallels.com/en/129699
我能够在 Mac 上创建 SQL Server Express 的 docker 映像。我有一些问题:
- 使用我提供的指南,我的连接字符串是什么?
- 我应该在 parallels 内部还是在 Mac OS 上创建一个 docker 映像?
- 是否可以下载 SQL Server Management Studio 的 docker 映像?
我在 parallels 之外的 MacOS 上启动了 docker 映像,但我无法找出连接字符串。服务器名称是什么?SQL?用户名也是 SQL 吗?
我进入了 Azure Data Studio,并输入了以下连接字符串:
用户 SA 密码VeryStr0ngP@ssw0rd 服务器 localhost:1433
我还尝试了 3 个 IP 地址:
- 我在谷歌上搜索了我的 IP 是什么,然后输入了它。
- 在 Parallels 中,我转到了网络>设备,并使用了该 IP 地址。
- 我进入 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 开始时间戳)
答:
SQL Server 的主机应来自 MacOS。您可以使用 MacOS 中的客户端测试您是否能够使用此主机连接到 SQL Server。localhost:1433
但是你的并行不能使用 localhost。您需要从您的参数中查找 MacOS 的 IP,并将 localhost 替换为此 IP。本文档可以帮助 https://kb.parallels.com/4948
并确保端口未被防火墙阻止1433
评论
sa
localhost:1433