首页 > 数据库 >docker sql server安装

docker sql server安装

时间:2024-08-18 21:16:07浏览次数:10  
标签:容器 1433 sql server sqlpreview SQL docker

概述

一般情况下,部署sql server,需要准备一台windows server服务器,然后再安装sql server。

但是windows太耗费资源了,在docker中运行,是比较方便的。

 

硬件和软件要求

要在 Docker 容器上安装 SQL Server 2019,主机服务器必须满足以下要求:

  • 任何受支持的 Linux 分发版或 Windows 或 Mac 上装有 Docker 引擎 1.8 或更高版本
  • 至少 2 GB 的内存
  • 2 GB 的磁盘空间

 

下载镜像

docker hub地址:https://hub.docker.com/r/microsoft/mssql-server

目前最新版本是2022

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

 

安装sql server

docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=Y.saabcd@1234" -p 1433:1433 -e "MSSQL_PID=Evaluation" --name sqlpreview --hostname sqlpreview -d mcr.microsoft.com/mssql/server:2022-latest

 

参数说明:

参数 说明
-e "ACCEPT_EULA=Y" 将 ACCEPT_EULA 变量设置为任意值,以确认接受最终用户许可协议。 SQL Server 映像>的必需设置。
-e "MSSQL_SA_PASSWORD=Y.saabcd@1234" 指定至少包含 8 个字符且符合密码策略的强密码。 SQL Server 映像的必需设置。
-e "MSSQL_COLLATION=<SQL_Server_collation>" 指定自定义 SQL Server 排序规则,而不使用默认值 SQL_Latin1_General_CP1_CI_AS。
-p 1433:1433 将主机环境中的 TCP 端口(第一个值)映射到容器中的 TCP 端口(第二个值)。 在此示例中,SQL Server 侦听容器中的 TCP 1433,此容器端口随后会对主机上的 TCP 端口 1433 公开。
--name sqlpreview 为容器指定一个自定义名称,而不是使用随机生成的名称。 如果运行多个容器,则无法重复使用相同的名称。
--hostname sqlpreview 用于显式设置容器主机名。 如果未指定主机名,则主机名默认为容器 ID,这是随机生成的系统 GUID。

 

注意:MSSQL_SA_PASSWORD必须符合密码策略的强密码,如果密码太简单,会导致启动失败。

如果Docker容器启动报WARNING: IPv4 forwarding is disabled. Networking will not work

解决方法
打开sysctl配置文件/etc/sysctl.conf

添加如下代码

net.ipv4.ip_forward=1

刷新配置

sysctl -p

 

查看日志

docker logs -f sqlpreview

运行成功应该会看到与下面类似的输出:

...
2024-08-18 13:12:56.66 spid14s     Recovery is complete. This is an informational message only. No user action is required.
2024-08-18 13:12:56.77 spid24s     The default language (LCID 0) has been set for engine and full-text services.
2024-08-18 13:12:56.83 spid24s     The tempdb database has 2 data file(s).

 

标签:容器,1433,sql,server,sqlpreview,SQL,docker
From: https://www.cnblogs.com/xiao987334176/p/18366125

相关文章

  • Mybatis学习日记-day7-动态sql
    一、学习目标        在之前的学习中,使用的都是静态sql,而动态SQL相比静态SQL具有多个显著的优点。    首先。,动态SQL允许根据程序运行时的条件和需求来动态地生成SQL语句。这意味着它可以根据不同的情境和需求生成不同的SQL语句,从而提供更高的灵活性和适应......
  • 数据库技术核心:查询优化(PostgreSQL)
    文章目录案例1:使用合适的索引优化查询案例2:优化多表复杂联接查询案例3:优化多条件查询案例4:消除低效的联接查询案例5:包含多个联接和聚合的复杂查询案例6:消除低效的子查询案例7:复杂窗口函数和CTE(公用表表达式)案例8:适当的表结构设计与分区表优化案例9:使用物化视图......
  • 基于C#+SQL Server的餐饮信息管理系统设计与实现 毕业论文+任务书+问卷+数据库设计文
    !!!有需要的小伙伴可以通过文章末尾名片咨询我哦!!! ......
  • MySQL中处理JSON数据案例示范和常见问题以及性能优化
    随着大数据技术的快速发展,数据格式和存储方式也变得越来越多样化。在业务系统中,很多数据经常以JSON格式存储。为了高效处理这些JSON数据,MySQL自5.7版本开始原生支持JSON数据类型,并在后续版本中不断扩展和优化相关功能。本文将以电商交易系统为示例,深入探讨MySQL在处理JSON数......
  • docker yapi安装
    概述YApi是高效、易用、功能强大的api管理平台,旨在为开发、产品、测试人员提供更优雅的接口管理服务。可以帮助开发者轻松创建、发布、维护API,YApi还为用户提供了优秀的交互体验,开发人员只需利用平台提供的接口数据写入工具以及简单的点击操作就可以实现接口的管理。 doc......
  • 【MySQL】order by 的排序策略
    目录一、全字段排序二、磁盘临时文件辅助排序三、RowId排序四、优化orderby在前面的文章中我们分析了explain执行计划的各个字段,其中有一个 Extra字段。在执行计划中,Extra字段如有Usingfilesort则表示使用到了排序。而MySQL的排序机制相当复杂,它会根据不......
  • sqli-labs靶场通关攻略 6-10
    主页有sqli-labs靶场通关攻略1-5第六关less-6步骤一:根据联合查询发现没有回显数据,输出仍然Youarein.........步骤二:输入?id=1"发现报错步骤三:输入?id=1"--+完成闭合步骤四:利用 andupdatexml搜索数据库http://127.0.0.1/Less-6/?id=1"andupdatexml(1,concat(1......
  • JDBC链接MySQL day18
    packagecom.shujia.day18.ketang;importjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.ResultSet;importjava.sql.Statement;/*我们要想操作mysql数据库,jdk本身是无法操作的,因为java并不知道将来开发者需要使用java连接什么样的数据库,所以j......
  • Java毕设源码-基于ssm框架的少儿编程网上报名系统+vue+毕业论文+mysql数据库
    文章目录前言一、毕设成果演示(源代码在文末)二、毕设摘要展示1、开发说明2、需求/流程分析3、系统功能结构三、系统实现展示1、管理员功能模块2、用户功能模块3、前台首页功能模块四、毕设内容和源代码获取总结逃逸的卡路里博主介绍:✌️码农一枚|毕设布道师,专注于......
  • Java毕设源码-ssm框架学院党员管理系统+jsp+vue+毕业论文+mysql数据库
    文章目录前言一、毕设成果演示(源代码在文末)二、毕设摘要展示1、开发说明2、需求/流程分析3、系统功能结构三、系统实现展示1、管理员功能实现1.1党员管理1.2支部管理1.3公告管理1.4党费管理1.5奖惩记录2、支部功能实现2.1基层单位2.2支部日志2.3支部荣誉3、党......