Docker安装SQL Server,并使用Navicat Premium连接SQL Server

Docker安装SQL Server,并使用Navicat Premium连接SQL Server

官方文档

环境介绍:
Linux: Ubuntu 16.04.5 LTS
Docker version 18.06.1-ce, build e68fc7a
Navicat Premium 12.1

1. Docker安装SQL Server

1.1 拉取并运行容器镜像

  1. 从Microsoft Container Registry中拉取SQL Server 2017 Linux容器映像。

    sudo docker pull mcr.microsoft.com/mssql/server:2017-latest
    
  2. 使用Docker运行容器镜像

    sudo docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=YourStrong@Passw0rd" \
    -p 1433:1433 --name mssql \
    -d mcr.microsoft.com/mssql/server:2017-latest
    

    注意:
    默认情况下,密码长度必须至少为8个字符,并且包含以下四个集合中的三个字符:大写字母,小写字母,数字和符号。

    下表提供了先前docker run示例中的参数说明:

    Parameter Description
    -e 'ACCEPT_EULA=Y' 将ACCEPT_EULA变量设置为任何值以确认你接受最终用户许可协议。
    -e 'SA_PASSWORD=YourStrong!Passw0rd' 设置强密码
    -p 1433:1433 使用容器中的TCP端口(第二个值)映射主机环境(第一个值)上的TCP端口。 在此示例中,SQL Server正在侦听容器中的TCP 1433,并且它将暴露给主机上的端口1433。
    --name mssql 为容器指定自定义名称,而不是随机生成的名称。 如果你运行多个容器,则无法重复使用此名称。
    mcr.microsoft.com/mssql/server:2017-latest SQL Server 2017 Linux容器映像。
  3. 使用docker ps命令查看Docker容器镜像

    sudo docker ps -a
    
    docker查看容器镜像

1.2 更改SA用户密码

 sudo docker exec -it mssql /opt/mssql-tools/bin/sqlcmd \
   -S localhost -U SA -P "<YourStrong!Passw0rd>" \
   -Q 'ALTER LOGIN SA WITH PASSWORD="YourNewStrong!Passw0rd"'

1.3 连接 SQL Server

  1. 使用docker exec -it命令在正在运行的容器中启动交互式bash shell。 在以下示例中,mssql是在创建容器时由--name参数指定的名称。

    sudo docker exec -it mssql /bin/bash
    
  2. 进入容器后,使用sqlcmd进行本地连接。 默认情况下,Sqlcmd不在路径中,因此您必须指定完整路径。

    /opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P "YourNewStrong@Passw0rd"
    
  3. 如果登录成功,你应该进入sqlcmd命令提示符:1>

1.4 创建和查询数据

  1. 创建数据库TestDB

    CREATE DATABASE TestDB
    
  2. 上面的命令没有立即执行,必须在新的一行输入 GO,才能执行以上的命令

    GO
    
  3. Insert data

    USE TestDB
    
    CREATE TABLE Inventory (id INT, name NVARCHAR(50), quantity INT)
    
    INSERT INTO Inventory VALUES (1, 'banana', 150);
    INSERT INTO Inventory VALUES (2, 'orange', 154);
    
    GO
    
  4. Select data

    SELECT * FROM Inventory WHERE quantity > 152;
    
    GO
    
  5. 退出sqlcmd

    QUIT
    

2. Navicat Premium连接SQL Server

前提: 如果防火墙开启,需要添加端口

Navicat Premium 连接SQL Server

3. 删除容器

  1. 如果要删除示例中使用的SQL Server容器,请运行以下命令:

    sudo docker stop mssql
    sudo docker rm mssql
    
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 在本快速入门教程中,你使用 Docker 请求和运行 SQL Server 2017 容器映像 mssql ser...
    chjxidian阅读 11,841评论 1 0
  • 终于按时完成第二篇。本来准备着手讲一些实践,但是数据库部分没有讲到,部分实践会存在一些问题,于是就有了此篇以及后续...
    雪雁阅读 4,938评论 0 16
  • 步骤 调整 docker 内存大小为4G 下载SQL Server镜像sudo docker pull micro...
    浮梁翁阅读 11,092评论 0 2
  • 很多人不知道SqlServer还有Linux版的,微软官方于2016年就发布了SqlServer 2017 for...
    smooth00阅读 8,624评论 1 1
  • 我正眼盯着你看 看进了你的身体 看到了你的内心 看穿了你的現世 看到一位少女向我款款走来 她说她是你祖奶奶 二零一...
    楊孜阅读 3,666评论 6 3

友情链接更多精彩内容