码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Docker安装MS SQL Server并使用Navicat远程连接


    思维导航

    • MS SQL Server简介
    • 基于Ubuntu的Microsoft SQL Server官方镜像
    • 拉取Microsoft SQL Server 2022容器镜像
    • 验证mssql镜像是否成功拉取到本地
    • 创建并运行一个mssql容器
    • 注意大坑使用Docker部署Sql Server容器后过几秒就停止了
    • 验证容器是否创建成功
    • 设置 Docker 主机防火墙规则
    • 服务器防火墙配置1433的开放端口
    • Navicat远程连接
    • 参考文章

    MS SQL Server简介

    Microsoft SQL Server(简称SQL Server)是由微软公司开发的关系数据库管理系统,它是一个功能强大、性能卓越的企业级数据库平台,用于存储和处理大型数据集、支持高效查询和分析等操作。SQL Server 支持广泛的应用程序开发接口(API),包括 T-SQL、ADO.NET、ODBC、OLE DB 等,并支持多种操作系统,包括 Windows、Linux 和 Docker 等。SQL Server 包含许多高级功能和组件,如数据仓库、分析服务、报告服务、全文搜索等,可为企业提供全面的数据管理和分析解决方案。

    基于Ubuntu的Microsoft SQL Server官方镜像

    • mssql-server Docker hub:https://hub.docker.com/_/microsoft-mssql-server

    拉取Microsoft SQL Server 2022容器镜像

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

    验证mssql镜像是否成功拉取到本地

    使用以下命令来查看mssql镜像是否成功拉取到本地:

    docker images
    

    创建并运行一个mssql容器

    使用以下命令启动容器(Docker 镜像启动后,将会自动启动 SQL Server),其中 Y.sa123456 为 SQL Server sa 用户的密码:

    这个命令的含义是在 Docker 中以后台模式 (-d) 运行 Microsoft SQL Server 2022 的最新版本 (mcr.microsoft.com/mssql/server:2022-latest) 镜像,并将容器命名为 mssql2022 (--name mssql2022)。同时,通过 -p 1433:1433 参数将容器的 1433 端口映射到主机的 1433 端口上,使得可以通过主机的 1433 端口访问 SQL Server。在容器启动过程中,需要设置两个环境变量:ACCEPT_EULA=Y 表示接受使用条款。MSSQL_SA_PASSWORD=Y.sa123456 表示设置 SA 用户的密码为 "Y.sa123456" [一定要注意密码一点要严格设置不然有坑,我第一次设置的是sa123456就被坑到了]。

    docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=Y.sa123456" -p 1433:1433 --name mssql2022 -d mcr.microsoft.com/mssql/server:2022-latest

    注意大坑使用Docker部署Sql Server容器后过几秒就停止了

    SA_PASSWORD=Y.sa123456 为密码,要求是最少8位的强密码,要有大写字母,小写字母,数字以及特殊符号,不然会有一个大坑(Docker启动Sql Server容器后过几秒就停止了)。

    验证容器是否创建成功

    docker ps
    

    如果使用docker ps查看不到在使用docker ps -a查看,如果docker ps -a可以查看到那就说明容器没有启动需要使用docker start name来启动容器!

    设置 Docker 主机防火墙规则

    默认情况下,Docker 带有一个内置的防火墙,需要开放 1433 端口才能让外部访问 SQL Server。使用以下命令开放 Docker 主机的 1433 端口:

    sudo ufw allow 1433/tcp
    

    重启防火墙,注意重启防火墙之后才会生效:

    sudo ufw reload
    

    服务器防火墙配置1433的开放端口

    Navicat远程连接

    参考文章

    • 使用 Docker 运行 SQL Server Linux 容器映像:https://learn.microsoft.com/zh-cn/sql/linux/quickstart-install-connect-docker?view=sql-server-ver16&pivots=cs1-bash
  • 相关阅读:
    海岸雷达问题(java实现)——贪心算法例题
    Visual Studio 2019 + LibTorch + CUDA11.6 环境配置
    Java Math.tan()/Math.tanh()具有什么功能呢?
    systemd 服务脚本编写与管理
    5年在职经验之谈:2年功能测试、3年自动化测试,从入门到不可自拔...
    操作系统I/O与显示器---16
    (二)k8-集群创建
    unity的ui怎么显示在鼠标点击位置
    FreeRTOS学习笔记(二)
    C++内存泄漏排查以及几个工具
  • 原文地址:https://www.cnblogs.com/Can-daydayup/p/18032421
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号