Ubuntu下安装SQLServer

database

  • 安装过程中遇到的问题

1 sqlcmd -S localhost -U SA 时报错

Sqlcmd: Error: Microsoft ODBC Driver 17 for SQL Server : TCP Provider: Error code 0x2746

Sqlcmd: Error: Microsoft ODBC Driver 17 for SQL Server : Client unable to establish connection.

使用 下面的命令,将版本更新至14

sudo apt-get install mssql-server=14.0.3192.2-2

 

  • 安装步骤

要在 Ubuntu 上配置 SQL Server,请在终端中运行以下命令以安装 mssql-server 包 。

  1. 导入公共存储库 GPG 密钥:

    wget -qO- https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -

  2. 注册 Microsoft SQL Server Ubuntu 存储库:

    sudo add-apt-repository "$(wget -qO- https://packages.microsoft.com/config/ubuntu/16.04/mssql-server-2017.list)"

    提示

    如果想安装 SQL Server 2019,必须改为注册 SQL Server 2019 存储库。 使用以下命令安装 SQL Server 2019:

    sudo add-apt-repository "$(wget -qO- https://packages.microsoft.com/config/ubuntu/16.04/mssql-server-2019.list)"

  3. 运行以下命令以安装 SQL Server:

    sudo apt-get update

    sudo apt-get install -y mssql-server

  4. 包安装完成后,运行 mssql-conf setup,按照提示设置 SA 密码并选择版本。

    sudo /opt/mssql/bin/mssql-conf setup

    提示

    以下 SQL Server 2017 版本是免费提供许可的:Evaluation、Developer 和 Express 版。

    备注

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

  5. 完成配置后,验证服务是否正在运行:

    systemctl status mssql-server --no-pager

  6. 如果计划远程连接,可能还需要在防火墙上打开 SQL Server TCP 端口(默认值为 1433)。

此时,SQL Server 已在 Ubuntu 计算机上运行,随时可以使用!

安装 SQL Server

要在 Ubuntu 上配置 SQL Server,请在终端中运行以下命令以安装 mssql-server 包 。

  1. 导入公共存储库 GPG 密钥:

    wget -qO- https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -

  2. 为 SQL Server 2019 注册 Microsoft SQL Server Ubuntu 存储库:

    sudo add-apt-repository "$(wget -qO- https://packages.microsoft.com/config/ubuntu/16.04/mssql-server-2019.list)"

  3. 运行以下命令以安装 SQL Server:

    sudo apt-get update

    sudo apt-get install -y mssql-server

  4. 包安装完成后,运行 mssql-conf setup,按照提示设置 SA 密码并选择版本。

    sudo /opt/mssql/bin/mssql-conf setup

    备注

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

  5. 完成配置后,验证服务是否正在运行:

    systemctl status mssql-server --no-pager

  6. 如果计划远程连接,可能还需要在防火墙上打开 SQL Server TCP 端口(默认值为 1433)。

此时,SQL Server 2019 已在 Ubuntu 计算机上运行,随时可以使用!

安装 SQL Server 命令行工具

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

通过下列步骤在 Ubuntu 上安装 mssql-tools 。

  1. 导入公共存储库 GPG 密钥。

    curl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -

  2. 注册 Microsoft Ubuntu 存储库。

    curl https://packages.microsoft.com/config/ubuntu/16.04/prod.list | sudo tee /etc/apt/sources.list.d/msprod.list

  3. 更新源列表,并使用 unixODBC 开发人员包运行安装命令。

    sudo apt-get update 

    sudo apt-get install mssql-tools unixodbc-dev

    备注

    若要将 mssql-tools 更新至最新版本,请运行以下命令 :

    sudo apt-get update 

    sudo apt-get install mssql-tools

  4. 可选:向 bash shell 中的 PATH 环境变量添加 /opt/mssql-tools/bin/ 。

    要使 sqlcmd/bcp 能从登陆会话的 bash shell 进行访问,请使用下列命令修改 ~/.bash_profile 文件中的 PATH :

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

    要使 sqlcmd/bcp 能从交互式/非登录会话的 bash shell 进行访问,请使用下列命令修改 ~/.bashrc 文件中的 PATH :

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

    source ~/.bashrc

本地连接

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

  1. 使用 SQL Server 名称 (-S),用户名 (-U) 和密码 (-P) 的参数运行 sqlcmd 。 在本教程中,用户进行本地连接,因此服务器名称为 localhost。 用户名为 SA,密码是在安装过程中为 SA 帐户提供的密码。

    sqlcmd -S localhost -U SA -P "<YourPassword>"

    提示

    可以在命令行上省略密码,以收到密码输入提示。

    提示

    如果以后决定进行远程连接,请指定 -S 参数的计算机名称或 IP 地址,并确保防火墙上的端口 1433 已打开。

  2. 如果成功,应会显示 sqlcmd 命令提示符:1>

  3. 如果连接失败,先尝试诊断错误消息中所述的问题。 然后查看连接故障排除建议。

创建和查询数据

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

新建数据库

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

  1. 在 sqlcmd 命令提示符中,粘贴以下 Transact-SQL 命令以创建测试数据库:

    CREATE DATABASE TestDB

  2. 在下一行中,编写一个查询以返回服务器上所有数据库的名称:

    SELECT Name from sys.Databases

  3. 前两个命令没有立即执行。 必须在新行中键入 GO 才能执行以前的命令:

    GO

提示

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

插入数据

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

  1. 在 sqlcmd 命令提示符中,将上下文切换到新的 TestDB 数据库:

    USE TestDB

  2. 创建名为 Inventory 的新表:

    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

    GO

选择数据

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

  1. 通过 sqlcmd 命令提示符输入查询,以返回 Inventory 表中数量大于 152 的行:

    SELECT * FROM Inventory WHERE quantity > 152;

  2. 执行命令:

    GO

退出 sqlcmd 命令提示符

要结束 sqlcmd 会话,请键入 QUIT

QUIT

 

以上是 Ubuntu下安装SQLServer 的全部内容, 来源链接: utcz.com/z/531459.html

回到顶部