0
点赞
收藏
分享

微信扫一扫

在Linux 上安装 SQL Server

佃成成成成 2022-03-16 阅读 155



在Linux 上安装 SQL Server 


官网:  ​​ https://docs.microsoft.com/zh-cn/sql/linux/sql-server-linux-setup?view=sql-server-2017 ​​

离线下载包: ​​ https://packages.microsoft.com  ​​


本文提供了有关安装、 更新和卸载 SQL Server 2017 和 Linux 上的 SQL Server 2019 预览版指南。



 提示

本指南 coves 几种部署方案。   如果您仅查找的分步安装说明,跳到快速入门教程之一:


  • ​​ RHEL 快速入门 ​​
  • ​​ SLES 快速入门 ​​
  • ​​ Ubuntu 快速入门 ​​
  • ​​ Docker 快速入门 ​​


有关常见问题的解答,请参阅 ​​ SQL Server Linux 常见问题 ​​ 。

支持的平台

Red Hat Enterprise Linux (RHEL)、 SUSE Linux Enterprise Server (SLES) 和 Ubuntu 上支持 SQL Server 2017。   它还支持作为 Docker 映像,可以在 Docker 的 Windows/mac。 或在 Linux 上的 Docker 引擎运行



平台

受支持的版本

获取

Red Hat Enterprise Linux

7.3, 7.4, 7.5, 7.6

​​ Get RHEL 7.6 ​​

SUSE Linux Enterprise Server

v12 SP2

​​ 获取 SLES v12 SP2 ​​

Ubuntu

16.04

​​ 获取 Ubuntu 16.04 ​​

Docker 引擎

1.8+

​​ 获取 Docker ​​


Microsoft 还支持部署和使用 OpenShift 和 Kubernetes 来管理 SQL Server 容器。



 备注

SQL Server 经过测试且支持在 Linux 上的前面列出的分发版。   如果您选择不受支持的操作系统上安装 SQL Server,请查看 的支持策略 一部分 ​​ Microsoft SQL Server 的技术支持策略 ​​ 若要了解支持影响。



系统要求

SQL Server 2017 具有以下适用于 Linux 的系统要求:





内存

2 GB

“文件系统”

XFS 或 EXT4  (其他文件系统,如 BTRFS ,均不受支持)

磁盘空间

6 GB

处理器速度

2 GHz

处理器核心

2 个核心

处理器类型

仅 x64 兼容


如果您使用 网络文件系统 (NFS)  在生产中,远程共享,请注意以下支持要求:


  • 使用 NFS 版本 4.2 或更高版本 。   较旧版本的 NFS 不支持所需的功能,例如 fallocate 和稀疏文件创建,普遍适用于现代文件系统。
  • 仅定位  /var/opt/mssql 上 NFS 装入的目录。   不支持其他文件,如 SQL Server 系统二进制文件。
  • 请确保装载的远程共享时,NFS 客户端,使用 nolock 选项。

配置源存储库

当您安装或升级 SQL Server 时,可从你配置的 Microsoft 存储库获取最新版本的 SQL Server。   快速入门教程使用 SQL Server 2017 累积更新 CU 存储库。   但您可以改为配置 GDR 存储库或 预览版 (vNext)  存储库。   存储库以及如何配置它们的详细信息,请参阅 ​​ Linux 上的 SQL Server 配置存储库 ​​ 。



 重要

如果您以前安装的 CTP 或 SQL Server 2017 的 RC 版本,必须删除预览存储库并注册一个常规正式版 (GA)。   有关详细信息,请参阅 ​​ Linux 上的 SQL Server 配置存储库 ​​ 。



安装 SQL Server 2017

从命令行,可以在 Linux 上安装 SQL Server 2017。   有关分步说明,请参阅以下快速入门:


  • ​​ 在 Red Hat Enterprise Linux 上安装 ​​
  • ​​ 在 SUSE Linux Enterprise Server 上安装 ​​
  • ​​ 在 Ubuntu 上安装 ​​
  • ​​ 在 Docker 上运行 ​​
  • ​​ 在 Azure 中预配 SQL VM ​​


快速入门:安装 SQL Server 和 Red Hat 上创建数据库

