Microsoft announces the next version SQL Server for Windows and Linux
techcrunch.com
techcrunch.com
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-...
Will the Linux build come with SSASS capabilities as well?
https://docs.microsoft.com/en-gb/sql/linux/sql-server-linux-...
See my commit here: https://news.ycombinator.com/item?id=12969059
There's a more complete discussion of these here: https://sqlperformance.com/2016/11/sql-server-2016/big-deal-...
Even so, this is an exciting change!
https://www.microsoft.com/en-us/sql-server/sql-server-editio...
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?
Edit: fixed link.
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.
- Direct link to RHEL instructions: https://docs.microsoft.com/en-us/sql/linux/sql-server-linux-...
- Ubuntu: https://docs.microsoft.com/en-us/sql/linux/sql-server-linux-...
- Docker: https://docs.microsoft.com/en-us/sql/linux/sql-server-linux-...
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.
It would be interesting to see how they code for cross platform portability now.
https://twitter.com/TobiasSQL/status/798937457916002304
>The Platform Abstraction Layer (PAL) powering @SQLServer on #Linux evolved from the MSFT Research Drawbridge project
1: http://infocenter.sybase.com/help/index.jsp?topic=/com.sybas...
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.
https://docs.microsoft.com/en-gb/sql/linux/sql-server-linux-...
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)
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-...
> 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
I have it running in Vagrant, in the meantime. Easiest SQL Server install I have ever done.
I would also not assume MS will be supporting Mac servers in production because of the small market share for things like RDBMS hosts.
"Microsoft joined Linux foundation" today: http://venturebeat.com/2016/11/16/microsoft-joins-the-linux-...
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...
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.
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.
NT might be decent but it's not great. Why waste resources on it when they could be put to more lucrative use?
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.
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.
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?
I may aware of tedious, but it's missing a lot of features and I prefer officially supported code.
Get VS Code here: http://code.visualstudio.com/
There are native command line tools as well: https://docs.microsoft.com/en-us/sql/linux/sql-server-linux-...
More to come!
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.
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.