澳门新萄京官方网站-www.8455.com-澳门新萄京赌场网址

澳门新萄京官方网站的简单介绍及安装

2019-08-24 作者:数据库网络   |   浏览(186)

我们知道,几个星期前,微软发布了在Linux上直接运行的SQL Server第一个公开CTP版本!因此,对我来说,是时候跨界在Linux上安装我的第一个SQL安装,这样的话,我就可以在Linux上折腾SQL Server。在这篇文章里,我想给你概括讲下在Linux上,SQL Server的起步是怎样的。

    WSL,Windows Subsystem for Linux,就是之前的Bash on [Ubuntu on] Windows(嗯,微软改名部KPI ),在wsl环境下我们可以运行一些Linux程序。

澳门新萄京官方网站的简单介绍及安装。    WSL,Windows Subsystem for Linux,就是之前的Bash on [澳门新萄京官方网站的简单介绍及安装。Ubuntu on] Windows(嗯,微软改名部KPI ),在wsl环境下我们可以运行一些Linux程序。

    WSL,Windows Subsystem for Linux,就是之前的Bash on [Ubuntu on] Windows(嗯,微软改名部KPI ),在wsl环境下我们可以运行一些Linux程序。

架构

在我们谈论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本身是微软研究院在2011年9月建立的项目,目的提供新形式虚拟化的应用程序沙盒。目前还没有在Linux上,SQL Server整个架构如何运行的公开信息,因此这里不能讲解得很清楚。但最重要,要记住的事:在Linux上,SQL Server不是一个端口,它是和基于Windows的SQL Server一样。

因此,你几乎可以在Linux上的SQL Server上做和Windows上的SQL Server的任何事情。它是可行的,没有任何副作用。当然还不是所有的一切都可以在Linux上的SQL Server做。当前还不支持SQL Server代理,而且还没有像HA/DR(高可用性/故障恢复)的Always ON可用性组。但我假定,微软会在Linux上为我们提供在这方面提供新的功能和特性。在基于Window上和基于Linux上间创建可用性复制,会是多么惊艳的事!

    首先要说一句,其实Windows 10在一周年更新(1607,内部版本14393)的时候就加入了wsl,但是直到刚刚更新的秋季创意者更新(1709,内部版本16299),wsl才正式脱离beta,逐渐趋于稳定,所以我选择这个时候再写这篇文章。以下内容都是基于秋季创意者更新(1709,内部版本16299.19)。

    首先要说一句,其实Windows 10在一周年更新(1607,内部版本14393)的时候就加入了wsl,但是直到刚刚更新的秋季创意者更新(1709,内部版本16299),wsl才正式脱离beta,逐渐趋于稳定,所以我选择这个时候再写这篇文章。以下内容都是基于秋季创意者更新(1709,内部版本16299.19)。

    首先要说一句,其实Windows 10在一周年更新(1607,内部版本14393)的时候就加入了wsl,但是直到刚刚更新的秋季创意者更新(1709,内部版本16299),wsl才正式脱离beta,逐渐趋于稳定,所以我选择这个时候再写这篇文章。以下内容都是基于秋季创意者更新(1709,内部版本16299.19)。

开始折腾Linux上的SQL Server

为了在Linux上运行SQL Server,你需要安装一个Linux发行版。微软当前支持Ubuntu 16.04,和RHEL 7.2(红帽子企业版Linux)。在这里我决定简单安装一个Ubuntu虚拟机,然后在它上面安装SQL Server。微软在线帮助会告诉你如何在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上给你sqlcmd命令执行——很赞!

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文件来配置远程文件共享:

