ubuntu16.04下安装SQLserve

来源:互联网 发布:怎样在淘宝上卖游戏币 编辑:程序博客网 时间:2024/05/16 08:33

首先我们来了解一下目前MSSQL Server on Linux所支持的系统版本:

Red Hat Enterprise Linux7.2Get RHEL 7.2Ubuntu16.04Get Ubuntu 16.04Docker Engine1.8+Get Docker

我主要采用了Ubuntu16.10和Ubuntu14.04(安装失败了,后面讲原因)来进行安装.

下面我们来讲一下安装步骤:

1.输入下面的命令,获取root权限:

sudo su

2.然后导入公共库GPG密钥:

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

这里可能会报错(通过的忽略),如下:

我们需要先安装curl,命令如下:

apt install curl

安装完毕后继续执行上面的语句,得到成功后的结果如图:

3.注册Microsoft SQL Server Ubuntu存储库 命令如下:

curl https://packages.microsoft.com/config/ubuntu/16.04/mssql-server.list > /etc/apt/sources.list.d/mssql-server.list

成功结果如下:

4.退出root用户模式(退不退都行)。

exit

5.下载并安装SQL Server,命令如下:

sudo apt-get updatesudo apt-get install  mssql-server

见到如下图片即为安装完成:

6.安装完成后运行配置脚本并按照提示进行sa帐户的配置,命令如下:

如何你系统提示的语句跟我的不同,请用系统提示的语句即可,若提示选择版本,则我选的developer (免费)

sudo /opt/mssql/bin/sqlservr-setup

7.输入你sa帐户的密码,提示如图:

其中错误信息的意思是:输入的密码不符合安全规定,说白了..自己设置复杂点..来点英文 来点符号 来点数字..就好了..

然后会让你第二次输入密码来确认和第一次一致就行.

成功后会出现下图:

问你是否现在就启动SQL Servcie..当然,所以..输入:Y

然后会出现下图:

问你是否开机启动(怎么有种全家桶的感觉.. ..中毒了.. - -||,)..

当然也是Y..

8.确认服务器是否开启并正常运行,命令如下:

systemctl status mssql-server

成功会出现下图:

好了

接下来是连接数据库,并创建一个表

本地连接

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

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

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

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

  2. 如果连接失败,请首先尝试根据错误消息诊断问题。 然后查看连接故障排除建议。

创建和查询数据

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

新建数据库

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

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

    SQL
  • CREATE DATABASE TestDB
  • 在下一行中,编写一个查询以返回服务器上所有数据库的名称:

    SQL
  • SELECT Name from sys.Databases
  • 前两个命令没有立即执行。 必须在新行中键入 GO 才能执行以前的命令:

    SQL
    1. GO

    插入数据

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

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

      SQL
  • USE TestDB
  • 创建名为 Inventory 的新表:

    SQL
  • CREATE TABLE Inventory (id INT, name NVARCHAR(50), quantity INT)
  • 将数据插入新表:

    SQL
  • INSERT INTO Inventory VALUES (1, 'banana', 150); INSERT INTO Inventory VALUES (2, 'orange', 154);
  • 要执行上述命令的类型 GO

    SQL
    1. GO

    选择数据

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

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

      SQL
  • SELECT * FROM Inventory WHERE quantity > 152;
  • 执行命令:

    SQL
    1. GO

    退出 sqlcmd 命令提示符

    要结束 sqlcmd 会话,请键入 QUIT

    SQL
    QUIT

    从 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)