Docker快速安装SQL Server 2022

说明:

  • 系统:Ubuntu 24.04 LTS

拉取SQL Server Docker镜像

docker pull mcr.microsoft.com/mssql/server:2022-CU12-ubuntu-22.04

创建数据目录

sudo mkdir /var/mssql_data
sudo chmod 777 /var/mssql_data

说明:

  • 权限设置为777(所有用户可读、写、执行)。虽然这确保了Docker容器中的SQL Server有权访问该目录,但从安全角度来看,这种权限设置过于宽松。建议使用更严格的权限,比如770,并确保目录所有者和组设置正确。

运行Docker容器

docker run --name=sqlserver -e 'ACCEPT_EULA=Y' -e 'MSSQL_SA_PASSWORD=123456MM#' -e 'MSSQL_PID=J4V48-P8MM4-9N3J9-HD97X-DYMRM' -p 1433:1433 -v /var/mssql_data:/var/opt/mssql -d mcr.microsoft.com/mssql/server:2022-CU12-ubuntu-22.04

说明:

  • ‘ACCEPT_EULA=Y’:接受SQL Server的最终用户许可协议(EULA)。
  • ‘MSSQL_SA_PASSWORD=123456MM#’:设置SQL Server的系统管理员(SA)账号密码。注意:使用强密码并避免在公共场合暴露。
  • ‘MSSQL_PID=J4V48-P8MM4-9N3J9-HD97X-DYMRM’:指定SQL Server的产品密钥ID。
  • /var/mssql_data:/var/opt/mssql:将宿主机的/var/mssql_data目录挂载到容器内的/var/opt/mssql目录。

连接测试

首先确定系统防火墙开放了1433端口

在这里插入图片描述

连接完成后,使用一个简单的SQL脚本,用于创建一个数据库和一个示例表,并插入一些数据,最后查询数据

-- 创建数据库
CREATE DATABASE TestDB;-- 切换到新创建的数据库
USE TestDB;-- 创建表
CREATE TABLE Employees (EmployeeID INT PRIMARY KEY IDENTITY(1,1),FirstName NVARCHAR(50) NOT NULL,LastName NVARCHAR(50) NOT NULL,BirthDate DATE,HireDate DATE,JobTitle NVARCHAR(50)
);-- 插入数据
INSERT INTO Employees (FirstName, LastName, BirthDate, HireDate, JobTitle)
VALUES 
('John', 'Doe', '1980-01-01', '2005-05-15', 'Software Engineer'),
('Jane', 'Smith', '1985-02-20', '2010-08-01', 'Project Manager'),
('Michael', 'Johnson', '1990-03-15', '2015-12-01', 'Business Analyst');-- 查询数据
SELECT * FROM Employees;

测试过程中如果出现如下错误,一种解决方法就是重启了一下容器

The connection is broken and recovery is not possible. The connection is marked by the client driver as unrecoverable. No attempt was made to restore the connection.

参考

  • microsoft-mssql-server - Official Image | Docker Hub

  • https://www.cnblogs.com/merray/p/12849100.html

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

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

相关文章

ubuntu下vscode的安装包

1.引言 ubuntu下面安装vscode,编码调用接口时可以跳到接口api的位置,因此在ubuntu下安装vscode还是非常有意义的。 2.下载地址 链接:https://pan.baidu.com/s/1j3XNmvbL574p_hYeBqO6dg?pwdryr7 提取码:ryr7 --来自百度网盘超…

如何应对触摸一体机触摸屏失灵问题?怎么校准?

触摸一体机是一种功能强大的设备,集成了电脑、电视和触摸屏等多种功能。其中,触摸屏是其重要组成部分之一。然而,当触摸屏突然失灵时,我们该如何应对呢?以下是一些建议,以帮助您排除问题并重新获得正常触摸…

2024 年你应该选择哪个开源大模型?

自2017年发表的论文《Attention Is All You Need》发明了Transformer架构以来,自然语言处理(NLP)取得了巨大的进展。随着2022年11月ChatGPT的发布,大型语言模型(LLM)引起了广泛关注。 你是否想在自己的用例…

通过Zerossl给IP申请免费SSL证书, 实现https ip访问

参考通过Zerossl给IP申请免费SSL证书 | LogDicthttps://www.logdict.com/archives/tong-guo-zerosslgei-ipshen-qing-mian-fei-sslzheng-shu

授权调用: 介绍 Transformers 智能体 2.0

简要概述 我们推出了 Transformers 智能体 2.0! ⇒ 🎁 在现有智能体类型的基础上,我们新增了两种能够 根据历史观察解决复杂任务的智能体。 ⇒ 💡 我们致力于让代码 清晰、模块化,并确保最终提示和工具等通用属性透明化…

关于指针和数组的一些经典笔试题解析

前言 大家好,本篇博客将为大家展示一些曾经考过的关于指针的经典笔试题,里面有些题目的难度还是不小的,所以希望大家可以认真理解;如果你点开了本篇博客,麻烦各位大佬一键三连,多多支持,感谢&a…

Aws CodeCommit代码仓储库