适用于:   在Linux 上安装 SQL Server_sql SQL Server (仅限 Linux) 在Linux 上安装 SQL Server_linux_02 Azure SQL 数据库 在Linux 上安装 SQL Server_linux_02 Azure SQL 数据仓库 在Linux 上安装 SQL Server_linux_02 并行数据仓库

在此快速入门中,您安装 SQL Server 2017 或 SQL Server 2019 Red Hat Enterprise Linux (RHEL) 上。   然后使用连接 sqlcmd 创建第一个数据库和运行查询。

 提示

本教程需要用户输入和 Internet 连接。   如果您对 ​​ 无人参与 ​​​ 或 ​​ 脱机 ​​​ 安装感兴趣,请参阅  ​​ Linux 上的 SQL Server 的安装指南 ​​ 。

先决条件

您必须具有的 RHEL 7.3、 7.4、 7.5 或 7.6 计算机 至少 2 GB 的内存。

若要在自己的计算机上安装 Red Hat Enterprise Linux,请访问 ​​  https://access.redhat.com/products/red-hat-enterprise-linux/evaluation  ​​​ 。   也可在 Azure 中创建 RHEL 虚拟机。   请参阅 ​​ 使用 Azure CLI 创建和管理 Linux VM ​​​ ,并在对  ​​ az vm create ​​  的调用中使用  ​​ --image RHEL ​​ 。

如果以前已安装的 CTP 或 SQL Server 2017 的 RC 版本,必须执行以下步骤之前先删除旧存储库。   有关详细信息,请参阅 ​​ 配置 Linux 存储库以用于 SQL Server 2017 和 2019年 ​​ 。

其他系统要求,请参阅 ​​ Linux 上的 SQL Server 的系统要求 ​​ 。

安装 SQL Server

若要在 RHEL 上配置 SQL Server,请在终端中运行以下命令,以便安装 mssql server 包:


  1. 下载 Microsoft SQL Server 2017 Red Hat 存储库配置文件:
    bash 复制 sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/7/mssql-server-2017.repo
     提示
    如果你想要试用 SQL Server 2019,则必须改为注册 预览版 (2019)  存储库。   对于 SQL Server 2019 安装中使用以下命令:
    bash 复制 sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/7/mssql-server-preview.repo
  2. 运行以下命令,安装 SQL Server:
    bash 复制 sudo yum install -y mssql-server
  3. 程序包安装完成后,请运行  mssql-conf setup  命令并按提示设置 SA 密码,然后选择版本。
    bash 复制 sudo /opt/mssql/bin/mssql-conf setup
     提示
    以下 SQL Server 2017 版本自由地授予使用许可:评估、 开发人员版和 Express。
     备注
    请确保为 SA 帐户指定强密码(最少 8 个字符,包括大写和小写字母、十进制数字和/或非字母数字符号)。
  4. 配置完成后,请验证服务是否正在运行:
    bash 复制 systemctl status mssql-server
  5. 若要允许远程连接,请在 RHEL 上打开防火墙上的 SQL Server 端口。   默认的 SQL Server 端口为 TCP 1433。   如果对防火墙使用  FirewallD ,可以使用以下命令:
    bash 复制 sudo firewall-cmd --zone=public --add-port=1433/tcp --permanent sudo firewall-cmd --reload

SQL Server 目前正在 RHEL 计算机上运行,可以使用了!

安装 SQL Server 命令行工具

若要创建数据库,需要使用一个能够在 SQL Server 上运行 Transact-SQL 语句的工具进行连接。   以下步骤安装 SQL Server 命令行工具:  ​​ sqlcmd ​​​ 和 ​​ bcp ​​ 。


  1. 下载 Microsoft Red Hat 存储库配置文件。
    bash 复制 sudo curl -o /etc/yum.repos.d/msprod.repo https://packages.microsoft.com/config/rhel/7/prod.repo
  2. 如果你有旧版 mssql 工具 安装,请删除任何较旧的 unixODBC 包。
    bash 复制 sudo yum remove unixODBC-utf16 unixODBC-utf16-devel
  3. 运行以下命令以安装  mssql-tools  和 unixODBC 开发人员包。
    bash 复制 sudo yum install -y mssql-tools unixODBC-devel
  4. 为方便起见,请将  ​​ /opt/mssql-tools/bin/ ​​  添加到  PATH  环境变量。   这样就可以在运行工具时不指定完整路径。   请运行以下命令,以便修改登录会话和交互/非登录会话的  PATH :
    bash 复制 echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc source ~/.bashrc

