SQL Server 简介与 Docker Compose 部署
创始人
2025-07-03 09:40:56
0

今天我翻阅了在之前公司工作时的笔记,发现了有关数据库的一些记录。当时,我们的项目开始使用 Oracle 数据库,但后来由于一些项目需求的变更,我们切换到了 SQL Server 。值得一提的是,公司当时也开始采用 Docker 技术,数据库的部署都是通过 Docker Compose 来完成的。今天,我想与大家分享一下我当时记录的SQL Server数据库部署笔记。

SQL Server 是由微软公司开发的一款强大的关系型数据库管理系统(RDBMS),广泛应用于企业级应用程序和数据存储。使用 Docker Compose,您可以轻松地将 SQL Server 实例部署到容器化环境中,并方便地进行数据库管理。在本文中,我将简要介绍 SQL Server 的基本概念,并详细阐述如何使用 Docker Compose 部署 SQL Server 容器。

什么是 SQL Server?

SQL Server 是一种功能强大的关系型数据库管理系统,它支持广泛的企业级应用程序和数据存储需求。SQL Server 提供了高级的数据管理、安全性和性能优化功能,适用于各种规模的业务。它具有以下特点:

  • 强大的查询语言:SQL Server 支持 SQL 查询语言,使您能够轻松地检索、更新和管理数据库中的数据。
  • 高级安全性:SQL Server 提供强大的安全性功能,包括访问控制、数据加密和身份验证,以保护敏感数据。
  • 可扩展性:SQL Server 可以轻松扩展以适应不断增长的数据需求,并具有自动化的性能优化功能。
  • 支持多种平台:SQL Server 不仅可以在 Windows 平台上运行,还可以在 Linux 和容器化环境中使用。

使用 Docker Compose 部署 SQL Server

创建docker-compose.yml文件

version: '3.3'
services:
  sqlserver:
    image: microsoft/mssql-server-linux
    container_name: mssql-server
    restart: always
    environment:
      #接受最终用户许可协议
      - ACCEPT_EULA=Y
      #SA用户密码,密码长度必须至少为8个字符,并且包含以下四组中的三组字符:大写字母、小写字母、数字和符号。
      - SA_PASSWORD=Xiuji2023
    ports:
      - 1433:1433
    volumes:
      - ./mssql:/var/opt/mssql

在docker-compose.yml 的同级目录下执行如下命令启动容器:

docker-compose up -d

注意:SA用户密码长度必须至少为8个字符,并且包含以下四组中的三组字符:大写字母、小写字母、数字和符号。如果不符合要求,启动的时候日志显示报错

图片图片

连接数据库

博主使用的是nacivat 连接的

图片图片

如果连接的时候出现如下弹框

图片图片

原因是未安装对应驱动,我们只需在navicat的安装目录下找到对应驱动,点击安装即可, 安装过程中设置为全部允许安装

图片图片

安装完之后连接就可以了,我们可以执行如下sql查看数据库的版本:

SELECT @@VERSION

图片图片

总结

SQL Server 是一个功能强大的关系型数据库管理系统,适用于各种规模的应用程序和数据存储需求。使用 Docker Compose,您可以轻松部署和管理 SQL Server 容器,使其适用于现代容器化环境。希望本文对您了解 SQL Server 并进行容器化部署有所帮助。

相关内容

热门资讯

PHP新手之PHP入门 PHP是一种易于学习和使用的服务器端脚本语言。只需要很少的编程知识你就能使用PHP建立一个真正交互的...
网络中立的未来 网络中立性是什... 《牛津词典》中对“网络中立”的解释是“电信运营商应秉持的一种原则,即不考虑来源地提供所有内容和应用的...
各种千兆交换机的数据接口类型详... 千兆交换机有很多值得学习的地方,这里我们主要介绍各种千兆交换机的数据接口类型,作为局域网的主要连接设...
粉嫩如何诠释霸道 东芝M805... “霸道粉”是个什么玩意东芝M805拿过来的时候,笔者扑哧笑了,不是笑这款笔记本,而是笑这款产品的颜色...
什么是大数据安全 什么是大数据... 在《为什么需要大数据安全分析》一文中,我们已经阐述了一个重要观点,即:安全要素信息呈现出大数据的特征...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
全面诠释网络负载均衡 负载均衡的出现大大缓解了服务器的压力,更是有效的利用了资源,提高了效率。那么我们现在来说一下网络负载...
如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
30分钟搞定iOS自定义相机 最近公司的项目中用到了相机,由于不用系统的相机,UI给的相机切图,必须自定义才可以。就花时间简单研究...
Intel将Moblin社区控... 本周二,非营利机构Linux基金会宣布,他们将担负起Moblin社区的管理工作,而这之前,Mobli...