本指南向您展示如何使用Docker提取MSSQL Server映像并运行它。Azure Data Studio是一个跨平台的数据库工具,将用于将Docker容器与MSSQL连接并执行SQL语句。最后,我将向您展示如何将数据库导入Docker文件系统,以便您可以通过Azure Data Studio访问它。
数据库:Microsoft SQL Server
提取mssql-server-demo的容器:Docker
mssql-cli的安装程序:Node.js(运行时环境)/ Node Package Manager(NPM)
数据库工具和GUI:Azure Data Studio
这部分的完整指南在这里:
在此处下载适用于Mac的Docker CE(社区版)。
要安装,请双击.dmg文件,然后将Docker应用程序图标拖到您的Application文件夹中。
Docker是一个平台,使软件可以在自己的隔离环境中运行。SQL Server(自2017年起)可以在Docker的隔离容器中运行。安装Docker后,您只需将Linux Docker Image上的SQL Server下载(或“拉”)到Mac,然后将其作为Docker容器运行。此容器是一个隔离的环境,其中包含SQL Server需要运行的所有内容。
1.打开您的Docker应用程序,它应该位于Applications文件夹中。
默认情况下,Docker将为其分配2GB的内存。SQL Server至少需要3.25GB。为了安全起见,请尽可能将其增加到4GB。在我的示例中,因为这只是一个游乐场,所以2GB就足够了。
1.从顶部菜单中的小Docker图标中选择“偏好设置”
2.将内存滑块向上滑动至少2GB
3.单击“应用并重新启动”
1.打开“终端”窗口,然后运行以下命令。
sudo docker pull mcr.microsoft.com/mssql/server:2019-latest
这会将最新的SQL Server 2019 for Linux Docker映像下载到您的计算机上。
如果愿意,您还可以在Docker网站上检查最新的容器版本。
1.运行以下命令以启动您刚刚下载的Docker映像的实例:
docker run -d --name sql_server_demo -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=really
输出示例:
您可以键入以下命令来检查Docker容器是否正在运行。
docker ps
如果启动并正在运行,则应返回以下内容:
如果您不小心关闭了Docker App,请打开终端并输入
docker start sql_server_demo
首先检查是否有Node.js和NPM,是否有带有版本号的输出。跳过本节。在您的终端中键入以下内容。
node -vnpm -v
2.通过单击以下链接访问Node.js网站:
3.单击LTS版本(版本号可能不同)下载按钮以下载Node.js软件包:
4.单击并在下载后运行该软件包。MacOS和Windows将具有不同的安装过程。请按照说明安装Node.js。
5.通过在终端中键入以下命令,再次测试Node.js和NPM是否已成功安装:
node -vnpm -v
输出应如下所示:
1.运行以下命令以安装sql-cli命令行工具。使用此工具,您可以对SQL Server实例运行查询和其他命令。
npm install -g sql-cli
如果出现权限错误,请使用sudo
命令:
sudo npm install -g sql-cli
1.使用mssql命令以及用户名和密码参数连接到SQL Server。语法:-u <用户名> -p <密码>
mssql -u sa -p reallyStrongPwd123
如果成功连接,您的输出应如下所示:
运行快速测试以检查是否可以连接到SQL Server。
2.使用以下SQL语句检查您的SQL Server版本:
SELECT @@VERSION;
如果它正在运行,您应该会看到类似以下内容(可能有所不同):
Azure Data Studio(以前称为SQL Operations Studio)是一个免费的GUI管理工具,可用于在Mac上管理SQL Server。您可以使用它来创建和管理数据库,编写查询,备份和还原数据库等等。
Windows,Mac和Linux上都可以使用Azure Data Studio。
要将Azure Data Studio安装到您的Mac上:
1.访问Azure Data Studio下载页面,然后单击macOS的.zip文件
2. .zip文件下载完成后,双击它以展开其内容
3.将.app文件拖到 Applications文件夹中(该文件可能称为Azure Data Studio.app)
现在已经安装了Azure Data Studio,您可以使用它来连接到SQL Server。
1.启动Azure Data Studio。它位于您的应用程序文件夹中。
2.输入您要连接的SQL Server实例的登录凭据和其他信息:
它看起来应该类似于:
它看起来应该类似于:
服务器名称:本地主机,[端口号]
范例:localhost,1433
身份验证类型:SQL登录
用户名:[您的SQL Server用户名]或sa
密码:[您的SQL Server密码]或trueStrongPwd123
数据库名称:<默认>
服务器组:<默认>
如果使用默认端口1433以外的端口,请单击“高级”,然后在“端口”字段中输入该端口。
或者,您可以将其附加到服务器名称,中间用逗号隔开。例如,如果您使用端口1400,则键入localhost,1400。
现在,您可以继续创建数据库,运行脚本并执行其他SQL Server管理任务。
点击新查询
2.键入SELECT @@ VERSION,然后单击“运行查询”。
下载示例数据库文件AdventureWorks
要获取AdventureWorks的OLTP下载,请转到此链接。您可以选择任何一个,在我的示例中,我选择AdventureWorks2017.bak
版本。为了易于理解,请将其下载到“下载”文件夹中。
将文件复制到您的Docker
使用以下语法在终端中键入以下命令:
docker cp <location_of_file> <container_id>:/var/opt/mssql/data
它看起来应该像这样:
如果您忘记了容器ID,请使用docker ps
命令。
转到Azure Data Studio,然后单击localhost 1443,然后选择“还原”。
2.选择备份文件作为从中还原的选择。接下来,单击“ 备份文件路径 ”右侧的蓝色按钮。
3.查找样本数据库文件。它应该位于
/var/opt/mssql/data/AdventureWorks2017.bak
4.选择恢复。
5.检查您的本地主机1443。它应该生成一个名为AdventureWorks2017的数据库,并具有表和视图之类的内容。如果不是,请右键单击本地主机1443,然后选择“刷新”。您也可以重新启动Azure Data Studio应用程序。
从下拉菜单中选择AdventureWorks2017。
编写一个SQL查询:
SELECT * FROM HumanResources.Department;
3.单击运行以运行查询。
您应该具有以下输出:
恭喜你!