本地连接

以下步骤使用 sqlcmd 本地连接到新的 SQL Server 实例。


  1. 使用 SQL Server 名称 (-S),用户名 (-U) 和密码 (-P) 的参数运行 sqlcmd。   在本教程中,用户进行本地连接,因此服务器名称为  ​​ localhost ​​ 。   用户名为  ​​ SA ​​ ,密码是在安装过程中为 SA 帐户提供的密码。
    bash 复制 sqlcmd -S localhost -U SA -P '<YourPassword>'
     提示
    可以在命令行上省略密码,以收到密码输入提示。
     提示
    如果以后决定进行远程连接,请指定 -S 参数的计算机名称或 IP 地址,并确保防火墙上的端口 1433 已打开。
  2. 如果成功,应会显示 sqlcmd 命令提示符: ​​ 1> ​​ 。
  3. 如果连接失败,请首先尝试根据错误消息诊断问题。   然后查看 ​​ 连接故障排除建议 ​​ 。

创建和查询数据

下面各部分将逐步介绍如何使用 sqlcmd 新建数据库、添加数据并运行简单查询。

新建数据库

以下步骤创建一个名为  ​​ TestDB ​​  的新数据库。


  1. 在 sqlcmd 命令提示符中,粘贴以下 Transact-SQL 命令以创建测试数据库:
    SQL 复制 CREATE DATABASE TestDB
  2. 在下一行中,编写一个查询以返回服务器上所有数据库的名称:
    SQL 复制 SELECT Name from sys.Databases
  3. 前两个命令没有立即执行。   必须在新行中键入  ​​ GO ​​  才能执行以前的命令:
    SQL 复制 GO

 提示

若要详细了解如何编写 Transact-SQL 语句和查询,请参阅 ​​ 教程:编写 Transact-SQL 语句 ​​ 。

插入数据

接下来创建一个新表  ​​ Inventory ​​ ,然后插入两个新行。


  1. 在 sqlcmd 命令提示符中,将上下文切换到新的  ​​ TestDB ​​  数据库:
    SQL 复制 USE TestDB
  2. 创建名为  ​​ Inventory ​​  的新表:
    SQL 复制 CREATE TABLE Inventory (id INT, name NVARCHAR(50), quantity INT)
  3. 将数据插入新表:
    SQL 复制 INSERT INTO Inventory VALUES (1, 'banana', 150); INSERT INTO Inventory VALUES (2, 'orange', 154);
  4. 要执行上述命令的类型  ​​ GO ​​ :
    SQL 复制 GO

选择数据

现在,运行查询以从  ​​ Inventory ​​  表返回数据。


  1. 通过 sqlcmd 命令提示符输入查询,以返回  ​​ Inventory ​​  表中数量大于 152 的行:
    SQL 复制 SELECT * FROM Inventory WHERE quantity > 152;
  2. 执行命令:
    SQL 复制 GO

退出 sqlcmd 命令提示符

要结束 sqlcmd 会话,请键入  ​​ QUIT ​​ :

SQL 复制

QUIT

性能最佳实践

在 Linux 上安装 SQL Server 后, 查看配置 Linux 和 SQL Server 来提高生产方案的性能的最佳做法。   有关详细信息,请参阅 ​​ 的性能最佳实践和 Linux 上的 SQL Server 配置准则 ​​ 。

跨平台数据工具

除了 sqlcmd ,可以使用以下跨平台工具来管理 SQL Server:



​​ Azure 数据 Studio ​​

跨平台 GUI 数据库管理实用程序。

​​ mssql-cli ​​

用于运行 TRANSACT-SQL 命令的跨平台命令行界面。

​​ Visual Studio Code ​​

运行 TRANSACT-SQL 语句,mssql 扩展通过一个跨平台 GUI 代码编辑器。

从 Windows 连接

Windows 上的 SQL Server 工具连接到 Linux 上的 SQL Server 实例,操作方式与连接到任何远程 SQL Server 实例一样。

如果有一台可以连接到 Linux 计算机的 Windows 计算机,请从运行 sqlcmd 的 Windows 命令提示符尝试执行本主题中的相同步骤。   仅验证所使用的是目标 Linux 计算机名称或 IP 地址,而非 localhost,并确保 TCP 端口 1433 已打开。   如果从 Windows 进行连接存在任何问题,请参阅 ​​ 连接故障排除建议 ​​ 。