1 创建IAM用户 IAM创建admin用户,增加AWSCodeCommitFullAccess权限 2 创建存储库 CodePipeline -> CodeCommit -> 存储库 创建存储库 3 SSH 1) window环境 3.1.1 上载SSH公有秘钥 生成SSH秘钥ID 3.1.2 编辑本地 ~/.ssh 目录中名为“config”的 SSH 配置文…

JRT连接希森美康出图

上一篇用JRT连设备实现了比较有难度的Sebia绘图设备和TCP模式连接。这次连接最常见的检验设备(西森美康),读文件和图上传出图。 视频演示 结果格式 通道对应 接口设置 接口处理实现,JRT设备连接全部采用CMD驱动方式实现&am…

The First项目报告:解读去中心化衍生品交易所AVEO

2023 年12月8日凌晨,Solana 生态 MEV 基础设施开发商 Jito Labs 开放了 JTO 空投申领窗口,JTO 的价格在开盘短暂震荡后迅速攀高,一度触及 4.94 美元。 JTO 是加密社区这两日关注的热门标的,而在这场讨论中,除 Solana …

springboot 集成 es--未完结

基于es7.10.x版本 一、前提知识 常见的两种方式:spring boot提供的API 和 ES 官方提供的API ES官方: RestHighLevelClient: 适用于复杂、更细粒度控制的Elasticsearch 操作 spring boot: ElasticsearchRestTemplate&#xff1a…

AI智能体研发之路-模型篇(四):一文入门pytorch开发

博客导读: 《AI—工程篇》 AI智能体研发之路-工程篇(一):Docker助力AI智能体开发提效 AI智能体研发之路-工程篇(二):Dify智能体开发平台一键部署 AI智能体研发之路-工程篇(三&am…

C++ | Leetcode C++题解之第115题不同的子序列

题目&#xff1a; 题解&#xff1a; class Solution { public:int numDistinct(string s, string t) {int m s.length(), n t.length();if (m < n) {return 0;}vector<vector<unsigned long long>> dp(m 1, vector<unsigned long long>(n 1));for (i…

[docker] docker 安全知识 - 镜像,port registry

[docker] docker 安全知识 - 镜像&#xff0c;port & registry 这是第一篇&#xff0c;安全部分还有一篇笔记就记完了 说实话&#xff0c;看完了要学的这些东西&#xff0c;感觉大多数安全问题都可以通过验证登录的合法性去解决 镜像 镜像的问题还是比较多的&#xff0…

Mybatis——入门

新建 idea 准备 数据库 create table user(id int unsigned primary key auto_increment comment ID,name varchar(100) comment 姓名,age tinyint unsigned comment 年龄,gender tinyint unsigned comment 性别, 1:男, 2:女,phone varchar(11) comment 手机号 ) comment 用…

C语言 | Leetcode C语言题解之第116题填充每个节点的下一个右侧节点指针

题目&#xff1a; 题解&#xff1a; struct Node* connect(struct Node* root) {if (root NULL) {return root;}// 从根节点开始struct Node* leftmost root;while (leftmost->left ! NULL) {// 遍历这一层节点组织成的链表&#xff0c;为下一层的节点更新 next 指针stru…

调整GIF图大小的方法是什么?分享4个

调整GIF图大小的方法是什么&#xff1f;在数字化时代&#xff0c;GIF以其独特的动图魅力&#xff0c;成为了网络交流中不可或缺的一部分。无论是社交媒体、博客文章还是工作汇报&#xff0c;一个恰到好处的GIF图往往能有效吸引观众的注意&#xff0c;传递信息&#xff0c;但过大…

File类.Java

一、File类 1&#xff0c;概述&#x1f3c0;&#x1f3c0;&#x1f3c0; &#xff08;1&#xff09; java.io.File类&#xff1a;文件和文件目录路径的抽象表示形式&#xff0c;与平台无关 &#xff08;2&#xff09; File类中涉及到关于文件或文件目录的创建、删除、重命…

Golang | Leetcode Golang题解之第115题不同的子序列

题目&#xff1a; 题解&#xff1a; func numDistinct(s, t string) int {m, n : len(s), len(t)if m < n {return 0}dp : make([][]int, m1)for i : range dp {dp[i] make([]int, n1)dp[i][n] 1}for i : m - 1; i > 0; i-- {for j : n - 1; j > 0; j-- {if s[i] …

Linux基础 (十一):进程间通信

Linux进程间通信&#xff08;Inter-Process Communication, IPC&#xff09;是指在不同进程之间交换数据或信息的机制。由于进程间不能直接共享内存&#xff0c;Linux 提供了多种 IPC 机制来实现进程间的通信。主要为&#xff1a;管道、信号量、共享内存、消息队列、套接字。 目…

halcon 传统缺陷检测

一、电路检测 算子解释 dyn_threshold *dyn_threshold 利用局部阈值分割图像*OrigImage (input_object)&#xff1a;原始图像*ThresholdImage (input_object)&#xff1a;处理后图像&#xff08;一般采用滤波处理&#xff09;*RegionDynThresh (output_object)&#xff1…