我无法通过Mac上的Visual Studio代码连接到SQL Server

时间:2017-09-20 02:34:03

标签: sql-server visual-studio-code macos-sierra

我是Mac OS的新用户,我使用Visual Studio Code作为文本编辑器。我想创建我的第一个SQL。

我一直在这些网站上一步一步地跟踪: https://docs.microsoft.com/en-us/sql/linux/sql-server-linux-develop-use-vscode

此外,我还按照此站点上的步骤安装了OpenSSL: http://mac-dev-env.patrickbougie.com/openssl/

问题是当我第一次尝试建立SQL连接时,它给出了这样的错误:

mssql: Failed to connect: System.Data.SqlClient.SqlException (0x80131904): A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: TCP Provider, error: 35 - An internal exception was caught) ---> System.AggregateException: One or more errors occurred. (Connection refused [::1]:1433) ---> Sys RetryClose Error

如何解决此问题并创建我的第一个新SQL?感谢

2 个答案:

答案 0 :(得分:0)

您确定Docker容器正在运行吗? 您可以使用" docker ps"进行检查。在终端。 您还必须确保在创建容器时映射到端口1433.

希望它有所帮助。

答案 1 :(得分:0)

通过与Azure Data Studio一起运行,我能够使用Docker在MAC上运行SQL Server。根据您的帖子,我不确定您是否已安装docker或在尝试连接到服务器时docker是否在后台运行(如果已安装docker)。

要连接到服务器,您需要转到Docker设置的首选项,并将内存分配从默认的2GB增加到最小4GB(因为SQL Server需要最少3.25GB的空间)。保存并重新启动Docker。

重新启动后,您需要做的就是提取sql服务器的docker映像并下载。这可以通过终端上的以下命令来完成。仅供参考,我在下面使用bash命令:

命令1:

sudo docker pull mcr.microsoft.com/mssql/server:2017-latest

这将提取最新的vesion 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 Server(这是默认端口)。要确认是否已创建映像并在docker上运行SQL Server,请执行以下命令以检查日志。

命令3:

docker ps

要检查docker历史记录中的所有实例(即,如果尝试此SQL连接/执行之前已安装docker),请运行以下命令,它将为您提供所有已创建实例的所有日志< / p>

命令4:

docker ps -a 

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的尝试。祝一切顺利!