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

https://docs.microsoft.com/zh-cn/sql/linux/quickstart-install-connect-red-hat?view=sqlallproducts-allversions

适用于: SQL Server (仅限 Linux)Azure SQL 数据库Azure SQL 数据仓库并行数据仓库

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

提示

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

必要條件

必须使用 RHEL 7.3 或 7.4 计算机,且必须拥有至少 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 2019 预览 Red Hat 存储库配置文件:

    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

    备注

    请确保为 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 2019 预览 RHEL 计算机上运行并已准备好使用 !

安装 SQL Server 命令行工具

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

  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 的其他工具,请参阅:

其他部署方案

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

   
升级 了解如何升级 Linux 版 SQL Server 的现有安装
卸载 在 Linux 上卸载 SQL Server
无人参与安装 了解如何编写无提示安装脚本
脱机安装 了解如何手动下载脱机安装程序包

提示

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

后续步骤

[MS] 微软官网下载安装SQLSERVER2019的rpm的更多相关文章

  1. PyCharm 2017 官网 下载 安装 设置 配置 (主题 字体 字号) 使用 入门 教程

    一.安装 Python 3.6 首先,要安装好 Python 3.6.如果你还没有安装,可以参考咪博士之前的教程 Python 3.6.3 官网 下载 安装 测试 入门教程 (windows) 二.官 ...

  2. go语言,golang学习笔记1 官网下载安装,中文社区,开发工具LiteIDE

    go语言,golang学习笔记1 官网下载安装,中文社区,开发工具LiteIDE Go语言是谷歌2009发布的专门针对多处理器系统应用程序的编程进行了优化,使用Go编译的程序可以媲美C或C++代码的速 ...

  3. Centos 7 官网下载安装mysql server 5.6

    Centos 7 官网下载安装 mysql server # wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rp ...

  4. Python 3.6.3 官网 下载 安装 测试 入门教程 (windows)

    1. 官网下载 Python 3.6.3 访问 Python 官网 https://www.python.org/ 点击 Downloads => Python 3.6.3 下载 Python ...

  5. 从微软官网下载VS离线安装包的方法

    这里描述是包括所有版本,截图以下载VS2017社区版为例: ①登入VS官网下载页面,选择需要的版本点击下载,下载页点此进入. ②下载完成后,打开下载文件所在文件夹,Windows 8.1及以上版本用户 ...

  6. 无法从NVIDA官网下载安装CUDA安装包?NVIDA官网怎么了?

    最近几天由于不知名的原因,导致很多人无法从官网下载NVIDA的CUDA安装包,下载时,浏览器提示此文件可能危害你的计算机,选择保留下载下来也只是一个42字节的exe文件 双击进行安装又出现以下问题: ...

  7. mysql官网下载安装

    1.官网下载zip压缩文件 2.解压到指定文件夹 3.配置环境变量 4.新建my.ini 5.管理员权限打开cmd命令行,mysqld install mysql,mysql --initialize ...

  8. 微软官网下载win10离线介质

    1.打开google浏览器 2.搜索win10官网下载或者直接输入网址https://www.microsoft.com/zh-cn/software-download/windows10 3.按F1 ...

  9. maven官网下载安装步骤

    第一大步:下载. a.俗话说:“巧妇难为无米之炊”嘛!我这里用的是 ZIP Archive 版的,win7 64位的机器支持这个,所以我建议都用这个.因为这个简单嘛,而且还干净. 地址见图 拉倒最下面 ...

随机推荐

  1. Ceph的BlueStore总体介绍

    整体架构 bluestore的诞生是为了解决filestore自身维护一套journal并同时还需要基于系统文件系统的写放大问题,并且filestore本身没有对SSD进行优化,因此bluestore ...

  2. java-深克隆和浅克隆

    文章参考 https://www.cnblogs.com/acode/p/6306887.html 一.前提 1.使用clone()方法的类,必须实现Cloneable接口, 否则调用clone()方 ...

  3. Java连接Redis之redis的增删改查

    一.新建一个maven工程,工程可以以jar的形式或war都行,然后导入正确的依赖 <project xmlns="http://maven.apache.org/POM/4.0.0& ...

  4. MTALAB——神经网络mae()、mse()、sse()

    mae():平均绝对误差 mse:均方误差 sse:误差平方和

  5. PAT A1136 A Delayed Palindrome (20 分)——回文,大整数

    Consider a positive integer N written in standard notation with k+1 digits a​i​​ as a​k​​⋯a​1​​a​0​​ ...

  6. PAT A1150 Travelling Salesman Problem (25 分)——图的遍历

    The "travelling salesman problem" asks the following question: "Given a list of citie ...

  7. 开发板测试-GPRS

    注意事项: 经过测试,为了使STM32和Air202的串口稳定通信,需要更改 以前电路感觉应该是三极管控制极4.7K电阻太大,又因为开关速度快,然后开关的时候导致不足以让三极管处于全部导通状态,所以电 ...

  8. tornado学习篇(第二部)

    执行字符串表示的函数,并为该函数提供全局变量 本篇的内容从题目中就可以看出来,就是为之后剖析tornado模板做准备,     #!usr/bin/env python #coding:utf-8 n ...

  9. JS-JS代码插入位置

    一.HTML 页面的 <head> 部分中 由于 HTML 文档是由浏览器从上到下依次载入的,将 JavaScript 代码放置于<head></head> 标签之 ...

  10. [转]curl的错误代码

    转贴者按: 今天在使用curl的时候碰到了一个错误,如下所示: External Program Failed: D:\Tools\curl\curl.exe (return code was 18) ...