有关在 Windows 上运行,但连接到 Linux 上的 SQL Server 的其他工具,请参阅:


  • ​​ SQL Server Management Studio (SSMS) ​​
  • ​​ Windows PowerShell ​​
  • ​​ SQL Server Data Tools (SSDT) ​​

其他部署方案

有关其他安装方案,请参阅以下资源:



​​ 升级 ​​

了解如何升级 Linux 版 SQL Server 的现有安装

​​ 卸载 ​​

在 Linux 上卸载 SQL Server

​​ 无人参与安装 ​​

了解如何编写无提示安装脚本

​​ 脱机安装 ​​

了解如何手动下载脱机安装程序包

 提示

有关常见问题的解答,请参阅 ​​ SQL Server Linux 常见问题 ​​ 。

后续步骤

​​ 在 Linux 上的 SQL Server 浏览的教程 ​​






脱机安装

如果你的 Linux 计算机无法访问中使用的在线存储库 ​​ 快速入门 ​​​ ,可以直接下载包文件。   这些包位于 Microsoft 存储库,  ​​ https://packages.microsoft.com  ​​ 。



 提示

如果使用快速入门中的步骤已成功安装,您不需要下载或手动安装 SQL Server 包。   本部分仅适用于脱机方案。




  1. 下载你的平台的数据库引擎包 。   包详细信息部分中找到包下载链接 ​​ 发行说明 ​​ 。
  2. 将下载的包移到 Linux 计算机 。   如果使用另一台计算机下载包,将包移到 Linux 计算机的一种方法是使用 scp 命令。
  3. 安装数据库引擎包 。   使用以下命令基于你的平台之一。   在此示例包文件的名称替换为你下载的确切名称。


  4. 平台 包安装命令


    RHEL ​
​ sudo yum localinstall mssql-server_versionnumber.x86_64.rpm ​

SLES ​​ sudo zypper install mssql-server_versionnumber.x86_64.rpm ​

Ubuntu ​​ sudo dpkg -i mssql-server_versionnumber_amd64.deb ​


 备注
您还可以使用安装 RPM 包 (RHEL 和 SLES) ​​ rpm -ivh ​​ 命令,但在上表中的命令会自动安装依赖项如果可从已批准的存储库。

解决缺少的依赖项 :你可能在此时缺少依赖项。   如果没有,可以跳过此步骤。   在 Ubuntu,如果你有权访问已批准存储库包含这些依赖项,最简单的解决方案是使用 ​​ apt-get -f install ​​ 命令。   此命令还完成了 SQL Server 的安装。   若要手动检查依赖项,请使用以下命令:


平台 依赖项列表命令


RHEL ​​ rpm -qpR mssql-server_versionnumber.x86_64.rpm ​

SLES ​​ rpm -qpR mssql-server_versionnumber.x86_64.rpm ​

Ubuntu ​​ dpkg -I mssql-server_versionnumber_amd64.deb ​


在解决缺少的依赖项之后, 尝试再次安装 mssql server 包。
完成 SQL Server 安装程序 。   使用 mssql conf 完成 SQL Server 安装程序:
bash 复制 sudo /opt/mssql/bin/mssql-conf setup



如果你的Linux无法访问在线Repo,你可以直接下载RPM包文件。这些包位于微软的资料库: ​​ https://packages.microsoft.com ​​ 。


CU9 ​ ​ (2018 ​ ​ 年7 ​ ​ 月)

SQL Server 2017的累积更新包9。SQL Server引擎版本是14.0.3030.27。




Package



Package version



Downloads



Red Hat RPM package



14.0.3030.27-1



​​ Engine RPM package ​​​​ High Availability RPM package ​​​​ Full-text Search RPM package ​​​​ SSIS package ​​








● 本文作者:小麦苗,部分内容整理自网络,若有侵权请联系小麦苗删除


● 本文在itpub(http://blog.itpub.net/26736162/abstract/1/)和个人微信公众号(xiaomaimiaolhr)上有同步更新


● QQ群号:230161599(满)、618766405


● 版权所有,欢迎分享本文,转载请保留出处


在Linux 上安装 SQL Server_bash_05

举报

相关推荐

0 条评论