Web与技术 · 2018年04月14号 0

如何在Linux上安装和使用MS SQL Server

今年早些时候,微软宣布他们的将MS SQL Server运行在Linux上的计划震惊了IT界。在Satya Nadella的领导下,微软这个雷德蒙德的巨头在Linux主导的产业(如快速推动云的技术)方面取得了显著进展。使SQL Server可以在Linux环境下运行,是这种进程的另一个标志性的举动。

无论公司的这一举措背后的动机是什么,Linux系统管理员可能需要学习如何安装,维护和使用MS SQL Server——特别是考虑到在Red Hat EnterpriseLinux 7(包括CentOS 7)和Ubuntu服务器16.04 64位(对不起——没有32位版本!)的预览版本包已经可用。预览版本的唯一的“昂贵的”系统需求是安装它的系统必须有至少3.25 GB的内存。

1        在Linux上安装MS SQL Server

开始之前,我们需要添加两个资源库到我们的软件源列表。

1.1 On RHEL/CentOS:

1.在/etc/yum.repos.d/sql-server.repo文件中添加以下行:

[packages-microsoft-com-mssql-server]

name=packages-microsoft-com-mssql-server

baseurl=https://packages.microsoft.com/rhel/7/mssql-server/

enabled=1

gpgcheck=1

gpgkey=https://packages.microsoft.com/keys/microsoft.asc

为了安装MSSQL Server的命令行工具,采用以下内容创建/etc/yum.repos.d/msprod.repo文件。

[packages-microsoft-com-prod]

name=packages-microsoft-com-prod

baseurl=https://packages.microsoft.com/rhel/7/prod/

enabled=1

gpgcheck=1

gpgkey=https://packages.microsoft.com/keys/microsoft.asc

2.然后和平常一样,采用yum包管理器来安装这些包。

# yum install -y mssql-servermssql-tools

当安装结束,你会被提醒运行配置脚本(/opt/mssql/bin/sqlservr-setup)来接受许可协议,设置SA用户的密码和启动服务。此外,你可以选择让它在系统引导时自动启动。

3.为了让外部客户端可以和数据库服务器通讯,需要打开防火墙的1433/tcp端口。

如果你使用firewalld,使用以下命令:

# firewall-cmd–add-port=1433/tcp –permanent

# firewall-cmd –reload

否则(使用iptables的话)使用以下命令:

#iptables -A INPUT -p tcp –dport 1433 -j ACCEPT

#iptables-save > /etc/sysconfig/iptables

1.2 On Ubuntu,do:

1.为了让Ubuntu信任MS SQL Server资源库的包,需要导入GPG keys:

$sudo sh -c “curl https://packages.microsoft.com/keys/microsoft.asc | sudoapt-key add -”

2. 添加资源库到/etc/apt/sources.list.d/sql-server.list:

$sudo sh -c “echo deb [arch=amd64] https://packages.microsoft.com/ubuntu/16.04/mssql-serverxenial main > /etc/apt/sources.list.d/sql-server.list”

$sudo sh -c “echo deb [arch=amd64]https://packages.microsoft.com/ubuntu/16.04/prod xenial main >>/etc/apt/sources.list.d/sql-server.list”

3.重新同步包索引文件,更新核心包和附加工具:

$ sudoapt-get update

$sudo apt-get install mssql-server mssql-tools -y

4.和前面的情况一样,执行配置脚本:

$sudo /opt/mssql/bin/sqlservr-setup

如何在Linux上安装和使用MS SQL Server

SQL Server Setup on Linux

5.根据提示,选择“YES”接受MS SQLTools的许可协议:

如何在Linux上安装和使用MS SQL Server

Configuring MSSQL Toolson Linux

2        在Linux上测试MS SQL Server

我们将登录到服务器,并创建一个名为Fabrics的数据库。-p开关后必须紧接着输入之前你选择安装包时的密码:

$ sqlcmd -S localhost -U SA -P ‘YourPasswordHere

CREATE DATABASE Fabrics

exit

如何在Linux上安装和使用MS SQL Server

Create MSSQL Database onLinux

如果你正在使用Linux,你可以像上面一样继续使用命令行。否则,如果你使用的是Windows,你可以安装 SQL Server ManagementStudio Express。

一旦完成,输入数据库服务器的IP(在这个用例中192.168.0.200)和登录凭据(用户名= sa,密码=YourPasswordHere):

如何在Linux上安装和使用MS SQL Server

Connect to MSSQL Server

成功登录后,Fabrics 数据库应该出现在左边:

如何在Linux上安装和使用MS SQL Server

Confirm MSSQL Database

下一步,点击“New Query”打开一个新的查询窗口,然后将来自Codeproject.com的 Fabrics数据库脚本的内容插入到查询窗口,然后单击执行。如果成功,您将看到该脚本创建的5个表和每个表的记录的数量:

如何在Linux上安装和使用MS SQL Server

Create a Sample SQL Database

总结一下,运行下面的查询来检索Clients表前5条记录:

USE Fabrics

SELECT TOP 5 FirstName,LastName,

DateOfBirth FROM Client

GO

结果应该和下面的图片的输出一致:

如何在Linux上安装和使用MS SQL Server

恭喜你!你已经在Linux上成功的安装和测试了MS SQL Server。

3        综述

在本文中,我们解释了如何在RHEL / CentOS和Ubuntu安装MS SQL Server服务器。由于微软和Linux的紧密的联系的建立,Linux系统管理员如果想呆在他们的游戏顶端,需要有关于MS SQL Server的知识渊博。

到2017年中期,相同的SQL Server版本将和今天在Windows上一样提供Linux上版本:企业版,标准版,Web版,Express版本,和开发人员版本。最后两个是免费的,但只有Express edition将授权生产许可使用 (但有资源限制)。

一如既往, 如果你有任何问题,请使用下面的评论形式给我们留言。我们期待听到您的声音!