[macOS] 在 macOS 上使用 Docker 运行 Microsoft SQL Server
Microsoft SQL Server 之前是不能直接安装和运行在 macOS 上的,但是从 SQL Server 2017 开始,支持了 Linux,因此可以通过 Docker 使其在 macOS 上运行。
本文介绍使用 Docker 在 macOS 上运行 Microsoft SQL Server。
安装
安装 Docker
在 macOS 上如何安装Docker请看官方文档 Install Docker Desktop on Mac - https://docs.docker.com/docker-for-mac/install/。
也可以通过 brew
包管理器来安装 Docker。
1 | brew install --cask docker |
关于 brew
的更多信息,请查阅 The Missing Package Manager for macOS (or Linux) — Homebrew - https://brew.sh/。
拉取 SQL Server 镜像
执行如下命令拉取 SQL Server 镜像:
1 | docker pull mcr.microsoft.com/mssql/server:2017-latest |
使用 SQL Server 镜像创建并运行容器
执行如下命令使用 mcr.microsoft.com/mssql/server:2017-latest
镜像,创建一个名称为 sqlserver 的容器,该容器的端口为1433。
1 | sudo docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=Passw0rd" \ |
其中:
-e "ACCEPT_EULA=Y"
将 ACCEPT_EULA 变量设置为任意值,以确认接受最终用户许可协议。-e "SA_PASSWORD=Passw0rd"
指定至少包含 8 个字符且符合 SQL Server 密码要求的强密码。-p 1433:1433
将主机环境中的 TCP 端口(第一个值)映射到容器中的 TCP 端口(第二个值)。--rm
退出容器以后,这个容器就被删除了,方便在临时测试使用。--name sqlserver
为容器指定一个自定义名称,而不是使用随机生成的名称。
关于 SQL Server 镜像的更多信息,请查阅 Microsoft SQL Server - Ubuntu based images | Microsoft Artifact Registry - https://mcr.microsoft.com/en-us/product/mssql/server/about
查看容器运行状况
1 | ps -e | grep sqlserver |
可以通过执行 docker logs
命令检查 SQL Server 运行日志。
1 | docker logs sqlserver |
使用
在容器内连接 SQL Server
使用
docker exec -it
命令在运行的容器内部启动交互式 `Bash Shell:1
docker exec -it sqlserver bash
sqlserver 是在创建容器时由
-–name
参数指定的名称。在容器内部使用
sqlcmd
进行本地连接。 默认情况下,sqlcmd
不在路径之中,因此需要指定完整路径。1
2/opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P "Passw0rd"
如果成功,应会显示 sqlcmd 命令提示符
1>
。
利用 DBeaver 等可视化工具连接 SQL Server
在 macOS 上如何安装 DBeaver 请看官方文档 Download | DBeaver Community - https://dbeaver.io/download/。
也可以通过 brew
包管理器来安装 DBeaver。
1 | brew install --cask dbeaver-community |
参考链接
[1] Install on Mac | Docker Documentation - https://docs.docker.com/desktop/install/mac-install/
[4] Microsoft Data Platform | Microsoft - https://www.microsoft.com/en-us/sql-server/
[5] docker — Homebrew Formulae - https://formulae.brew.sh/cask/docker
[6] dbeaver-community — Homebrew Formulae - https://formulae.brew.sh/cask/dbeaver-community
[7] Download | DBeaver Community - https://dbeaver.io/download/
[8] DBeaver Community | Free Universal Database Tool - https://dbeaver.io/
[9] The Missing Package Manager for macOS (or Linux) — Homebrew - https://brew.sh/
[10] 如何在macOS上安装SQL Server ? - 干志雄的博客 - https://ganzhixiong.com/p/9d314fb4/