如何在 Mac 上连接 SQL Server

5
我正在使用Azure Data Studio作为软件,即使使用Windows身份验证,也无法连接SQL Server。该过程返回以下错误:

this

但是当我尝试使用SQL登录连接时,程序要求输入用户名和密码。我不知道在哪里获取它们。

5个回答

3
如果您使用Docker,可以获取SQL Server镜像并在本地运行。这样可以使用Azure Data Studio连接到SQL Server实例。
首先,拉取镜像:
sudo docker pull mcr.microsoft.com/mssql/server:2017-latest
然后,运行它:
sudo docker run -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=YourStrong!Passw0rd' \ -p 1433:1433 --name sql1 \ -d mcr.microsoft.com/mssql/server:2017-latest
注意:"密码必须至少为8个字符,并包含以下四个集合中的三个集合:大写字母、小写字母、十进制数字和符号" 这很重要!否则SQL Server不会启动。
检查它是否正在运行:
docker ps -a
您将看到状态列告诉您它已经运行了多长时间。
最后,打开Azure Data Studio,插入这些值,然后单击“连接”:
- 服务器:localhost - 用户名:sa - 密码:您在步骤2中使用的密码 - 身份验证类型:选择SQL登录 - 转到高级选项 - 端口:1433
希望这有所帮助。

1

2
这是很好的信息;感谢您为社区做出的贡献。您能否编辑您的答案,包括博客文章的摘要,以便在链接指向的URL在未来被删除时,您的答案仍然保持相关性? - Jeremy Caney

1
即使我使用Azure Data Studio也遇到了相同的错误。这是因为您需要在Azure Data Studio中运行Docker。根据您的帖子,我不确定您是否已安装了Docker,或者在尝试连接到服务器时是否在后台运行Docker(如果已经安装了Docker)。
要连接到服务器,您需要转到Docker设置的首选项,并将内存分配从默认值2GB增加到最小4GB(因为SQL Server需要最小3.25GB空间)。保存并重新启动Docker。
重新启动后,您只需要拉取SQL Server的Docker镜像并下载它。可以通过终端上的以下命令完成此操作。FYI,我在下面使用bash命令: 命令1:
sudo docker pull mcr.microsoft.com/mssql/server:2017-latest

这将拉取最新版本的Docker镜像并下载。完成后,您需要在服务器上设置数据库的SQL身份验证。请按照以下命令操作: 命令2:
    sudo docker run -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=<SetYourPasswordHere>' \
   -p 1433:1433 --name sql1 \
   -d mcr.microsoft.com/mssql/server:2017-latest

这将设置您的密码并使用端口1433进行SQL服务器(默认端口)。要确认镜像是否已创建并且SQL服务器正在docker上运行,请执行以下命令检查日志。

命令3:

docker ps

如果您在尝试此SQL连接/执行之前已安装了docker,则可以检查您历史记录中的所有docker实例。运行以下命令将为您提供创建的所有实例的所有日志。

命令4:

docker ps -a 

or

docker ps -all

一旦您完成了上述步骤并看到Docker已创建SQL实例,您需要前往Azure Data Studio,并设置以下凭据以访问使用Docker刚刚创建的服务器。
Server: localhost
Authentication Type: SQL Authentication
Username: sa
Password: <Check Command 2 to see what you entered in the password where it says SetYourPasswordHere>

希望这能帮助您在 MAC 上运行 SQL server。祝一切顺利!

0
在您的截图中,似乎您正在尝试连接到本地主机。
请确保您已经成功安装了 SQL Server 在您的本地机器上。本地端口 1433 应该被 SQL Server 进程监听。
错误信息:
A network-related or instance-specific error occurred while establishing a connection to SQL Server

这意味着您无法连接到目标机器。并不是因为您使用了错误的密钥或身份验证模式。

当然,在 Mac 上无法使用 Windows 集成身份验证。请尝试联系准备您的 SQL Server 实例的人,并获取其密码。


-1

你不能通过Mac使用Windows身份验证登录。Windows身份验证是Windows身份验证。当你尝试通过Mac使用Windows身份验证连接SQL服务器时,数据工作室会尝试使用你的Mac登录属性,而这个属性不能与你想要连接到的Windows服务器相同。

如果你想通过数据工作室在Mac上登录SQL服务器,你需要知道一个SQL服务器用户和密码。


好的,明白了。但是我在哪里可以获取SQL用户名、密码,或者如何注册呢? - Bob Reynolds
抱歉,无法获取 SQL Server 的用户名和密码。如果您想通过 Mac 连接到 SQL Server,则需要从您的数据库管理员那里获取用户名和密码,或者通过连接到 SQL Server 的 Windows 服务器(尝试使用 Windows 身份验证方式连接 SQL Server)自己创建它们。除此以外,没有其他解决方案。 - alexkidd

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接