mysql - Mac:无法通过 Docker 连接到 SQL Server
问题描述
我有一个使用 LocalDB 并在 Windows PC 上运行良好的应用程序,但是我试图通过我的 mac 运行它......我正在努力将应用程序连接到位于 docker 上的 mySQL 服务器。我一直在关注其他指南,例如(https://docs.microsoft.com/en-us/sql/linux/quickstart-install-connect-docker?view=sql-server-ver15&pivots=cs1-bash)与这个话题没有运气...
到目前为止,这是我通过终端所做的:
sudo docker pull mcr.microsoft.com/mssql/server:2019-CU5-ubuntu-18.04
sudo docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=<MyPassword123!>"
-p 1433:1433 --name sql_container
-d mcr.microsoft.com/mssql/server:2019-CU5-ubuntu-18.04也通过使用 Kitematic 验证,容器似乎运行良好
MySQL 在 System Preferences 中看起来设置良好
- 我可以使用 IP 地址作为服务器名称通过 Azure Data Studio 连接到容器,如下所示
- 在应用程序中,这就是 appsettings.json 文件夹中 ConnectionStrings 的样子……
- 但是,当我运行应用程序并尝试通过 GET 请求或在 Swagger 上点击容器时,我收到以下回复;"error": "无法连接到 SQL Server Browser。请确保 SQL Server Browser 已启动。"
- 我对此进行了研究,并尝试了在 IP 号之后包含端口号的解决方案,例如Server=(19X.XXX.X.XX, 1433)但这也出现了错误;"error": "与 SQL Server 建立连接时发生与网络相关或特定于实例的错误。找不到服务器或无法访问该服务器。验证实例名称是否正确以及 SQL Server 是否配置为允许远程连接.(提供者:TCP 提供者,错误:25 - 连接字符串无效)”
我不知道从这里去哪里......任何帮助来完成这项工作将不胜感激!
解决方案
尽管它很简单,但使这项工作的正确语法是 Server=XXX.XXX.X.XX,1433
不包括括号,IP 和端口之间没有空格