是时候跨界在Linux上安装小编的率先个SQL安装

大家知晓,多少个礼拜前,微软公布了在Linux上直接运转的SQL
Server第多个精晓CTP版本!由此,对本身来讲,是时候跨界在Linux上安装小编的第多个SQL安装,那样的话,笔者就足以在Linux上折腾SQL
Server。在那篇作品里,作者想给你包涵讲下在Linux上,SQL
Server的启航是什么的。

架构

在大家争辨Linux上的SQL
Server的细节从前,作者想花几分钟时间谈下微软什么贯彻在Linux上运维SQL
Server。当微软首次公开宣称它们在Linux上运维SQL
Server的设置,各样人都会感觉SQL Server只是移植到Linux。SQL
Server已经通过SQLOS抽象了部分底层操作系统的意义,因而那会有用,但象征微软特殊须求维护不一样的代码库(一个Windows,叁个Linux)。大家都同意那是不可行的。

为了减轻这几个题材,以后微软在Linux上运营基于Windows的未修改代码。微软做了如下举动:

style=”font-family: Microsoft YaHei;”>”大家在SQLPAL上嵌入Linux进度运维非凡的Windows版的SQL
Server,即从Drawbridge(吊桥)演变。”——Slava
Oks:

style=”font-family: Microsoft YaHei;”>图片 1

SQLPAL是“SQL Server
Platform Abstraction Layer
(SQL
Server平台抽象层)”。Drawbridge自个儿是微软商量院在二零一二年一月创立的品种,目标提供新样式虚构化的应用程序沙盒。如今还并未有在Linux上,SQL
Server整个架构怎么着运作的了然新闻,因而这里不能够解说得很掌握。但最注重,要铭记的事:在Linux上,SQL
Server不是一个端口,它是和基于Windows的SQL Server同样。

故而,你大致能够在Linux上的SQL
Server上做和Windows上的SQL
Server的别的事情。它是卓有成效的,未有任何副效能。当然还不是富有的全体都得以在Linux上的SQL
Server做。当前还不帮助SQL
Server代理,而且还并未有像HA/D翼虎(高可用性/故障恢复生机)的Always
ON可用性组。但自己只要,微软会在Linux上为大家提供在那方面提供新的遵守和特征。在依据Window上和基于Linux上间成立可用性复制,会是多么惊艳的事!

起始折腾Linux上的SQL Server

为了在Linux上运转SQL
Server,你要求安装一个Linux发行版。微软脚下支撑Ubuntu 16.04,和RubiconHEL
7.2(红帽子公司版Linux)。在这边自身决定简单安装三个Ubuntu虚构机,然后在它下边安装SQL
Server。微软在线支持是时候跨界在Linux上安装小编的率先个SQL安装。会告诉您怎么在Linux上安装SQL
Server的详细步骤,SQL Server和你正是多少个指令的距离:

sudo curl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -
sudo curl https://packages.microsoft.com/config/ubuntu/16.04/mssql-server.list | sudo tee /etc/apt/sources.list.d/mssql-server.list
sudo apt-get update
sudo apt-get install -y mssql-server
sudo /opt/mssql/bin/sqlservr-setup

比如你在Linux上安装了SQL
Server,你能够用sytemctl命令验证下SQL Server是不是在运转。

systemctl status mssql-server

别的你也能够安装Linux上的SQL
Server客户端工具,是时候跨界在Linux上安装小编的率先个SQL安装。它会在Linux上给您sqlcmd命令实行——异常的赞!

是时候跨界在Linux上安装小编的率先个SQL安装。SQL
Server安装达成后,你能够在Windows下的SSMS来接二连三运营在Linux上的SQL
Server。你只要求提供Ubuntu设想机的IP地址和不易密码的sa账号。很简短——它就是一个SQL
Server实例(和Windows一样)——运营在别的地方——这里是运营在Linux上!连接成功后,现在我们来运行有名的

SELECT @@VERSION:

