9 ms·
Microsoft announces the next version SQL Server for Windows and Linux
- mmargerum 10y agoHopefully Microsoft will also provide a proper multi platform node.js client as well as ODBC support. I may aware of tedious, but it's missing a lot of features and I prefer officially supported code.
- radtravis 10y agoHi mmargerum - We have a Microsoft engineer contributing to the tedious project now. Let us know what you want to see in our new gitter room: https://gitter.im/mssqldev/Lobby https://gitter.im/mssqldev/Lobby
- mmargerum 10y agoGood to know! thanks
- vkjv 10y agoI'm okay with waiting on features. What I really want in tedious is a significantly faster parser.
- LyalinDotCom 10y agoAs someone who has been working with them on pushing this live for the last 6 months I can tell you, we're all very excited to finally push this public preview
- traskjd 10y agoCongrats Dmitry. My team and I appreciate the work you and your teams have been doing :)
- unixhero 10y agoWow Will the Linux build come with SSASS capabilities as well?
- peschkaj 10y agoIt's just the relational engine for now, no SSIS, SSAS, or SSRS. If you want to see more capabilities on Linux, I'd open a Connect item or search for an existing one and share it back here so people can vote.
- djsumdog 10y agoI signed up early on as I have an old OSS project that supports MySQL/PostgreSQL and MSSQL. I had originally tried to set up a full CI environment using Vagrant, but automating the Windows/SQL part became so much of a pain I gave up on it. I'm really thankful that they released Docker containers!! I was planning on moving the entire CI system to Docker anyway and this totally fits in, plus it's super easy to accept the EULA and run the evaluation container. https://docs.microsoft.com/en-us/sql/linux/sql-server-linux-setup-docker https://docs.microsoft.com/en-us/sql/linux/sql-server-linux-...
- chaz6 10y agoThe linux tools seem to rely on a custom version of unixODBC. There is a binary rpm on the microsoft repo, but no source rpm. This seems to be contrary to the unixODBC license.
- rb808 10y agoI can still remember an old conference when Microsoft bragged that running windows-only allowed them to remove 20-30% of the Sybase code base as they didn't need the cross-platform cruft. It would be interesting to see how they code for cross platform portability now.
- bpye 10y agoProbably some variation of https://github.com/dotnet/coreclr/tree/master/src/pal https://github.com/dotnet/coreclr/tree/master/src/pal . I know it's also used for something else relating to VS but I forget what.
- rb808 10y agoI'm pretty certain its still written in C++ not dotnet.
- tracker1 10y agoIIRC, they have since adopted an OS/FS shim to be able to make porting like this generally easier... that said, there are certainly a lot of edge case features that need to be tested... I'd be surprised if there wasn't an effort to bring an electron based Management Studio for cross-platform usage. Which would be pretty damned cool... The `tedious` package in node, makes it a drop dead simple db to use cross platform... Compared to say the beast that is Oracle, I haven't used db2 from node so can't compare there.
- kbenson 10y agoThat was probably both true, and slightly misleading. I remember a talk on Drizzle (a MySQL fork looking to clean up and streamline the system after Oracle's buy) years ago where they touted similar numbers in code reduction by dropping support for all non POSIX or edge case OS's other than Linux, FreeBSD, and OS X (and that last one might have been added later). That is, they ripped out the HP-UX, AIX, Solaris and Windows specific code (and possibly more). Sybase looked to support a similarly diverse group of operating systems[1], so there were probably a lot of gains to be had even if they didn't remove all POSIX support. 1: http://infocenter.sybase.com/help/index.jsp?topic=/com.sybase.dc74500_1254/html/aserbhp/CHDHDFCI.htm http://infocenter.sybase.com/help/index.jsp?topic=/com.sybas...
- cygned 10y agoMicrosoft has created an apt repository for Ubuntu. That's really nice. https://docs.microsoft.com/en-gb/sql/linux/sql-server-linux-setup-ubuntu https://docs.microsoft.com/en-gb/sql/linux/sql-server-linux-...
- bsharitt 10y agosudo apt install mssql-server felt really weird. Oddly a much nicer install process than the last time I installed MSSQL server on Windows(which was admittedly a log time ago, and it could be better now).
- snuxoll 10y agoInstalling SQL Server on Windows still sucks, though with your CM tool of choice it's less painful (still takes a flipping century to install, however).
- bsharitt 10y agoI had it installed and running in a couple of minutes. The wait is what I remember being the worst on Windows. apt was quick and painless though.
- bebop 10y agoSQL Server 2016 on Windows 10 was fairly one click install when I did it a week or so ago. It was infinitely better than my experience with SQL Server 2012, which was a struggle at the best of times.
- fetbaffe 10y agoSo I can install with apt-get in WSL on Windows instead of using the normal Windows installer? Full circle.
- sp332 10y agoFunny, but I'm not sure it would actually work. Sockets are not fully supported on WSL - for example, you can't run an SSH server.
- baq 10y agoi'm in desperate need of a Dockerfile for this so i can see it with my own eyes.
- bjg 10y agohttps://www.microsoft.com/en-us/sql-server/sql-server-vnext-including-Linux#resources https://www.microsoft.com/en-us/sql-server/sql-server-vnext-... https://hub.docker.com/r/microsoft/mssql-server-linux/ https://hub.docker.com/r/microsoft/mssql-server-linux/
- ohstopitu 10y agoThanks! I wanted to checkout the Dockerfile for the container but by the looks of it, it was not published?
- y4mi 10y agothe dockerfile on dockerhub is only visible if its an automated build, done by the docker build service. if you want the image to be auditable just write your own, its a really short and well documented installation that previous poster linked to.
- gokhan 10y agoLooks like there are some (most?) unsupported features external to core DB engine ATM (replication, mirroring, agent, SSIS etc. ), but documentation says "The support of these features will be increasingly enabled during the monthly updates cadence of the preview program". Nice. https://docs.microsoft.com/en-gb/sql/linux/sql-server-linux-release-notes https://docs.microsoft.com/en-gb/sql/linux/sql-server-linux-...
- netcraft 10y agono announcement of support for mssqlstudio on other platforms yet though right? still, this is excellent - I love my postgres but having mssql on linux is a great option.
- radtravis 10y agoWe did announce today that there is a new extension for Visual Studio Code which is cross-platform: macOS, Linux, Windows. Check it out: https://marketplace.visualstudio.com/items?itemName=ms-mssql.mssql https://marketplace.visualstudio.com/items?itemName=ms-mssql... Get VS Code here: http://code.visualstudio.com/ http://code.visualstudio.com/ There are native command line tools as well: https://docs.microsoft.com/en-us/sql/linux/sql-server-linux-setup-tools https://docs.microsoft.com/en-us/sql/linux/sql-server-linux-... More to come!
- netcraft 10y agovery cool, I missed that. Not quite the same as studio but great nonetheless!
- hjek 10y agoIs it released under a free/libre license?
- tracker1 10y agoIt's commercial, privately licensed software... that said, the out of the box defaults for MSSQL perform better than most databases, with features far easier to configure. I've been hoping for this for a long while... much better for most use cases than Oracle.
- PeCaN 10y agoWhy would it be?
- teilo 10y agoIt's currently on a 180 day eval, so no.
- rch 10y ago> all SQL Server users — including those using free edition — will now get access to the developer features that were previously restricted to the Enterprise edition. This aspect is interesting. What I haven't done since all of these open source and cross-platform moves by Microsoft is go back and figure out how tech costs scale with user growth (starting from 0). It used to be no contest (initially), but I'm not sure anymore.
- jamra 10y agoI'm not sure what it means. Do you have no restrictions on developer tools only or do they remove the 10GB database size restriction for SQL Server Express, the free version.
- dhd415 10y agoLots of previously Enterprise Edition-only features such as table partitioning and data compression are now available in Standard, Web, and local editions. This is a pretty big deal. More detail here: https://sqlperformance.com/2016/11/sql-server-2016/big-deal-sp1 https://sqlperformance.com/2016/11/sql-server-2016/big-deal-...
- nailer 10y agoSince https://www.microsoft.com/en-us/evalcenter/evaluate-sql-server-vnext-ctp https://www.microsoft.com/en-us/evalcenter/evaluate-sql-serv... is still focused on downloading ISO and cab files for Windows: - Direct link to RHEL instructions: https://docs.microsoft.com/en-us/sql/linux/sql-server-linux-setup-red-hat https://docs.microsoft.com/en-us/sql/linux/sql-server-linux-... - Ubuntu: https://docs.microsoft.com/en-us/sql/linux/sql-server-linux-setup-ubuntu https://docs.microsoft.com/en-us/sql/linux/sql-server-linux-... - Docker: https://docs.microsoft.com/en-us/sql/linux/sql-server-linux-setup-docker https://docs.microsoft.com/en-us/sql/linux/sql-server-linux-...
- emcrazyone 10y agoI've not looked at MS-SQL in a long time. My business ships software using PostgreSQL. Does anyone have, in their opinion, compelling reasons why one should consider MS-SQL on Linux for either a new project or potential migrating too? Consider too, PostgreSQL runs under Windows as a service too. What does MS-SQL have that PostgreSQL does not?
- samch 10y agoThere will undoubtably be a number of good responses here to your question, but I'd like to share my opinion. For me, the answer comes down to tooling. I make frequent use of Integration Services, Reporting Services, the Server Agent, Profiler, and other services I'm not remembering at the moment. In my mind, SQL Server represents an ecosystem of tools and services that are simply part of the package (no additional cost) and are fully supported and integrated as part of a comprehensive suite.
- bsg75 10y agoIf they ported query parallelism across CPU cores as base MSSQL on Windows has, that would be a significant differentiator for those in the DWH / analytics space. Its also likely this is a attempt to keep customers on the MSSQL platform who otherwise don't have a need for a commercial OS, and may be willing to keep paying for MSSQL while cutting their OS expenses.
- JimmyAustin 10y agoPostgres added query parallelism in 9.6!
- bsg75 10y agoCorrect, but for a limited set of query plans. It does mean progress is being made however.
- dhd415 10y agoI love pgsql and it has some features that SQL Server does not, but SQL Server also has a range of features that pgsql does not including index-organized tables, automatically-updated materialized views, much more mature support for query parallelization, etc. Lots of the discussion in this older thread is still relevant: https://news.ycombinator.com/item?id=9464505 https://news.ycombinator.com/item?id=9464505 Edit: fixed link.
- wila 10y agoThis is great news and I am looking forward to be able to use MSSQL from within linux and macOS. Hopefully the client support is going to be cross platform too. The one thing in the article that puzzled me is: Thanks to its support for Docker containers, even macOS users will be able to run it. Indeed, Microsoft is betting on containers as one of the main distribution mechanisms for the preview Wasn't there a golden rule to not store persistent data in a container? I can see it being useful for testing, but am wondering if this is going to be suggested for deployment as well. Of course one can locate the database on external block storage, but that makes it less easy to support due to having multiple parts. (not that that is a very big issue)
- bsg75 10y agoI would assume that the Mac version is not intended to be a production server, but a convenience for developers. I would also not assume MS will be supporting Mac servers in production because of the small market share for things like RDBMS hosts.
- vkjv 10y ago> Wasn't there a golden rule to not store persistent data in a container? You shouldn't store persistent data in the container. However, you can mount external storage and read/write to it from inside the container. The most simple example of this is mapping a path from the host. EDIT: In fact, the MS documentation gives an example of exactly this. https://docs.microsoft.com/en-us/sql/linux/sql-server-linux-setup-docker https://docs.microsoft.com/en-us/sql/linux/sql-server-linux-... > sudo docker run –e 'ACCEPT_EULA=Y' –e 'SA_PASSWORD=<YourStrong!Passw0rd>' -p 1433:1433 -v <host directory>:/var/opt/mssql -d microsoft/mssql-server-linux
- wila 10y agointeresting, thanks!
- teilo 10y agoIt does not persist data. It requires shared volume support for that, and they are not currently supporting shared volumes on macOS, which makes this, for all practical purposes, useless on a Mac. I have it running in Vagrant, in the meantime. Easiest SQL Server install I have ever done.
- antaviana 10y agoWhere is the information on the change in pricing structure mentioned in the article?
- tmullaney 10y agoThe changes are in SQL Server 2016 Service Pack 1 (released today): https://blogs.technet.microsoft.com/dataplatforminsider/2016/11/16/sql-server-2016-service-pack-1-generally-available/ https://blogs.technet.microsoft.com/dataplatforminsider/2016...
- logronoide 10y agoRolling all commits back to 1994
- alyandon 10y agoIs there a ELIF type link for licensing that explains what we are allowed to do with this on Linux? Can I use it for development work on a company owned workstation?
- greggyb 10y agoI'd imagine you can just use a free (as in beer) developer license for SQL Server work on Linux, just as you can on Windows. SQL Server licensing is only really charged on production instances.
- edpichler 10y agoMicrosoft should have his own Linux version, supported by the company. It will be inevitable.
- TazeTSchnitzel 10y agoMaybe they'll clone RHEL like Oracle did.
- edpichler 10y agoI received down votes with my serious comment. "Microsoft joined Linux foundation" today: http://venturebeat.com/2016/11/16/microsoft-joins-the-linux-foundation-as-a-platinum-member/ http://venturebeat.com/2016/11/16/microsoft-joins-the-linux-...
- jlgaddis 10y agoInstead of that, I can see them partnering up with Red Hat (and/or Canonical) to handle it. All of Microsoft's "<foo>-on-Linux" offering (i.e. SQL Server, .NET, etc.) will be officially supported on RHEL (and/or Ubuntu), just like many other enterprise-type products today are officially supported only on RHEL.
- TheRealDunkirk 10y agoThe only point of offering it would be to support running desktop applications on it, like Word and Excel, no? And that's such a stretch that all the versions of Wine still haven't solved the problem, even after 20 years. At this point, if Apple really wanted to scrape another percentage of desktop users away from Microsoft, THEY could release an unsupported, white-box version of the BSD-based macOS for generic PC hardware, which would run all normal macOS binaries, like Word and Excel. It would go a long way to shoring up the gap in their lagging "pro" line...
- pritambaral 10y ago> all the versions of Wine still haven't solved the problem, even after 20 years. Wine isn't Microsoft, and doesn't have access to Windows internal code. If Microsoft decided to write a Windows compatibility layer for non-Windows OSes, it wouldn't have to reverse-engineer. That is an immense difference in terms of amount of effort.
- habaryu 10y agoThanks! As of yesterday I was looking to find a way to install it on Ubuntu. I finally chose to use TeamViewer on my home PC but my database didn't connect. I'll try this instead.
- jcoffland 10y agoMicrosoft has really adopted an if-you-can't-beat-em-join-em attitude these days. There were times when Microsoft and Linux were at such odds that an announcement like this seemed impossible. The next smart move I'd love to see from Microsoft is similar to Apple's adoption of BSD as their base OS with the introduction of OSX, an adoption of Linux as the base Microsoft OS. They could stop wasting money on systems programming and focus on the UI and apps which is where they make their money anyway. Wine has come a long way with Microsoft's direct help it could support all of the existing Microsoft apps.
- laumars 10y agoNT is decent. It's a lot of the stuff that runs atop of it which is garbage and WINE is nowhere near stable enough to be a viable replacement.
- jcoffland 10y agoLike I said, with Microsoft's help Wine could be awesome. NT might be decent but it's not great. Why waste resources on it when they could be put to more lucrative use?
- nxc18 10y agoAny evidence here? NT does a lot of things right. I also know that I do not look forward to a world with only one dominant desktop/server OS kernel. We need competition here and Microsoft adopting Linux would ruin that.
- laumars 10y agoBecause NT, as in modern NT, is pretty damn sophisticated. Switching to Linux really wouldn't be a step up for Microsoft. As I said before, it's the crap that's been bolted on that really makes Windows feel like a dinosaur. It's the decades - literally decades - of backwards comparability, the lack of a proper package management system and the free reign that developers gets that makes Windows a mess. It's the multiple shells that try to coexist or the feature bloat of pass releases or even Microsofts past tendency to reinvent the desktop every few years rather than introduce incremental improvements. This is all issues independent of the kernel, syscalls etc - i.e. All issues Microsoft would have to address regardless of which core they chose to run. So switching to Linux wouldn't help them. If anything it would just make things worse because they would forgo the stable graphics ABIs in NT for the uncertainty that is Linuxes display server wars. They'd forgo their stable Win32 APIs and other libraries for WINE. They'd have to reinvent DirectX - who's support in WINE is several generations behind - and have to battle with the appalling state of Linuxes graphics card drivers. And that's just scratching the surface of the problems they'd face. I do love Linux and find Windows to be a hateful platform, but pragmatically Windows switching away from NT would be the dumbest thing Microsoft could do. NT simply isn't an issue.
- boona 10y ago> These include advanced features like always-encrypted and row-level security Am I the only one who reads this in their mind as "low-level security" but with an asian accent? Forgive me, please ignore me.
- jrspence 10y agoThis doesn't seem to be a bona fide port to Linux. The sqlservr binary seems to load some .sfp files in the lib directory of the installation, and those files seem to include a good chunk of a Windows installation. There's registry hives, batch commands, and what look like PE64 executables in there.
- haneefmubarak 10y agoIIRC for performance, the SQL team essentially built their own OS layer on top and only used raw APIs or something.
- simooooo 10y agoWho cares? If it works on Linux and works well they can put their favourite Gifs inside for all I care
- int_19h 10y agoMSSQL is basically an OS of its own, and does a lot of things in its sandbox that you'd normally expect OS to provide (like really low-level memory management and I/O, and I think even threading is heavily customized) - and that's on Windows. So it wouldn't be surprising if that is the case on Linux also.
- m_st 10y agoThe bigger news and unfortunatly hidden behind an innocent blog title about SP1 for SQL Server 2016 is that now all the features of Enterprise Edition are available on all editions of SQL Server! See my commit here: https://news.ycombinator.com/item?id=12969059 https://news.ycombinator.com/item?id=12969059
- joshyeager 10y agoNot quite all features. AlwaysOn Availability Groups is still limited to two hosts in Standard, and Standard still doesn't have Transparent Database Encryption. Even so, this is an exciting change! https://www.microsoft.com/en-us/sql-server/sql-server-editions https://www.microsoft.com/en-us/sql-server/sql-server-editio...
- deleted 10y ago[deleted]
- dhd415 10y agoThey haven't made all of the Enterprise Edition features available on all lower editions, but they have made many big ones such as table partitioning, Always Encrypted, in-memory OLTP, etc. available in most lower editions. There are a number of operational features such as piecemeal restores, Resource Governor, online index rebuilds, etc. that are still exclusive to Enterprise Edition. There's a more complete discussion of these here: https://sqlperformance.com/2016/11/sql-server-2016/big-deal-sp1 https://sqlperformance.com/2016/11/sql-server-2016/big-deal-...
- cuttinedg 10y agoA basic Vagrantfile that will get this going in Ubuntu https://github.com/mbharadwaj/sqlserver-linux-vagrant https://github.com/mbharadwaj/sqlserver-linux-vagrant
- rbanffy 10y agoApart from reducing OS bingo (no need to deploy Windows to run SQL Server alongside whatever non-Windows OS you use to run your apps on), what is the selling point? I assume it runs on x86 processors. If I do everything wrong and end up needing a ridiculously powerful machine I can check IBM's POWER-based boxes or Oracle's SPARC machines that run MySQL or PostgreSQL (or Mongo or anything else) and scale vertically well beyond the largest Xeon boxes. But those won't run SQL Server. Being that the case, why not Windows?
- jpalomaki 10y agoWindows licenses cost. Also if you are running your other stuff completely on Linux, having to setup Windows boxes just for the SQL Server can be bit inconvenient. I see this as a companion to the multiplatform .NET. Now you can run a Microsoft shop without running Windows.
- otto_ortega 10y agoI like SQL Server a lot, I wish I could use it on production over Centos, but the price of the licenses... Oh boy... I can't afford that.
- thx4thefish 10y agoSo how do I add a sql server instance in a container with an average of 300 million rows per table and a db of average size of maybe 3 tb and not have io issues? Containers do not seem to scale to enterprise besides nosql type operations of let's commit later.