Ubuntu下部署SQL Server 2017

网友投稿 579 2023-05-03

Ubuntu下部署*** 2017

Ubuntu下部署*** 2017

*** 2017 最近已正式发布。这是 *** 历史上***同时发布 Windows 和 Linux 版。此外,微软还发布了能使用 Docker 部署的容器版本。对 *** 而言,这是其历史上具有里程碑意义的一步,因为这是跨出 Windows 的***个版本,标志着 *** 在 Linux 平台上***可用。

*** 2017 新版本成为***个云端、跨不同操作系统的版本,包括 Linux、Docker。*** 2017 目前支持的 Linux 发行版包括:Red Hat Enterprise Linux(RHEL), SUSE Linux Enterprise Server 和 Ubuntu。*** 2017 支持 Docker 企业版,Kubernetes 和 OpenShift 这三大容器平台。

*** 2017 新特性

*** 2017 支持使用 R 和 Python 的分析方法,来做资料库内的机器学习,意味着不必迁移资料,省下不少时间。图数据分析功能将使客户能够使用图形数据存储和查询语言扩展来使用原生的图形查询语法,以便在高度互连的数据中发现新的关系。自适应查询处理可为数据库带来更智能的体验。例如,*** 中的 Adaptive Memory Grants 跟踪并了解对给定的查询使用了多少内存,以调整内存的使用。Automatic Plan Correction 通过查找和修正性能的回归来确保持续的性能。

*** 2017 的核心功能在 Windows 和 Linux 上保持一致,但有少部分依赖于 Windows 功能的特性没有提供给 Linux (例如集群支持和集成 Windows 身份验证)。

本文将介绍如何在 Ubuntu 下部署 *** 2017 。

安装 *** 2017

在 Linux 上 安装 *** 2017 的先决条件

设备类型设备要求

内存 3.25 GB 及以上 文件系统 XFS或EXT4 (其他文件系统,如BTRFS,不支持) 磁盘空间 6 GB 处理器速度 2 GHz 处理器核心 2 核 处理器类型 仅 x64 兼容

安装 *** 2017 服务端

导入公共存储库 GPG 密钥

增加 Microsoft *** Ubuntu 仓库

安装 *** 服务端

$ apt-get update $ apt-get install -y mssql-server

设置 SA 密码,并选择要安装的版本

一共提供了 8 个版本供选择,其中自由授予许可版本有:评估、开发人员和快速。

SA 帐户必须为强密码(最少 8 个字符,包括大写和小写字母、十进制数字和/或非字母数字符号)。

验证服务是否正在运行

安装 *** 2017 命令行工具

如果要创建数据库,需要使用客户端工具 sqlcmd 和 bcp。

导入公共存储库 GPG 密钥

增加 Microsoft Ubuntu 仓库

安装 *** 命令行工具 和 unixODBC 开发人员工具包

$ apt-get update $ apt-get install -y mssql-tools unixodbc-dev

Sqlcmd 工具默认安装到 /opt/mssql-tools/bin/ 中的,为方便使用把 /opt/mssql-tools/bin/ 添加到环境变量中。

$ echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile $ echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc $ source ~/.bashrc

Sqlcmd 是用于连接到 *** 以运行查询并执行管理和开发的一个命令行工具。如果要使用功能更强大的图形工具,可使用 *** Management Studio 或 Visual Studio Code 的 mssql 插件。

使用 Sqlcmd 建立本地连接

Sqlcmd 连接到本地的 *** 实例。密码是在安装过程中配置的 SA 帐户密码。

$ sqlcmd -S localhost -U SA -P ''

参数说明

-S 连接 *** 的机器名-U 连接 *** 的用户名-P 连接 *** 的密码

连接成功,应会显示 Sqlcmd 命令提示符:1>,就类似下面这样

$ sqlcmd -S localhost -U SA Password: 1>

创建数据库和查询数据

新建数据库

创建一个名为 TestDB 的新数据库

在 sqlcmd 命令提示符中,执行 Transact-SQL 命令以创建测试数据库。

1> CREATE DATABASE TestDB

在 *** 中 命令并没有立即执行, 必须在新行中键入 GO 才能执行命令。

2> GO

返回服务器上所有数据库的名称

1> SELECT Name from sys.Databases 2> GO Name ---------------------------------------- master tempdb model msdb TestDB  (5 rows affected)

插入数据

创建一个新表 Inventory,然后插入两个新行。

在 sqlcmd 命令提示符中,切换到新的 TestDB 数据库。

1> USE TestDB

创建名为 Inventory 的新表

2> CREATE TABLE Inventory (id INT, name NVARCHAR(50), quantity INT)

将数据插入新表

3> INSERT INTO Inventory VALUES (1, 'banana', 150); INSERT INTO Inventory VALUES (2, 'orange', 154);

批量执行上述命令

4> GO

整个执行过程如下

1> USE TestDB 2> CREATE TABLE Inventory (id INT, name NVARCHAR(50), quantity INT) 3> INSERT INTO Inventory VALUES (1, 'banana', 150); INSERT INTO Inventory VALUES (2, 'orange', 154); 4> GO Changed database context to 'TestDB'.  (1 rows affected)  (1 rows affected)

查询数据

通过 sqlcmd 命令查询 Inventory 表中数量大于 152 的行

1> SELECT * FROM Inventory WHERE quantity > 152; 2> GO id          name         quantity ------ ------------ ----------- 2 orange       154  (1 rows affected)

退出 sqlcmd

要结束 sqlcmd 会话,请键入 QUIT。

1> QUIT

卸载 *** 2017

若要删除 *** 2017,可使用以下命令

$ apt-get remove mssql-server

删除包不会删除生成的数据库文件。 如果你想要删除的数据库文件,可使用以下命令

$ sudo rm -rf /var/opt/mssql/

***在推荐下微软良心出品 Visual Studio Code 这个编辑器,功能异常强大、跨平台并且是开源的。最最最重要的是它比 Atom 快,插件也很丰富。我已从 Atom 转坑入 VSCode了,感谢蜗牛大神的推荐!

下图为 VSCode+MSSQL 插件的效果图,有没有很赞的~

参考文档

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:有关Oracle逻辑读和物理读,你了解吗?
下一篇:如何让网站不下线从Redis 2迁移到Redis 3
相关文章