图片 2

是的,大家运转在Linux上!还会有更美貌的!你能够在Linux上运维符合规律的依据Windows版SQL
Server的备份和还原,也是尚未难点。首先你要拷贝一个SQL
Server数据库备份到你的Ubuntu虚构机。暗中同意意况下Ubuntu未有设置SMB,你能够用它来陈设用于文书调换的文件分享。首先我们在Ubuntu上经过设置SMB功用来校正:

sudo apt-get install samba
smbpasswd -a klaus

设置好SMB,你能够经过丰盛下列目录到/etc/samba/smb.conf是时候跨界在Linux上安装小编的率先个SQL安装。文本来安排远程文件分享:

[Documents]
path = /home/klaus/Documents
available = yes
valid users = klaus
read only = no
browsable = yes
public = yes
writable = yes

在这里自个儿分享/home/klaus/Documents作为共享文件夹。然后您需求重启SMB服务来让远道文件分享可用,从你的Windows系统。

sudo service smbd restart

末段复制你的SQL
Server数据库备份到你的Ubuntu设想机。当你在您的Ubuntu虚构机上有了您的数据库备份,最终你能够复制它到/var/opt/mssql/data文件夹,这样的话,SQL
Server就足以访谈它:

sudo cp AdventureWorks2014.bak /var/opt/mssql/data/AdventureWorks2014.bak

今昔当你在SSMS界面里长久到数据库还原,你能够看出SQL
Server能够看出您的备份。

图片 3

下一场通过提供备份文件实行正常的RESORE
DATABASE命令:

-- Restore AdventureWorks2014 on Linux
RESTORE DATABASE [AdventureWorks2014] FROM DISK = N'C:\var\opt\mssql\data\AdventureWorks2014.bak' WITH FILE = 1,
MOVE N'AdventureWorks2014_Data' TO N'C:\var\opt\mssql\data\AdventureWorks2014_Data.mdf',  
MOVE N'AdventureWorks2014_Log' TO N'C:\var\opt\mssql\data\AdventureWorks2014_Log.ldf', STATS = 1
GO

说实话,真的是立下志愿了,作者的哥!!!

图片 4

您还可望Linux上的SQL
Server会有哪些吧?作者刚说过——大约一齐!作者一度测量检验了前沿能力——举例内存优化表,列存款和储蓄索引,并行试行陈设,等待总计等等。——统统支持!!!

这个功能都援救是常常的,因为健康基于Windows的SQL
Server——只是在寄宿在Linux进度里运转,剥掉Windows系统的SQL Server。

缘何在Linux上运营SQL Server

从本领角度来讲,微软这里这里有了非常大的突破。未有人会想到在SteveBallmer(微软总首席营业官)领导下爆发这一个。微软曾经做出了180°的转弯——相当的棒!但在Linux上运转SQL
Server的购销原因是什么?大家来看下:

  • 并未系统授权费用(Linux是无需付费的)
  • 对此Linux,微软提供了一个“成熟”的关周详据库手艺(当然还应该有像MySQL的任何可用数据库,不过……)
  • ……

坦白讲:在Linux上运营SQL
Server,这整个主见都有一些疯狂,但您越是想下,尤其以为那有意义——对于部分处境。大家都同意,对于豪门,在Linux上的SQL
Server不会是至关心爱抚要的开辟形式。但对有的特有情形会有意义。

小结

近多少个的礼拜本领真是一日千里啊:首先大家在SQL
Server的规范版里有了开拓版的富有机能,现在咱们有了足以在Linux上直接运营的根据Windows的SQL
Server。参与SQL
Server社区很享受,大家感受到这两天的改良。我们的明日会更奇妙!

对于微软SQL
Server现在进步势头你有何主张?款待留言!

感激关心!

原稿链接

http://www.sqlpassion.at/archive/2016/11/28/first-steps-with-sql-server-on-linux/

发表评论

电子邮件地址不会被公开。 必填项已用*标注