[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:varoptmssqldataAdventureWorks2014.bak' WITH FILE = 1,
MOVE N'AdventureWorks2014_Data' TO N'C:varoptmssqldataAdventureWorks2014_Data.mdf',  
MOVE N'AdventureWorks2014_Log' TO N'C:varoptmssqldataAdventureWorks2014_Log.ldf', STATS = 1
GO

说实话,真的是厉害了,我的哥!!!

澳门新萄京官方网站 4

你还期待Linux上的SQL Server会有什么呢?我刚说过——几乎一起!我已经测试了前沿技术——例如内存优化表,列存储索引,并行执行计划,等待统计等等。——统统支持!!!

这些功能都支持是正常的,因为常规基于Windows的SQL Server——只是在寄宿在Linux进程里运行,剥掉Windows系统的SQL Server。

    接下来,我们正式介绍并安装wsl。

    接下来,我们正式介绍并安装wsl。

    接下来,我们正式介绍并安装wsl。

为什么在Linux上运行SQL Server

从技术角度来说,微软这里这里有了很大的突破。没有人会想到在Steve Ballmer(微软首席执行官)领导下发生这些。微软已经做出了180°的转弯——非常棒!但在Linux上运行SQL Server的商业原因是什么?我们来看下:

  • 没有系统授权费用(Linux是免费的)
  • 对于Linux,微软提供了一个“成熟”的关系数据库技术(当然还有像MySQL的其他可用数据库,但是……)
  • ……

坦白讲:在Linux上运行SQL Server,这整个想法都有点疯狂,但你进一步想下,越发觉得这有意义——对于一些场景。我们都同意,对于大家,在Linux上的SQL Server不会是主要的开发模式。但对一些特殊场景会有意义。

Windows Subsystem for Linux(简称WSL)是一个为在Windows 10上能够原生运行Linux二进制可执行文件(ELF格式)的兼容层。它是由微软与Canonical公司合作开发,目标是使纯正的Ubuntu 14.04 "Trusty Tahr"映像能下载和解压到用户的本地计算机,并且映像内的工具和实用工具能在此子系统上原生运行。[[1]](https://zh.wikipedia.org/wiki/Windows_Subsystem_for_Linux#cite_note-1)[[2]](https://zh.wikipedia.org/wiki/Windows_Subsystem_for_Linux#cite_note-2)[[3]](https://zh.wikipedia.org/wiki/Windows_Subsystem_for_Linux#cite_note-3)

style="font-family: Microsoft YaHei">WSL提供了一个微软开发的Linux兼容内核接口(不包含Linux代码),来自Ubuntu的用户模式二进制文件在其上运行。[[4]](https://zh.wikipedia.org/wiki/Windows_Subsystem_for_Linux#cite_note-4)

style="font-family: Microsoft YaHei">该子系统不能运行所有Linux软件,例如那些图形用户界面,以及那些需要未实现的Linux内核服务的软件。[[5]](https://zh.wikipedia.org/wiki/Windows_Subsystem_for_Linux#cite_note-Ars-March-5)不过,这可以用在外部X服务器上运行的图形X Window系统缓解。[[6]](https://zh.wikipedia.org/wiki/Windows_Subsystem_for_Linux#cite_note-6)

style="font-family: Microsoft YaHei">此子系统起源于命运多舛的Astoria项目,其目的是允许Android应用运行在Windows 10 Mobile上。[[5]](https://zh.wikipedia.org/wiki/Windows_Subsystem_for_Linux#cite_note-Ars-March-5)此功能组件从Windows 10 Insider Preview build 14316开始可用。[[7]](https://zh.wikipedia.org/wiki/Windows_Subsystem_for_Linux#cite_note-7)

style="font-family: Microsoft YaHei; font-size: 15px">——维基百科

Windows Subsystem for Linux(简称WSL)是一个为在Windows 10上能够原生运行Linux二进制可执行文件(ELF格式)的兼容层。它是由微软与Canonical公司合作开发,目标是使纯正的Ubuntu 14.04 "Trusty Tahr"映像能下载和解压到用户的本地计算机,并且映像内的工具和实用工具能在此子系统上原生运行。

style="font-family: Microsoft YaHei;">WSL提供了一个微软开发的Linux兼容内核接口(不包含Linux代码),来自Ubuntu的用户模式二进制文件在其上运行。

style="font-family: Microsoft YaHei;">该子系统不能运行所有Linux软件,例如那些图形用户界面,以及那些需要未实现的Linux内核服务的软件。不过,这可以用在外部X服务器上运行的图形X Window系统缓解。

style="font-family: Microsoft YaHei;">此子系统起源于命运多舛的Astoria项目,其目的是允许Android应用运行在Windows 10 Mobile上。此功能组件从Windows 10 Insider Preview build 14316开始可用。

style="font-size: 15px; font-family: Microsoft YaHei;">——维基百科

Windows Subsystem for Linux(简称WSL)是一个为在Windows 10上能够原生运行Linux二进制可执行文件(ELF格式)的兼容层。它是由微软与Canonical公司合作开发,目标是使纯正的Ubuntu 14.04 "Trusty Tahr"映像能下载和解压到用户的本地计算机,并且映像内的工具和实用工具能在此子系统上原生运行。[[1]](https://zh.wikipedia.org/wiki/Windows_Subsystem_for_Linux#cite_note-1)[[2]](https://zh.wikipedia.org/wiki/Windows_Subsystem_for_Linux#cite_note-2)[[3]](https://zh.wikipedia.org/wiki/Windows_Subsystem_for_Linux#cite_note-3)

style="font-family: Microsoft YaHei">WSL提供了一个微软开发的Linux兼容内核接口(不包含Linux代码),来自Ubuntu的用户模式二进制文件在其上运行。[[4]](https://zh.wikipedia.org/wiki/Windows_Subsystem_for_Linux#cite_note-4)

style="font-family: Microsoft YaHei">该子系统不能运行所有Linux软件,例如那些图形用户界面,以及那些需要未实现的Linux内核服务的软件。[[5]](https://zh.wikipedia.org/wiki/Windows_Subsystem_for_Linux#cite_note-Ars-March-5)不过,这可以用在外部X服务器上运行的图形X Window系统缓解。[[6]](https://zh.wikipedia.org/wiki/Windows_Subsystem_for_Linux#cite_note-6)

style="font-family: Microsoft YaHei">此子系统起源于命运多舛的Astoria项目,其目的是允许Android应用运行在Windows 10 Mobile上。[[5]](https://zh.wikipedia.org/wiki/Windows_Subsystem_for_Linux#cite_note-Ars-March-5)此功能组件从Windows 10 Insider Preview build 14316开始可用。[[7]](https://zh.wikipedia.org/wiki/Windows_Subsystem_for_Linux#cite_note-7)

style="font-family: Microsoft YaHei; font-size: 15px">——维基百科

小结

近几个的星期技术真是突飞猛进啊:首先我们在SQL Server的标准版里有了开发版的所有功能,现在我们有了可以在Linux上直接运行的基于Windows的SQL Server。加入SQL Server社区很享受,我们感受到近些年的革新。我们的明天会更精彩!

对于微软SQL Server未来发展方向你有啥想法?欢迎留言!

感谢关注!

    首先打开设置,进入应用,选择程序和功能,点击启用或关闭Windows功能,勾选适用于Linux的Windows子系统,接下来重启。

    首先打开设置,进入应用,选择程序和功能,点击启用或关闭Windows功能,勾选适用于Linux的Windows子系统,接下来重启。

    首先打开设置,进入应用,选择程序和功能,点击启用或关闭Windows功能,勾选适用于Linux的Windows子系统,接下来重启。

原文链接

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

澳门新萄京官方网站 5

澳门新萄京官方网站 6

澳门新萄京官方网站 7

澳门新萄京官方网站 8

澳门新萄京官方网站 9

澳门新萄京官方网站 10

    在beta的时候我们需要在powershell里面输入bash才能下载wsl,而且没有国内下载节点,不支持断点续传,所以一旦网络不稳定就废了。在1709版本的Windows10中,我们可以去商店搜索Ubuntu来下载,现在不但有Ubuntu,还有SUSE和openSUSE。(在Windows商店里下载Ubuntu是不是感觉很诡异w(゚Д゚)w

    在beta的时候我们需要在powershell里面输入bash才能下载wsl,而且没有国内下载节点,不支持断点续传,所以一旦网络不稳定就废了。在1709版本的Windows10中,我们可以去商店搜索Ubuntu来下载,现在不但有Ubuntu,还有SUSE和openSUSE。(在Windows商店里下载Ubuntu是不是感觉很诡异w(゚Д゚)w

    在beta的时候我们需要在powershell里面输入bash才能下载wsl,而且没有国内下载节点,不支持断点续传,所以一旦网络不稳定就废了。在1709版本的Windows10中,我们可以去商店搜索Ubuntu来下载,现在不但有Ubuntu,还有SUSE和openSUSE。(在Windows商店里下载Ubuntu是不是感觉很诡异w(゚Д゚)w

澳门新萄京官方网站 11

澳门新萄京官方网站 12

澳门新萄京官方网站 13

澳门新萄京官方网站 14

澳门新萄京官方网站 15

澳门新萄京官方网站 16

    安装完成之后我们就可以进行折腾了,有人可能会好奇那如何使用windows上的文件呢?其实windows的目录全部挂载在/mnt这个目录下,我们可以在/mnt/c目录下看到c盘的各种文件。好了,先运行一下screenfetch来看看。

    安装完成之后我们就可以进行折腾了,有人可能会好奇那如何使用windows上的文件呢?其实windows的目录全部挂载在/mnt这个目录下,我们可以在/mnt/c目录下看到c盘的各种文件。好了,先运行一下screenfetch来看看。

    安装完成之后我们就可以进行折腾了,有人可能会好奇那如何使用windows上的文件呢?其实windows的目录全部挂载在/mnt这个目录下,我们可以在/mnt/c目录下看到c盘的各种文件。好了,先运行一下screenfetch来看看。

澳门新萄京官方网站 17

澳门新萄京官方网站 18

澳门新萄京官方网站 19

     作为一个java web developer,常用的大概就是ssh,git,jdk,tomcat,nginx等等。我们一一来测试一下。

    作为一个java web developer,常用的大概就是ssh,git,jdk,tomcat,nginx等等。我们一一来测试一下。

     作为一个java web developer,常用的大概就是ssh,git,jdk,tomcat,nginx等等。我们一一来测试一下。

SSH

SSH

SSH

    我们可以看到ssh远程连接可以正常使用,所以嘛putty或者xshell这种东西可以卸载了(逃

    我们可以看到ssh远程连接可以正常使用,所以嘛putty或者xshell这种东西可以卸载了(逃

    我们可以看到ssh远程连接可以正常使用,所以嘛putty或者xshell这种东西可以卸载了(逃

澳门新萄京官方网站 20

澳门新萄京官方网站 21

澳门新萄京官方网站 22

 Git

 Git

 Git

   git的各种命令也很正常。

  git的各种命令也很正常。

   git的各种命令也很正常。

澳门新萄京官方网站 23

澳门新萄京官方网站 24

澳门新萄京官方网站 25

JDK

JDK

JDK

    接下来测试jdk,我们来编译一小段代码试试看,可以看到jdk也没什么问题。

    接下来测试jdk,我们来编译一小段代码试试看,可以看到jdk也没什么问题。

    接下来测试jdk,我们来编译一小段代码试试看,可以看到jdk也没什么问题。

澳门新萄京官方网站 26

澳门新萄京官方网站 27

澳门新萄京官方网站 28

Tomcat&Nginx

Tomcat&Nginx

Tomcat&Nginx

    我们启动tomcat,然后在Edge浏览器里面访问,便可以看到tomcat的默认首页,是不是很神奇?当然nginx也是没有问题的。

    我们启动tomcat,然后在Edge浏览器里面访问,便可以看到tomcat的默认首页,是不是很神奇?当然nginx也是没有问题的。

    我们启动tomcat,然后在Edge浏览器里面访问,便可以看到tomcat的默认首页,是不是很神奇?当然nginx也是没有问题的。

澳门新萄京官方网站 29

澳门新萄京官方网站 30

澳门新萄京官方网站 31

澳门新萄京官方网站 32

澳门新萄京官方网站 33

澳门新萄京官方网站 34

    另外,gcc和clang经过测试也可以使用,这里就不再展示了。    

    另外,gcc和clang经过测试也可以使用,这里就不再展示了。    

    另外,gcc和clang经过测试也可以使用,这里就不再展示了。    

    据说大神们已经可以在wsl上运行图形化的Linux程序了,这点我没有测试过,有兴趣的小伙伴可以自行折腾。

    据说大神们已经可以在wsl上运行图形化的Linux程序了,这点我没有测试过,有兴趣的小伙伴可以自行折腾。

    据说大神们已经可以在wsl上运行图形化的Linux程序了,这点我没有测试过,有兴趣的小伙伴可以自行折腾。

    那如果我们把wsl里面的环境折腾乱掉怎么办?得益于Windows商店的好处,我们只要卸载并重新在商店下载即可。

    那如果我们把wsl里面的环境折腾乱掉怎么办?得益于Windows商店的好处,我们只要卸载并重新在商店下载即可。

    那如果我们把wsl里面的环境折腾乱掉怎么办?得益于Windows商店的好处,我们只要卸载并重新在商店下载即可。

澳门新萄京官方网站 35

澳门新萄京官方网站 36

澳门新萄京官方网站 37

    最后,我认为wsl对windows平台的开发者绝对是重大利好,一方面,一部分linux上好用的工具也可以在windows平台上使用了,另一方面,在windows上开发好的程序可以直接部署到wsl上测试,这样就能保证开发环境和生产环境尽可能的相似。好了,Enjoy it!

    最后,我认为wsl对windows平台的开发者绝对是重大利好,一方面,一部分linux上好用的工具也可以在windows平台上使用了,另一方面,在windows上开发好的程序可以直接部署到wsl上测试,这样就能保证开发环境和生产环境尽可能的相似。好了,Enjoy it!

    最后,我认为wsl对windows平台的开发者绝对是重大利好,一方面,一部分linux上好用的工具也可以在windows平台上使用了,另一方面,在windows上开发好的程序可以直接部署到wsl上测试,这样就能保证开发环境和生产环境尽可能的相似。好了,Enjoy it!

(btw,贴几个wsl的相关资料,感兴趣的小伙伴自行阅读研究。

(btw,贴几个wsl的相关资料,感兴趣的小伙伴自行阅读研究。

(btw,贴几个wsl的相关资料,感兴趣的小伙伴自行阅读研究。

release notes:

release notes:

release notes:

WSL团队的blog:

WSL团队的blog:

WSL团队的blog:

issue tracker:

issue tracker:

issue tracker:

本文永久更新链接地址:http://www.linuxidc.com/Linux/2017-10/147961.htm

澳门新萄京官方网站 38

本文由澳门新萄京官方网站发布于数据库网络,转载请注明出处:澳门新萄京官方网站的简单介绍及安装

关键词: