docker部署sqlserver过程记录

目录

前言

一、基础概念

二、过程步骤

1.docker操作

2.问题及解决

总结


前言

最近接触到了NL2SQL,有个相对比较适合自己的开源项目,就说看下。忽然发现自己电脑都没安装个数据库。那就安装一个吧,自从有了docker,能docker安装,那就不直接安装到电脑上了,环境会很乱,而且不如docker方便管理

于是,开启了docker部署sqlserver之旅~


一、基础概念

docker:轻量级的容器管理工具,和虚拟机类似,但是比虚拟机轻了很多

sqlserver:微软家族的数据库服务

二、过程步骤

1.docker操作

拉取sqlserver镜像,具体sqlserver版本根据自己的需要选择即可,应该是2017及以上版本才支持了docker容器部署

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

运行sqlser容器

docker run -e "ACCEPT_EULA=Y" -e "MSSQL_SA_PASSWORD=sa密码" -p 1433:1433 --name mssqlserver-2019 -v E:\DockerData\mssql:/var/opt/mssql -d mcr.microsoft.com/mssql/server:2019-latest

相关参数做下解释:

-e "ACCEPT_EULA=Y":同意相关安装协议,必需

-e "MSSQL_SA_PASSWORD=sa密码":设置sa的登录密码

-p 1433:1433:设置端口映射

-v E:\DockerData\mssql:/var/opt/mssql:设置路径映射,实现数据的持久化,否则容器停了以后数据库文件就丢了

2.问题及解决

执行如上命令,一开始看容器是启动了,端口映射信息在docker desktop也看到了,结果很快容器变灰了(启动失败),docker logs 容器名称,报错如下:

This program has encountered a fatal error and cannot continue running at Mon Apr 15 03:30:57 2024
The following diagnostic information is available:Reason: 0x00000006Message: Termination of \SystemRoot\system32\AppLoader.exe was due to fatal error 0xC0000001Address: 0x3fffb588a1cfStack Trace:file://package4/windows/system32/sqlpal.dll+0x000000000000E7CFfile://package4/windows/system32/sqlpal.dll+0x000000000000BA99file://package4/windows/system32/sqlpal.dll+0x000000000008A432file://package4/windows/system32/sqlpal.dll+0x000000000008A1CFfile://package4/windows/system32/sqlpal.dll+0x00000000000885D8file://package4/windows/system32/sqlpal.dll+0x0000000000003D1Ffile://package4/windows/system32/sqlpal.dll+0x0000000000205568file:///windows/system32/AppLoader.exe+0x000000000000371Ffile:///windows/system32/AppLoader.exe+0x0000000000003869file:///windows/system32/AppLoader.exe+0x0000000000003889file:///windows/system32/AppLoader.exe+0x000000000000A8E8file:///Windows/SYSTEM32/KERNEL32.DLL+0x0000000000014414file:///windows/system32/ntdll.dll+0x0000000000075541Modules:file://package4/windows/system32/sqlpal.dll=DDAF496DC6C5824FD011F6F3B5BA15F01file:///windows/system32/AppLoader.exe=71025FF72BB4A78E6487F0EED40B02561file:///Windows/SYSTEM32/KERNEL32.DLL=C715300FB2664729A6126A3F591E6F302file:///windows/system32/ntdll.dll=45137AA3F9814512B3123991067EEE6E2Process: 8 - sqlservrThread: 39 (application thread 0x78)Instance Id: a0185509-4b50-4f25-969b-22a4caedbcedCrash Id: 503973a6-bbeb-4013-987a-05927efd01cdBuild stamp: 5a0761fb39e7c8e4bfc101a82ddf31307102bb6e23a5345ee2033874d57334afDistribution: Ubuntu 20.04.6 LTSProcessors: 20Total Memory: 16593043456 bytesTimestamp: Mon Apr 15 03:30:57 2024

猜测:看错误信息,有permission dined相关字样,难道是权限不足?

行动:看了下映射的本地路径其实已经有写入文件,不过还是试着以管理员权限重新执行命令,不过还是不行

找AI:问了半天AI也搞不懂啥情况

猜测:难道是2019的镜像有问题?

行动:下载2022版本,重复如上操作,结果一样的报错

找度娘:看到一篇写docker部署sqlserver的,人家在上面设置路径映射的时候设置了3个路径映射,分别给mssql下data、log、secrets设置路径映射

行动:那就这么试试吧,果然可以了。而且,我试着只添加data路径映射也是可以的


总结

这个操作其实挺简单,就是有时候需要避个坑。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/391.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

华为OD-C卷-开源项目热榜[100分]Python3-100%

题目描述 某个开源社区希望将最近热度比较高的开源项目出一个榜单,推荐给社区里面的开发者。 对于每个开源项目,开发者可以进行关注(watch)、收藏(star)、fork、提issue、提交合并请求(MR)等。 数据库里面统计了每个开源项目关注、收藏、fork、issue、MR的数量,开源…

基于51单片机土壤湿度检测及自动浇花系统

基于51单片机土壤湿度检测及自动浇花 (仿真+程序+原理图+设计报告) 功能介绍 具体功能: 1.LCD1602实时显示湿度、湿度上下限; 2.可用按键设置湿度、湿度上下限; 3.当湿度低于下限…

分类预测 | Matlab实现WOA-LSSVM鲸鱼算法优化最小二乘支持向量机数据分类预测

分类预测 | Matlab实现WOA-LSSVM鲸鱼算法优化最小二乘支持向量机数据分类预测 目录 分类预测 | Matlab实现WOA-LSSVM鲸鱼算法优化最小二乘支持向量机数据分类预测分类效果基本介绍程序设计参考资料 分类效果 基本介绍 1.Matlab实现WOA-LSSVM鲸鱼算法优化最小二乘支持向量机数据…

搭建电商供应链需要用到哪些电商接口?||主流电商API接口解说

搭建供应链系统时,您可能需要与电商平台进行集成,以实现订单管理、库存同步、物流跟踪等功能。以下是一些常见的电商接口,可以帮助您构建供应链系统: 1. **淘宝开放平台接口**:淘宝开放平台提供了丰富的接口&#xff…

(六)PostgreSQL的组织结构(2)-默认数据库

PostgreSQL的组织结构(2)-默认数据库 安装完postgresql后,我们发现它自带了3个数据库。postgres、template0、template1 postgres# \lList of databasesName | Owner | Encoding | Locale Provider | Collate | Ctype | ICU Locale | ICU Rules |…

4399下架了的flash游戏 网盘自提取

下载好游戏后,需要使用flash进行打开,直接拖动游戏文件到flash文件,即可用flash快捷打开。 flash下载 百度网盘链接:https://pan.baidu.com/s/1KUz4ymg0SS7wFGH54hdE3A?pwdnisj 提取码:nisj 一、幻想纹章 不太行了…

elasticsearch 关于向量化检索

1、elasticsearch使用的是8.5.0 索引和mapping构建: PUT image-index {"mappings": {"properties": {"mydatavector": {"type": "dense_vector","dims": 3,"index": true,"similarit…

什么是死锁?死锁产生的条件是什么?

死锁 死锁是指两个或两个以上的进程(或线程)在执行过程中,由于竞争资源或者由于彼此通信而造成的一种阻塞的现象,若无外力作用,它们都将无法推进下去。此时称系统处于死锁状态或系统产生了死锁,这些永远在互相等待的进…

【学习】linux实用命令

LINUX命令 普通用户查询系统信息 命令 : [wlm]$ cat /ect/os-release NAME "Kylin" VERSION ""功能: 这个输出会告诉你正在使用的操作系统的名称(NAME)、版本(VERSION 或 VERSION_ID&#xf…

基于sfunction builder的c-sfunction编写——自定义函数编写

目录 前言 1、sfunction builder自定义函数编写方法一 2、sfunction builder自定义函数编写方法二 3.总结

Node.JS后端开发笔记整理(简洁版)

前端 1. 开发环境和技术栈 开发工具:Visual Studio CodeNode.js版本:18.19.0(建议保持在18)包管理器:npm前端框架:Vue3.4脚本语言:TypeScript构建工具:Vite后端框架:Ex…

ubuntu设置扩充swap交换空间

Swap是指Linux系统中的交换分区,类似于Windows的虚拟内存,当内存不足的时候,把一部分硬盘空间虚拟成内存来使用,从而解决内存不足的问题。交换分区,它的功能就是在内存不够的情况下,操作系统先把内存中暂时不用的数据,存到硬盘的交换空间,腾出内存来让别的程序运行! …

Golang基础-13

Go语言基础 介绍 并发 channel goroutine 互斥锁 读写锁 原子操作 select 超时处理 sync包 runtime包 介绍 本文介绍Go语言中 channel、goroutine、互斥锁、读写锁、原子操作、select、超时处理、sync包、runtime包等相关知识。 并发 进程是是最小的资源管理单元…

异步FIFO约束set_max_delay

1.最大延迟set_max_delay set_max_delay [-datapath_only] -from [ node_list] -to [node_list] delay_value 在Set Max Delay约束中使用-datapath_only选项时,它指示综合工具在优化设计时仅考虑数据通路的延迟,而不考虑控制逻辑的延迟。 关于最大最小…

大话数据结构学习笔记-线性表(二)-顺序存储结构

顺序存储定义 线性表的顺序存储结构,指的是用一段地址连续的存储单元一次存储线性表的数据元素。一般就是用一维数组来实现。 顺序存储结构定义 描述顺序存储结构的线性表需要以下三个属性 1)存储空间的起始位置:数组data。它的存储位置就是存储空间的存储位置 2…

L1正则化的数学公式

L1正则化是机器学习和统计学中常用的正则化技术,用于控制模型的复杂度并防止过拟合。它们的数学表达如下: L1正则化(也称为Lasso正则化):在损失函数中添加模型参数的绝对值之和作为正则化项。其数学公式如下所示&…

利用地图资源工具让Sentinel-2自动生成NDVI\EVI

新版地图资源工具已经能自动计算EVI了,也就是现在工具可以自动计算NDVI、EVI及做哨兵L1C数据的自动预处理!只要勾选如下选项后数据下载的同时会自动生成NDVI、EVI! 归一化差异植被指数 (NDVI) 由于植被在近红外波段处有较强的反射&#…

Training - PyTorch Lightning 的 Horovod 策略实践 (all_gather)

欢迎关注我的CSDN:https://spike.blog.csdn.net/ 本文地址:https://blog.csdn.net/caroline_wendy/article/details/137686312 在 PyTorch Lightning 中使用 Horovod 策略,可以在多个 GPU 上并行训练模型。Horovod 是分布式训练框架&#xff…

Oladance、南卡、漫步者开放式耳机好不好用?3大当红明星产品测评PK

​在音频市场中,开放式耳机以其创新设计和卓越听感赢得了一定的关注。然而,也存在一些产品质量和音质不尽人意,甚至可能影响用户听力安全。作为一名专业的音频设备评测师,我建议用户在选择开放式耳机时,应优先选择那些…

《R语言与农业数据统计分析及建模》学习——控制流

1、控制流的概念和作用 控制流是指根据循环或条件来控制程序的执行顺序和逻辑。 2、循环语句 循环语句允许程序重复执行特定的代码块,知道满足特定条件。 在R语言中,常见的循环语句有for、while和repeat。 # for循环用于在已知次数的情况下重复执行代码…