快速入门:安装 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. Lock和Condition在JDK中ArrayBlockingQueue的应用

    ArrayBlockingQueue的实现思路简单描述,ArrayBlockingQueue的底对于互斥访问使用的一个锁.细节参考源码take和put方法: import java.util.conc ...

  2. 解决 docker ulimit open file 过少的问题

    解决方法: ExecStart=/usr/bin/dockerd -- -- -- -- --insecure-registry= --dns --dns-opt timeout: --dns-opt ...

  3. vue2.0 broadcast和dispatch的理解

    阅读目录 vue2 broadcast和dispatch的理解 回到顶部 vue2 broadcast和dispatch的理解 /* broadcast 事件广播 @param {componentN ...

  4. Linux kernel Programming - Allocating Memory

    kmalloc #include <linux/slab.h> void *kmalloc(size_t size,int flags); void kfree(void *addr); ...

  5. QT数据类型的转化总结

    QT 中的数据类型有很多的,在写代码的过程中难免会遇到 数据类型的转换. 1.QString转QByteArray QByteArray byte;QString string;byte = stri ...

  6. GIT 工作区和暂存区

    工作区和暂存区 Git和其他版本控制系统如SVN的一个不同之处就是有暂存区的概念. 先来看名词解释. 工作区(Working Directory) 就是你在电脑里能看到的目录,比如我的studygit ...

  7. Luogu4137 Rmq problem/mex 主席树

    传送门 用主席树水莫队题…… 我们对于前缀和建立主席树,对于主席树中的每一个叶子节点表示它对应的数字最后出现的位置的编号,非叶子节点求左右节点的最小值,那么对于每一次询问$l,r$就是在第$r$棵主席 ...

  8. (原创)odoo在docker环境下无法备份

    odoo容器内置postgresql-client版本和数据库版本不一致,安装和数据库版本相同或者更高版本的客户端 参考:https://www.postgresql.org/download/lin ...

  9. odoo在底部显示指定字段合计和汇总时显示合计

    1.odoo的tree视图底部显示合计 tree 视图,底部显示指定字段合计数 ,视图中字段定义上在sum,取自sale.view_order_tree 销售订单 tree 视图 <field ...

  10. 校内模拟赛 SovietPower Play With Amstar

    SovietPower Play With Amstar 题意: 一棵二叉树,每次询问一条路径上的路径和,初始每个点有一个权值1,询问后权值变为0.$n \leq 10^7,m\leq10^6$ 分析 ...