前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Microsoft SQL Server安装部署教程

Microsoft SQL Server安装部署教程

原创
作者头像
Power
发布2025-03-03 12:45:23
发布2025-03-03 12:45:23
21700
代码可运行
举报
运行总次数:0
代码可运行

一、Microsoft SQL Server介绍

微软发行的SQL Server版本从SQL Server 2017开始全面支持Linux和Docker部署,并且在功能支持和性能方面都有非常大的突破和提升。SQL server版本情况:https://docs.microsoft.com/zh-CN/troubleshoot/sql/general/determine-version-edition-update-level

SQL Server  版本

定义

Enterprise

作为高级版本, SQL Server Enterprise 版提供了全面的高端数据中心功能,性能极为快捷,可为关键任务工作负荷提供较高服务级别。

Standard

SQL Server  Standard 版提供了基本数据管理,使部门和小型组织能够顺利运行其应用程序并支持将常用开发工具用于本地和云部署,有助于以最少的 IT 资源获得高效的数据库管理。

Web

对于为从小规模至大规模 Web 资产提供可伸缩性、经济性和可管理性功能的 Web 宿主和 Web VAP 来说, SQL Server Web 版本是一项总拥有成本较低的选择。

开发人员

SQL Server  Developer 版支持开发人员基于  SQL Server构建任意类型的应用程序。  它包括 Enterprise 版的所有功能,但有许可限制,只能用作开发和测试系统,而不能用作生产服务器。 SQL Server  Developer 是构建和测试应用程序的人员的理想之选。

Express Edition

Express 版本是入门级的免费数据库,是学习和构建桌面及小型服务器数据驱动应用程序的理想选择。  它是独立软件供应商、开发人员和热衷于构建客户端应用程序的人员的最佳选择。  如果您需要使用更高级的数据库功能,则可以将  SQL Server Express 无缝升级到其他更高端的  SQL Server版本。

二、Microsoft SQL Server容器化部署教程

官网安装教程:https://docs.microsoft.com/zh-cn/sql/linux/quickstart-install-connect-docker?view=sql-server-linux-2017&preserve-view=true&pivots=cs1-bash

2.1 容器环境准备

推荐文章:Docker安装部署教程

2.2 拉取SQL Server2017镜像

代码语言:javascript
代码运行次数:0
运行
复制
[root@10-27-0-224 ~]# docker pull mcr.microsoft.com/mssql/server:2017-latest

2.3 运行SQL server2017容器

注:这里容器没有进行持久化配置,仅做测试环境使用,容器重启或删除数据会被清空。

推荐文章:Docker应用程序数据管理与持久化

代码语言:javascript
代码运行次数:0
运行
复制
[root@10-27-0-224 ~]# docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=UCloud.cn123" \
-p 1433:1433 --name sql1 -h sql1 \
-d \
mcr.microsoft.com/mssql/server:2017-latest

参数

说明

-e "ACCEPT_EULA=Y"

将 ACCEPT_EULA 变量设置为任意值,以确认接受最终用户许可协议。 SQL Server 映像的必需设置。

-e "SA_PASSWORD=<YourStrong@Passw0rd>"

指定至少包含 8 个字符且符合 SQL Server 密码要求的强密码。 SQL Server 映像的必需设置。

-p 1433:1433

将主机环境中的 TCP 端口(第一个值)映射到容器中的 TCP 端口(第二个值)。 在此示例中,SQL Server 侦听容器中的 TCP 1433,并对主机上的端口 1433 公开。

--name sql1

为容器指定一个自定义名称,而不是使用随机生成的名称。 如果运行多个容器,则无法重复使用相同的名称。

-h sql1

用于显式设置容器主机名,如果不指定它,则默认为容器 ID,该 ID 是随机生成的系统 GUID。

-d

在后台运行容器(守护程序)

mcr.microsoft.com/mssql/server:2017-latest

SQL Server 2017 Linux 容器映像。

代码语言:javascript
代码运行次数:0
运行
复制
[root@10-27-0-224 ~]# docker ps
CONTAINER ID   IMAGE                                        COMMAND                  CREATED         STATUS         PORTS                    NAMES
e835f98289dc   mcr.microsoft.com/mssql/server:2017-latest   "/opt/mssql/bin/nonr…"   9 minutes ago   Up 9 minutes   0.0.0.0:1433->1433/tcp   sql1

2.4 管理SQL Server实例

(1)更改SQL Server SA密码

代码语言:javascript
代码运行次数:0
运行
复制
[root@10-27-0-224 ~]# docker exec -it sql1 /opt/mssql-tools/bin/sqlcmd \
-S localhost -U SA -P "UCloud.cn123" \
-Q 'ALTER LOGIN SA WITH PASSWORD="UCloud.cn"'

(2)进入SQL Server实例连接数据库

代码语言:javascript
代码运行次数:0
运行
复制
[root@10-27-0-224 ~]# docker exec -it sql1 bash                         # 进入sql1容器
root@sql1:/# opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P UCloud.cn # 连接SQL Server数据库                
1> SELECT Name from sys.Databases                                       # 查询现有库名称
2> GO                                                                   # 执行上述SQL
Name                                                                                                                            
--------------------------------------------------------------------------------------------------------------------------------
master                                                                                                                          
tempdb                                                                                                                          
model                                                                                                                           
msdb                                                                                                                            

(4 rows affected)

(3)创建SQL Server库

代码语言:javascript
代码运行次数:0
运行
复制
1> CREATE DATABASE TestDB
2> GO
1> SELECT Name from sys.Databases
2> GO
Name                                                                                                                            
--------------------------------------------------------------------------------------------------------------------------------
master                                                                                                                          
tempdb                                                                                                                          
model                                                                                                                           
msdb                                                                                                                            
TestDB                                                                                                                          

(5 rows affected)

2.5 SQL Server Management Studio (SSMS) 图形化连接

SSMS官网下载地址 国内加速下载地址

Microsoft SQL Server安装部署教程(图1)
Microsoft SQL Server安装部署教程(图1)
Microsoft SQL Server安装部署教程(图2)
Microsoft SQL Server安装部署教程(图2)

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、Microsoft SQL Server介绍
  • 二、Microsoft SQL Server容器化部署教程
    • 2.1 容器环境准备
    • 2.2 拉取SQL Server2017镜像
    • 2.3 运行SQL server2017容器
    • 2.4 管理SQL Server实例
    • 2.5 SQL Server Management Studio (SSMS) 图形化连接
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档