
Announcing SQL Server on Linux - bjg
https://blogs.microsoft.com/blog/2016/03/07/announcing-sql-server-on-linux/
======
sixdimensional
I for one am excited to hear about this move and was wondering if it would
ever happen. This will help keep SQL Server alive and growing (I think) and
who knows, maybe bits and pieces will even become open source some day (that's
optimistic perhaps).

I am an equal opportunity consumer of database technology - something we all
should be (e.g. use the right tool for the job when appropriate). I have used
MANY different databases, open source and commercial, and there are better
ones and worse ones across the spectrum. I think it is naive to criticize this
move in any way - it is giving more choice so should be supported.

That said, SQL Server has a low barrier to entry, a very good implementation
of the SQL language, an advanced optimizer, strong storage engine, management
tools and a lot of nice BI features. Although you don't hear about it much,
SQL Server also has Parallel Data Warehouse (PDW) which is their MPP database
- ironically which used to be built using Ingres and Java of all things.

In my experience, SQL Server <-> PostgreSQL is the closest commercial to open
source comparison (core database engine-wise) I can think of. This makes sense
when you consider - both of them started as Ingres! Of course, Postgres and
SQL Server have totally different user experiences (database management,
tooling, etc.) and many different features.

~~~
lololomg
Would you yourself actually choose SQL Server on Linux for a project?

I'm a big fan of SQL Server but the main thing that hurts it is the cost.
Licensing our two servers today would cost a quarter of a million dollars. The
OS cost is a rounding error. If I'm paying that much money for SQL Server I
don't think I'd choose the Linux version for at least another 5 years from
now. It needs to prove itself and there's almost no benefit to offset the
risk.

~~~
niutech
I would never use MS SQL Server unless it is open source. Otherwise you get
into vendor lock-in. Microsoft is cunning - they want to tie Linux-based
businesses to their (expensive) products for good. But fortunately there is a
viable open source alternative - PostgreSQL. [http://www.pg-versus-
ms.com](http://www.pg-versus-ms.com)

~~~
philjackson
Out of curiosity, how does OSS prevent vendor lock-in? Are you talking more in
terms of support?

~~~
cies
Anyone can support the OSS product to utmost level by studying the source code
(and possibly fixing/modifying it).

> Are you talking more in terms of support?

Support is not tied to the product's license (which is common for proprietary
software).

~~~
drdaeman
The sad truth is that "anyone can" is frequently still "nobody did, so you're
on your own". This well applies to even the most popular pieces of FLOSS.

That's still significantly better than "noone but a single vendor can and
you're at their mercy", but just being FLOSS doesn't mean it can't suffer from
product lock-in, just that with the hurdle being complexity and not copyright.

~~~
EdHominem
There's always friction, yes, but rarely a lock or you'd simply go into the
code and remove it.

Natural complexity, when the domain is simply complex to model, can't be
gotten rid of regardless of the product.

~~~
drdaeman
Ah, the lock is not something that check the license and tells "oh no you're
not allowed". It's a combination of not having something, and complexity to
add it. Sometimes, that's because you need something tricky. Sometimes, that's
because the project lacks any documentation, is written in a pretty low-level
(verbose) language that obscures the high-level picture, and it's hard to
figure out how it works. Sometimes, that's because FLOSS != KISS, and there is
a lot of FLOSS software that has its own unique proprietary protocols and data
formats, and does things in a manner that's completely incompatible and non-
interoperable with any other system. I have no clue about MySQL or PostgreSQL
internals (actually, I heard a word they're good in this regard), but is the
case for various FLOSS projects - I've dug into some and cursed their
developers.

If you overcame that and made a patch, but it's not accepted by the upstream -
there are maintenance costs. How long would you be able to maintain your own
fork of a large software project, keeping up with the upstream? I've tried
with a few small ones (say, at a small ISP company, I just needed some custom
pppd patches for in-house billing logic), and found it to be not a pleasant
experience. I believe it's not just because I'm a lazy ass - I saw tons of
forks on GitHub that were slowly rotting away, maintained for some time but
eventually forsaken by their authors and far behind their upstreams.

~~~
EdHominem
That's what a _lock_ is - something intentional. Everything else is natural
complexity. Nobody made their code complex because they felt like it.

> If you overcame that and made a patch, but it's not accepted by the upstream

As for how well the FLOSS projects are managed, how's your luck at debugging
let alone getting a patch accepted in MS-SQL, for instance?

> I saw tons of forks on GitHub that were slowly rotting away

I saw people with food, who weren't eating it because they were full, and I
decided that food was stupid. Right?

> How long would you be able to maintain your own fork of a large software
> project, keeping up with the upstream?

Far longer than a binary patch... You know, to block a certain cipher suite or
something in a closed-source product.

~~~
drdaeman
> how's your luck at debugging let alone getting a patch accepted in MS-SQL,
> for instance?

Duh, none or nearly none, of course.

I'm not saying that proprietary binary blobs are better. There are exceptions,
but generally they're significantly worse in this regard.

I'm only saying that just because software is FLOSS doesn't mean one can
successfully hack on it and adapt it to their needs, or easily migrate to
other FLOSS solutions. Sometimes, they'll be stuck for a while - I think
that's also can be considered as a lock-in.

> Nobody made their code complex because they felt like it.

Maybe. But there's a term "over-engineering" too. It's not that someone
decides to make things unnecessarily complex, but sometimes they really do.

------
fideloper
I work on a software product that supports MySQL, PgSQL and SqlServer (if they
run it on Windows, since we only support the official Windows PHP drivers).

SqlServer has always been the best performing and least troublesome database
in terms of weird edge cases, backup, restoration, and (especially!)
performing expensive SELECTS on databases that have grown into the 100's of
Gigabytes in size.

Based on my experience, for all the (often deserved) hate on M$, SqlServer is
really a shining star.

That being said, I am a little scared to support SqlServer on Linux, as I
imagine it will have to be different in quite some potentially fundamental
ways to work on Linux - I'd love to hear if anyone has opinions on that
aspect.

~~~
nickpeterson
Keep in mind that SQL Server basically runs on top of it's own conception of
an operation system even when installed on Windows. It's called SQLOS and the
work done on that was probably what largely enabled this to happen because
there was already an existing layer of abstraction in place for development to
use.

That said, I think that this will probably come with a large amount of
caveats, for instance, I wouldn't be surprised if when it launches it's just
the core SQL engine and not the extra pieces (SSIS,SSAS,SSRS,MDS, et cetera).

~~~
copperx
> Keep in mind that SQL Server basically runs on top of it's own conception of
> an operation system even when installed on Windows.

What is the reason for this?

~~~
danbruc
An operating system is usually optimized to perform well for a large variety
of workloads. Databases have a very specific workload and there are some
possible (performance) optimizations if you, for example, bypass the operating
system file caching and prefetching facilities and roll your own. Or if you
control the scheduling of your operations. Take this with a grain of salt, it
has been some time since I read about SQL Server internals, but this is what I
remember.

~~~
vram22
>bypass the operating system file caching

Using raw partitions instead of file system files for database storage was
common practice with Oracle and other DBs at one time. Not checked lately.

~~~
darkr
db2 used to support/recommend raw block devices (this was ~8 years ago). I
believe nowadays they are recommending using regular filesystems again.

~~~
vram22
Good to know.

------
blinkingled
From [http://www.zdnet.com/article/microsoft-is-porting-sql-
server...](http://www.zdnet.com/article/microsoft-is-porting-sql-server-to-
linux/) -

"The spokesperson also acknowledged that Microsoft won't be bringing all of
the same capabilities in SQL Server 2016 to Linux; it will be just the "core
relational database capabilities."

As somewhat expected this will be a limited release catering mostly to cloud
customers (Azure in particular) - who knows down the road they will port all
features to Linux including the UI management tools but I would be surprised
if they don't keep the niche features Windows-only.

Welcome announcement anyway - having a supported mainstream DB other than
Oracle on Linux is a good thing.

~~~
kbenson
> I would be surprised if they don't keep the niche features Windows-only.

For some definition of niche, which in this case may very well include
"enterprise class features" such as replication...

This is a way for MS to increase exposure and draw people into their ecosystem
(at least for a part of their infrastructure) in an increasingly OS agnostic
world. I don't think it makes sense for them to cannibalize their current
revenue sources to do so, and a part of that is requiring expensive Windows
Server licenses for high-end MSSQL features.

~~~
blinkingled
Yeah, replication, encryption, memory optimized tables, search etc. come to
mind.

------
tomschlick
I would never use SQL server willingly but I really like the direction
Microsoft is taking lately. They are a software company and restricting their
software to PCs running Windows only doesn't make sense.

~~~
TheOsiris
ms sql is better than mysql. downvote me all you want, but you can't possibly
disagree if you've tried both like I have. transaction isolation anyone?

don't have much experience with postgres, but my money is still on mssql

~~~
jimktrains2
PostgreSQL is pretty amazing. MySQL isn't even in the same league as
PostgreSQL. I'm sure MSSQL is nice, but my money is on PostgreSQL being even
nicer.

[http://www.pg-versus-ms.com/](http://www.pg-versus-ms.com/)

[https://www.reddit.com/r/programming/comments/2mhpwp/postgre...](https://www.reddit.com/r/programming/comments/2mhpwp/postgresql_vs_ms_sql_server_a_comparison_of_two/)

MySQL is hardly a relational database, it's not quite the benchmark you're
looking for.

~~~
cptskippy
_I 'm sure MSSQL is nice, but my money is on PostgreSQL being even nicer._

Having used both, I'd take that bet. MSSQL is in my opinion the best DB out
there in terms of ease of use, documentation, integration, and tools.
PostgreSQL is a distant second, and SQLite is probably a distant 3rd (though
it's really not in the same category).

~~~
mozumder
Does MS-SQL have anything like PostGres' Bidirectional replication?

Also, Postgres is missing multiple result sets, which Sql Server seems to
have, right?

~~~
tracker1
I'm not as familiar with later versions of MS-SQL, but it's replication story
is well in the box... Postgres is a bolted on, hard to setup/maintain hodge
podge... I really hope the out of the box, via a gui admin and all story for
replication on postgres gets to where MS-SQL was in the box in 2005.

NOTE: this is not a bash or nag on postgres, I really like it's JSON
integration, and plv8 is awesome. That said, even simple replication stories
in pgsql have me pulling my hair out, mainly because I don't _WANT_ to know
every intricate detail about my dbms, I just want to build applications on top
of it, and ms-sql is pretty nice in that regard.

~~~
cptskippy
Admittedly I've never used the replication in Postgres but that surprises me.
I don't think I had the opportunity to use replication in MSSQL 2005 but it
was pretty awful 2003 and pretty terrific in 2008 so I guess it was fixed
somewhere in between.

------
rocky1138
It's taken a ton of years, but here we are:

"If Microsoft ever does applications for Linux it means I've won." -Linus
Torvalds

~~~
serge2k
Everyone already knew linux for servers is winning.

~~~
NeutronBoy
Outside of Silicon Valley, it's not so cut and dry.

~~~
kristopolous
Could you take a more nuanced and defined stance? What sectors, markets, or
users are you referring to?

~~~
UK-AL
Virtually any major corporation will have major installations of AD, File
Servers, Print Servers, etc using MS infrastructure.

------
PedroBatista
For years I told my boss: "I'd love to use SQL Server like you suggested, but
it doesn't run on Linux".

Now I'm finished.

------
intermerda
Can someone tell me why I would want to use SQL Server when there are so many
robust and free RDBMS available on Linux?

~~~
sz4kerto
Reverse your thinking. Think of a business that's dependent on MSSQL -- now
they can run in on Linux, and also, they won't need to think about DB server
migration. Many businesses are gravitating towards Linux on the server for
many reasons, but they don't necessarily want to change their DB technology.

In other words: MS isn't just trying to acquire new users, it tries to keep
existing ones.

~~~
merpnderp
This 10x. We're a very large consumer of MS licenses, and even so, we're
pushing out to Linux where we can. And of all the MS technologies we use, the
one we'd never give up is MSSQL.

I'm really happy to see this.

~~~
mmargerum
I couldn't agree more here. SQL Server is the only server product from MS I
won't move off. I'm running an MS server only to run SQL Server. I would love
to use a linux instance.

------
Analemma_
I'm genuinely worried now. I'll have to thumb through the Book of Revelation
again, but I'm pretty sure MSSQL on Linux and Donald Trump possibly becoming
the next President are two of the four Horsemen of the Apocalypse.

~~~
sdegutis
Until Microsoft changes its licensing model so that it's not ridiculously
expensive, I'll still keep preferring free software over their stuff. But
that's something they'll _never_ do.

~~~
Moto7451
It's all about finding the right tool for the job. For most, this audience
especially, open source relational databases are the way to go. For a lot of
big business and government jobs, Oracle and Microsoft are the way to go and
having your preferred ops environment makes a big difference. At my first job
we had to maintain an Oracle DB connection to pull data directly from the City
of Los Angeles. At the end of the day we were out of business without that so
we didn't really debate the merits of using it. That job happened to be a
Windows shop anyway (most of the company were CAD artists using Architecture
software) so it didn't phase the IT ops team.

On the other hand, at my current job I've been in charge of some search tech
that's Windows only and being the lone Windows user has been a bit painful. We
liked the results it gave us but recently developed our own algorithms on top
of ElasticSearch so we didn't have to deal with Windows anymore. The Dev work
to switch was more than the cost saved on the license for the old software, so
this wasn't a case of open source saving is money on the solution
implementation. We really just didn't want to focus on Windows Dev ops. I
think this is the concern the SQL Server team had and why they're supporting
Linux, especially in Microsoft's increasingly Azure focused world.

~~~
creshal
Paying for a tool that does the job is one thing. But SQL Server's licensing
scheme is so fucked up that I see companies building custom servers for the
sole purpose of gaming it (extremely low core count and high clock rates).
That shouldn't be the goal of software licensing

~~~
Moto7451
I don't think that's really gaming the license. If a fast two core system fits
your needs then you only need the two core license. MS is happy to sell those
to you all day long. If you have a serious load and SQL Server is key to your
business you're likely to have better things to do than try to micromanage
your server architecture to save a few dollars. If you're in a position where
SQL Server, Oracle, or any other specialized commercial DB is a major cost and
you're not seeing a positive ROI, messing with core counts v.s. clock speed is
probably a poorer use of time than switching to Postgres or MySQL.

------
dhd415
I'm very interested to hear some of the details about how the storage engine
was ported to Linux. One of the advantages of SQL Server was how well it
exploited the Windows overlapped I/O model for disk access. When running large
selects, backups, or restores, SQL Server always uses the full bandwidth of my
disk subsystem. When I built a prototype of my application on PostgreSQL
(which I would much rather run for its free licenses and more mature
indexing), I had to tweak all kinds of things to get it to use the full
bandwidth of my disk system and I was not always successful.

~~~
ajross
The space of applications for which storage bandwidth is a limit on
performance but where the overall scale is appropriate for a SQL RDBMS is
shrinking every year. Is this even a meaningful niche?

Basically, [http://yourdatafitsinram.com/](http://yourdatafitsinram.com/)

------
Symbiote
For anyone unaware, SQL Server is a 'fork' of Sybase after an agreement
between Sybase and Microsoft ended in 1993. At that point, "Sybase SQL Server
version 4.2 and Microsoft SQL Server are identical."

Sybase runs happily on Unix, Linux or Windows.

[https://en.wikipedia.org/wiki/Sybase](https://en.wikipedia.org/wiki/Sybase)

~~~
protomyth
Sybase has not kept their end up to what Microsoft has been pushing in SQL
Server. Transact-SQL is nicer on SQL Server and the last time I used Sybase
the query planner was problematic to the point of needed to force loads of
indexes.

~~~
yread
I second that, we had to run a medium sized application on FusionIO cards
because Sybase was just terrible at query optimization

~~~
protomyth
We did a lot of monitoring and index forcing. We queried the system tables and
go the current query plan for the statements running. We were already on one
of the biggest boxes HP built (Superdome) with some fun fast storage for the
db.

------
jenkstom
I've used a lot of databases over the past 25 years. From DBase flat files to
the Borland Database Engine to MSSQL (pre and post 2K), Interbase / Firebird,
DB2, PostgreSQL, MySql/MariaDb, Sqlite and more. I haven't used MSSQL in a few
years and had to dive back into it for an integration project. Oh my, I forgot
how user unfriendly it is.

I can't call a stored procedure from a select query? Ok, write a user-defined
wrapper function. Oh wait, I can't call a stored procedure from there either.
Now I know why the consultants use a VBA script in Excel to load data... it's
actually the easiest way, ridiculously convoluted as it is, if your logic is
implemented as stored procedures.

I remember the first time I wrote a stored procedure in PostgreSQL. It was the
point at which I decided I would never willingly choose MSSQL for a project
again. If you write a lot of stored procedures / TSQL in MS SQL Server, do
yourself a favor and check out how it is done in PostgreSQL. It's an order of
magnitude simpler and saner.

------
epx
Time to invite that girl again for a date (that one that said that hell would
freeze before she would accept my invitation).

------
hoodoof
Errr, how exactly does this work? What's the underlying technology that makes
it possible?

~~~
jnevill
I'd like to know more about this too. Data storage and retrieval is such an
important and integral part of an RDBMS and the switch to Linux suggests that
they've had to tear up a lot of their low-level logic. How well they've done
optimizing storage for EXT3/EXT4 seems to be pretty important. It would be
interesting to see what's changed and how they managed this.

~~~
oblio
If past Microsoft is any reference, most of the software is cross platform. It
is designed from the start to be cross platform. It's just that they never
bothered to actually port it to anything other than Windows.

Of course, bits and pieces might be tied to a platform and the dependency
chain might drag other parts down, but overall Windows, Office, etc. generally
have some sort of abstraction at the lower level that could theoretically
allow porting to any platform.

~~~
jnevill
That's my concern though. When you look at other enterprise-sized RDBMS you
find tight integration at the "machine" level. Oracle's storage, for instance,
uses "Blocks" which are sized based on the block size of the disk they are
writing to. This tight integration at such a low level is part of what makes
these RDBMS's fast. I would imagine that instead of running on an abstract
layer that can be commonly built across many OS's that an RDBMS like Sql
Server would be more tightly integrated with the machine they are running on
in order to maximize performance and disk space. If so, I would really love to
dig through what that means for SQL server.

~~~
telotortium
Might that not imply that the implementation is relatively little tied to a
particular OS? Taking your example, as long as there's a way to get the block
size for a disk, there's not much more OS-specific code to deal with -- in
particular, adapting your code to the file system doesn't need to be done
since the DB will essentially create its own anyway. Similarly, only a few
threading primitives need to be used -- the DB isn't going to tie itself
heavily to the vagaries of the async IO implementation, which does tend to
differ heavily and pervasively between platforms.

------
rbanffy
The three best Microsoft products are their natural keyboard, the mice and SQL
Server. Now all of them work with my OS.

~~~
simoncion
> The three best Microsoft products are their natural keyboard...

The Natural Keyboards [0] have been getting less and less durable as the years
go by. My first one lasted for ~five years. My second, two or three. My third
is less than a year old and _already_ suffering from intermittent failure to
register keypresses, as well as _surprisingly_ rapid breakdown of the faux
leather material that covers the bottom portion of the keyboard. (The faux
leather breakdown is a _first_ for me... all the other keyboards suffered
mechanical failure long before I saw _any_ sort of wear on the bottom portion
material.)

[0] Specifically, the MSFT Natural Ergonomic Keyboard X000 models that have
the stupid, useless zoom slider.

~~~
rbanffy
I said they are the best, not that they are still very good ;-)

But I agree with you. My next one will be a kinesis.

~~~
simoncion
> ...they are the best, not that they are still very good...

And I agree with you on both counts. :D

Are you thinking about one of the models with the bowl curves for the keys? If
you are, have you typed on one? If you did, what did you think of it?

~~~
rbanffy
I did, and it's wonderful.

It's tough to adjust back to a laptop keyboard, however. And switching
regularly may create new tissue in your cerebellum.

------
gargravarr
I never thought I'd see this happen, but it turns out to be quite a pleasant
surprise. I know it's already possible to run ASP.Net on Linux via Apache, so
this is the next logical step.

I'm quite impressed by the possibility of running SQL Server on Linux; as a
T-SQL developer immediately out of university, I have come to appreciate its
speed and efficiency. It's not perfect and it does have its annoying quirks,
but in general it's quite a sturdy RDBMS. MySQL has demonstrated some much
more WTF-y quirks (try inserting a varchar into an int column!) and there are
places I prefer T-SQL syntax (e.g. temp tables). Management tools don't really
factor into it, you can get third-party tools that support intellisense etc.
on different RDBMSs. In short, I would have few reservations about using SQL
Server for my own projects (since I run exclusively Linux at home).

Licensing is another story though; I dread to think how much it'll cost, but
this is a pretty amazing step in the right direction, adding to a recent
history of such steps, for Microsoft.

------
Corrado
The first thing that comes to mind with this announcement is about SQLServer
drivers for non-Windows platforms. Years ago, it was all but impossible to
talk to "DataCenter" SQLServer from anything but Windows. Apparently, the
connection URI was a configuration endpoint and the driver was responsible for
switching between active masters. This meant that a simple ODBC driver
wouldn't work as there was no real endpoint to connect to. A real Linux driver
would be great; an open source one would be outstanding!

NOTE: This type of thing is what made me hate Microsoft for so long, and even
today I find it difficult to recommend them as a solution provider for
anything, on any platform. So, while I'm trying to give them the benefit of
the doubt, I'll continue working to move everything I can, including
databases, to another platform.

------
ape4
Seems quite insular to call it just "SQL Server". We already have Postgres SQL
Server, MySql SQL Server, etc. They should call it "Microsoft SQL Server".

~~~
kyberias
They do but they also seem to own the trademark to "SQL Server":

[https://www.microsoft.com/en-
us/legal/intellectualproperty/t...](https://www.microsoft.com/en-
us/legal/intellectualproperty/trademarks/en-
us.aspx#70cf4cc4-bd8e-48a5-90e0-b4e0fe464527)

------
shirro
I have a lot of negative feelings about Microsoft because of the historical
baggage but they have some good products and technologies. I am also fairly
negative on Oracle but when they released their database on Linux it was
important for me at the time as it gave a boost to Linux server work (now with
added DBA).

There is a lot of software that targets a limited subset of databases due to
SQL incompatibilities/features and sometimes that is a subset of one. Getting
some of those backends on Linux would be nice for people who have concentrated
on unix/linux skills to the detriment of their Windows knowledge.

This eats Windows OS sales to some extent but I am sure they can make it up
with database licenses and market share if they take the product seriously.

------
cmdrfred
I've always had this question and this looks like my chance to ask it. If you
are developing new software today why on earth would you use SQL server? Is
the price tag justified over the many free and open source alternatives?

------
blakecaldwell
This would never happen if Steve Ballmer was still alive.

~~~
ryao
He is not dead:

[https://en.wikipedia.org/wiki/Steve_Ballmer](https://en.wikipedia.org/wiki/Steve_Ballmer)

~~~
blakecaldwell
Was joking :)

------
krmmalik
This is huge and I wonder if this now means that they'll also bring other
products to Linux such as Microsoft Power BI. It would definitely make sense
in light of this announcement.

------
philjackson
Every time there's an announcement like this, I like to remember back to the
campaign of FUD that MS peddled against Linux. I think Ballmer once called the
OS a "cancer".

------
ianamartin
This is really exciting. I choose Postgres for side projects and new
consulting work.

But there are often times when you just don't have a choice. Sometimes it's
SQL Server or bust, and you have to work with it. Hell, sometimes, it's MySQL,
and you don't have a choice.

I don't hate it at all. I wish it had more of the PL parts of PL/SQL because
that would make my life sometimes easier.

I had to implement some very crazy/stupid statistical procedures with SQL
Server. It kind of sucked in ways that would have been a lot better in
Postgres.

Lots and lots of fun with dynamic SQL where you're stuffing SQL into variables
and interpolating column names from variables into those strings.

It was awful. But it worked.

If SQL Server would bring in even some of the PL features of Postgres or
Oracle, I would use in a heartbeat.

The tooling that MS provides for SQL Server is second to none. I love me some
open source, but the tooling we have available for Postgres and MySQL is just
absolute crap compared to SSMS.

------
hoodoof
Is Microsoft deliberately trying to end Windows as a back end server? What is
the underlying strategic outcome that makes this a good idea for Microsoft?

BTW if you reply to this comment with a "Microsoft smackdown" comment then
your comment is not very interesting.

I'm interested to hear some thoughtful replies, not Linux fanboy pile-on and
jeering.

~~~
robert_foss
Is there any point in keeping it alive?

Is it actually used by a meaningful amount of people and businesses?

~~~
pfg
Yes, it's very common in enterprise scenarios and with regular SMBs.

------
jroseattle
I don't get many predictions right, but 3 years ago I stated to a group of
colleagues: "By 2019, Microsoft will be the largest open-source software
company on the planet." Yes, I deserved the laughs I received.

Not sure about the accuracy of my prediction, but I'll bet I'm closer to right
than wrong by that time.

------
davidw
I remember when Oracle became available for Linux - that was the beginning of
a new era in terms of the legitimacy it conferred on Linux. (Yes, I know,
Oracle the company sucks, but that's tangential to this particular
discussion).

I wonder if this is the beginning of a similar change in the industry.

------
anonbanker
Someone page Vinod Valloppillil[0] for a quote on this one. Anyone know if
he's still in the industry?

0\.
[https://en.wikipedia.org/wiki/Halloween_documents](https://en.wikipedia.org/wiki/Halloween_documents)

------
arenaninja
I just started a job where mssql is used extensively. They're trying to get a
PHP 7 application off the ground and the lack of a mssql driver (non-PDO) for
PHP 7 is a big pain point. As of Jan 2016, they had released a beta release
and were taking a poll on what platform they should support next (I'm not
kidding, the entire history is here:
[https://github.com/Azure/msphpsql/issues/58](https://github.com/Azure/msphpsql/issues/58)).
Unfortunately it seems support is secondary in this case to Microsoft, as they
are unable or unwilling to allocate the necessary resources

~~~
1812Overture
Why are they avoiding PDO? Seems like that's what people should be moving
towards in terms of flexibility and security.

~~~
e12e
That struck me as odd too (I'm not really up to date on php7, and haven't
considered php on windows in at least a decade). But perhaps it's because the
PDO-driver is built on the old TSQL-interface, and MS own drivers haven't been
ported to php7 yet (not with a stable release, anyway) ?

[http://php.net/manual/en/ref.pdo-dblib.php](http://php.net/manual/en/ref.pdo-
dblib.php)

[https://msdn.microsoft.com/en-
us/sqlserver/ff657782.aspx](https://msdn.microsoft.com/en-
us/sqlserver/ff657782.aspx)

[https://github.com/Azure/msphpsql/tree/PHP-7.0](https://github.com/Azure/msphpsql/tree/PHP-7.0)

------
EvanAnderson
Maybe my secret hope of Exchange on Linux isn't completely insane after all...

~~~
sauere
Don't see that one happening. Exchange is too tightly coupled with Active
Directory and IIS.

~~~
EvanAnderson
I don't think Exchange uses any interface other than LDAP to hit Active
Directory, so I'd think there's at least a fighting chance that the AD
requirement could be satisfied by other LDAP servers.

I can't speak to the IIS integration anymore-- I quit following that at a low
level back in the Exchange '03 timeframe. I would suspect there's a clear line
between IIS and Exchange, however, that could be used to facilitate an adapter
layer for a flexible HTTP(S) server like nginx. The SMTP, POP, and IMAP
services, though, would probably involve a lot of re-implementation.

~~~
lukeh
Last time I checked it also uses a lot of RPC protocols, e.g. NSPI.

------
talles
> In-memory database support for every workload with performance increases up
> to 30-100x

Can't wait to try this one, a Redis-like service with all the consistency of a
mature SQL database (in theory at least).

Don't get me wrong, I've being deploying Redis in production and I'm love with
it, but it's nice to have an alternative with referential integrity not to
mention the "isomorphic" effect (you'll be able to switch from non-volatile to
volatile persistence without the wizardry required by the typical in-memory
databases).

------
alexc05
I wonder if SSMS tools are going to go crossplat like VSCODE?

How great would it be to have first-class sql-server-management-studio on your
Mac/Linux desktop?

I wonder if SqlExpress is going to be available on Linux too?

------
tn13
I find this really weird for the following reason.

Only cost conscious developers care about running db server on the same
machine as application server to keep costs low. Such people wont buy SQL
Server at all for the cost related reasons.

Non cost conscious developers can always run SQL Server on a separate Windows
machine while keeping their application servers on Linux.

Except Microsoft intends to make SQL Server free and make it replace Mysql
among small developers and later help them buy SQL Server instances in cloud
and make money.

------
desireco42
Microsoft, you devil! That is awesome news. It will definitely push others to
up their db game. One thing is DB engine, other is a suite of tools that goes
along with it.

------
rb808
I really love developing on sql server, but...

From memory I remember when they "acquired" the source from Sybase and one of
the selling points was that they could strip out all the multi-platform
complexity from the source code. Being windows-only meant it was simpler, less
complex code, faster and less buggy.

It also confuses my view of what MS has been doing. Maybe Azure is more
important than Windows now? Its going to be kinda weird to see SQL Server on
Linux in Azure.

~~~
jklowden
You're not thinking like a businessman. That purchase from Sybase 23 years ago
and this announcement today have no _technical_ justification. They're
business decisions. The technical aspect is just a cost of doing business.

Their bet evidently is they can make more money selling SQL Server without
Windows than with it.

------
alexc05
This is another awesome piece of news!

If you're interested in using docker+.NetCore+EF a "proper" database was the
only piece missing.

~~~
broodbucket
What's EF in this context?

~~~
wmeddie
Entity Framework. Microsoft's high-level ORM for .Net.

------
tasnimreza
Awesome :) Now a days Microsoft changed a lot, welcome to the new world
(Linux). The raise of NoSql, how MS SQL survived ! amazing.

------
aninteger
Does anyone know if this potentially includes a replacement for FreeTDS. A
replacement would mean open source in this context.

~~~
bureado
Scroll down on this page for more information on client drivers:
[https://www.microsoft.com/en-us/server-cloud/sql-server-
on-l...](https://www.microsoft.com/en-us/server-cloud/sql-server-on-
linux.aspx)

~~~
aninteger
Sadly not open source and no ability to use it with CentOS 6.

~~~
teh_klev
Support for RedHat 5, 6 and 7 so it'll work on CentOS 6 which is re-packaged,
de-branded RHEL:

[https://www.microsoft.com/en-
us/download/details.aspx?id=364...](https://www.microsoft.com/en-
us/download/details.aspx?id=36437)

Can't really help you with the open source side of things.

------
DKnoll
They mentioned a preview available today, but I'm not seeing it on the Partner
or MSDN portals. Anybody got a link?

~~~
jnevill
At the end of the article (although it's not stated, and the link was down
about when this was posted): [https://www.microsoft.com/en-us/server-
cloud/sql-server-on-l...](https://www.microsoft.com/en-us/server-cloud/sql-
server-on-linux.aspx)

~~~
DKnoll
Thanks for the assist, looking forward to testing this out.

------
krylon
Having worked as a Windows admin for the the past three years, the one piece
of Microsoft technology that never gave me the least bit of trouble is SQL
Server. It's expensive (compared to the € 0,- price tag of PostgreSQL), but
otherwise I like it very much. It will be interesting to see SQL Server on
Linux.

------
gtrubetskoy
Even as recently as a year ago this would pass as a great April Fools joke.
Boy how have the times changed.

------
ninjakeyboard
I don't really know why I would choose to use sql server if I wasn't already
locked in to MS as a vendor. Is the idea that it gives people the ability to
move away from MS if they already have vendor lock in? Or is it to hopefully
compete against eg Oracle.

------
colemannerd
I am incredibly excited. This is the first step towards a docker version of
SQL Server which for our company would enable us so many options to improve
developers lives. Even if we stay with Windows for production SQL deployments,
this will make development awesome.

~~~
luisdbosquez
In the sign up page ([https://www.microsoft.com/en-us/server-cloud/sql-server-
on-l...](https://www.microsoft.com/en-us/server-cloud/sql-server-on-
linux.aspx)) you'll find this quote: "Please note that at this time, SQL
Server on Linux is available on Ubuntu or as Docker image." :)

------
stevehiehn
The reason this has my attention is because 'R' is being integrated into the
engine.

------
listentojohan
Never really found a GUI I liked as much as MSSQL (not that you always need
it, but it's nice!) - though I'm really in love with postgres - I've sometimes
found myself just thinking "why doesn't everyone do it like this".

------
binoyxj
Why Microsoft needs SQL Server on Linux [http://www.zdnet.com/article/why-
microsoft-needs-sql-server-...](http://www.zdnet.com/article/why-microsoft-
needs-sql-server-on-linux/)

------
jhwhite
Is SQL Server Management Studio available on Linux? Is there anything like it
on Linux?

------
nodesocket
MSSQL actually is really mature and performant (on par with Oracle) and I'm
interested to see some benchmarks vs MySQL and PostGRES. I think it could
become the replacement for SQL enterprise, even over the widely loved
PostGRES.

~~~
jklowden
Don't hold your breath. The EULA for SQL Server prohibits publishing benchmark
results.

It's not completely self-serving. Back when magazines were made of paper,
"DBMS Faceoff!" articles sold a lot of copy, and generated more heat than
light. A DBMS is a complex beast, enough so that it's impossible to say if X
is faster than Y for all workloads.

------
jedberg
Just the other day I was discussing with some folks that Microsoft has made an
amazing effort of the last two years to win back the hearts and minds of
developers. This is another great step in that direction.

------
Lennu
Just have to say, it is great to see Microsoft turning again into a software
company! Even after all the hate, they do great products and good stable
software. A great example of a successful software company.

------
jasonjei
I wonder if the UI management tools will be web-based like GCloud/AWS/Azure,
or if they will be OS-specific. Still, it's very impressive that Microsoft is
moving outside its own OS.

~~~
reitoei
They'd have to be web-based, surely.

------
netcraft
this will make it much more available to containerized stacks for sure.

------
betimsl
Can't wait to see benchmarks of this on same config hardware :D

------
ryanmarsh
I've always enjoyed using SQL Server and I'm really happy about how it's grown
over the years in features and performance. I really never thought this day
would come.

------
aikah
Ok, good. Now how much a SQL Server on Linux license is going to cost ? Does
it mean businesses using Linux will now be subject to Microsoft license audits
?

~~~
yardie
Oracle runs on Linux. Oracle is a member of BSA. If you use oracle on Linux
you are still subject to audits. Why would this be any different for
Microsoft.

------
mrbluesman
The question now is, will they offer up a free edition to compete with MySQL?
And when will they open-source it?

(I can't believe I'm actually saying that.)

~~~
nickpeterson
There is a free (but not open source) edition and it's been available for some
time. SQL Server Express. It has very severe limitations though, which make it
difficult to recommend.

~~~
bragh
Depends on the use case. A local POS vendor is running most of their local
databases in stores (1..10 registers) on the Express version. Not sure how
often they archive data out of the main database, though.

------
rajeevk
With this trend, I will not be surprised if Microsoft releases its own Linux
distro which will be optimized for MS software (e.g. sql server)

------
blueside
of course, the major downside to this is that linux admins will now have the
possibility that they have to work with sql server

------
merpnderp
I bet a lot of Microsoft's push to Linux is that something like 98% of the
internet runs on non-windows OS's.

------
trollied
May not have been as hard to port as you all think. SQL Server was a port of
Sybase, which was *NIX based anyway

~~~
bdcravens
Pretty sure the code has changed enough in 23 years that this wasn't relevant.

------
callesgg
very interesting move strategically.

would I use it for my own project's? no.

would I use it for some random software that requires mssql? yes.

------
jamespitts
Very happy to see this.

MS is extending the olive branch in so many ways, and we in the open source
community can learn to forgive. Still, it will be hard to get over the mutual
hostility from decades past.

[http://www.huffingtonpost.com/trudy-bourgeois/what-george-
wa...](http://www.huffingtonpost.com/trudy-bourgeois/what-george-wallace-
taugh_b_6647468.html)

~~~
jamespitts
So what's up? Why do you disagree?

------
oblio
Now if they port Microsoft Office, we'll finally be able to say: "hell hath
frozen over".

~~~
nickpeterson
Well, it wouldn't surprise me, because look at the work they're doing to
support Android.

~~~
discordance
Just because it's possible doesn't mean it will happen. Office is on Android
because it has a huge market share.

Linux desktop still is very low market share so an Office client doesn't make
sense there, whereas Linux server is high market share so SQL Server does make
sense.

------
JimmaDaRustla
Wow. Just two days ago we were wishing SQL was available in Linux so we could
move away from Oracle.

------
NicoJuicy
I wonder if i can run EF on Windows with a SQL Server backend now?

What would be the memory usage difference?

~~~
jnevill
Doesn't EF just use an ODBC connection? I can't imagine that the OS upon which
the Server is running would have any effect on something as high up the stack
as ODBC/OLEDB.

~~~
snuxoll
ADO.NET, not ODBC.

------
qaq
One of the few usable products MS has (haven't used it since SQL Server 2000
though).

------
intrasight
This could reduce the cost of using SQL Server on AWS if Amazon supports this
flavor.

------
anacleto
Good move. It's just late.

------
ryao
Here is the obligatory admiral ackbar link:

[https://www.youtube.com/watch?v=4F4qzPbcFiA](https://www.youtube.com/watch?v=4F4qzPbcFiA)

With that out of the way, I wonder if they will port their other software like
Mcrosoft Visual Studio, Microsoft Office, various games, etcetera.

------
emn13
A few years ago, I would have though that somebody posted this three weeks
early.

------
icewater0
Oooh, I can't wait to ignore Microsoft products on Linux as well!

PostgreSQL for me thanks.

------
z3t4
Using SQL Server on Linux would be like swearing in church _silly smile_

------
cturner
How long until Microsoft put out their own BSD distribution?

~~~
mixedCase
They have their own Microsoft Linux, but it's for Azure internal use only.

~~~
cturner
Thanks, I'd missed this.
[http://www.theregister.co.uk/2015/09/18/microsoft_has_develo...](http://www.theregister.co.uk/2015/09/18/microsoft_has_developed_its_own_linux_repeat_microsoft_has_developed_its_own_linux/)

------
bifrost
I can't wait to try this in the FreeBSD Linuxulator!

~~~
tachion
We havent seen the sources yet but with some luck we will be able to get it in
ports without the need for linux kernel emulation ;)

------
sbose78
This is huge, competition for Oracle increases. :)

------
shiftoutbox
Checks calendar , hurmm it's not April 1st ... ?

Wait I remember sun one asp server .

Please tell me this isn't sql server written in c# using mono !

------
ChicagoDave
Gob-smacked.

------
rawells14
This is absolutely amazing

------
lxsameer
hehe, No thank you

------
int0x80
if you can't fight them, join them!

------
known
Isn't it too little and too late?

------
dschiptsov
It would be more beneficial for whole community to contribute to Postgres.

We already have fairly superior commercial solution, like Informix Dynamic
Server family, which is superior in everything, except compatibility with MS,
that lost "competition" (to meme-based popularity) to crap like MySQL or
bloatware like Oracle.

This is, again, good publicity and excellent PR action, but my bet is that
performance and especially stability will be poor, like it is with .Net port
or Skype port. To bring a server to the market requires expertise with target
platform which very few UNIX shops has.

Open sourcing IDS, which has remarkable technology inside, which is partially
related to Postgres, would be a much better move.)

------
kourosh4000
Hey there! I'm trying to learn about this stuff , would anyone pls help me out
how to be a hacker?

~~~
algorithmsRcool
If you mean hacker in the sense that you want to learn about breaking into
computers, then you've come to the wrong place.

Hacker news is a startup/technology oriented news aggregator with a comments
section.

Not a den of criminals. (depending on your views about capitalism i suppose)

------
gfodor
Looks like they announced this 3 weeks early.

~~~
pat_space
could you clarify? I don't get the reference.

~~~
pekim
It's a reference to
[https://en.wikipedia.org/wiki/April_Fools%27_Day](https://en.wikipedia.org/wiki/April_Fools%27_Day)
.

------
jordz
I was not expecting that at all.

------
bhaavan
`Please join me Satya Nadella, Joseph Sirosh and Judson Althoff at our Data
Driven .....

Thanks, Scott ` This is why there is a comma in grammar. `me Satya Nadella, X
and Y` is different from `me, Satya Nadella, X and Y`

------
merb
haha i thought I'm reading that microsoft will bring MSSQL to Linux. But I'm
just dreaming

~~~
noja
Err didn't they announce exactly that?

------
kourosh4000
Hey guys, I'm trying to learn about this stuff, would anybody pls help me
out!?

------
l3m0ndr0p
OMG - They'll probably cripple the implementation of this. I wouldn't trust MS
on this. It sounds nice, but I wouldn't set this up if it meant we could have
world peace...

MS SQL relies heavily on Windows OS API. How are they going to pull this off?
With some kind of VM layer running under linux with a stripped down Window OS
which will run MS SQL?

MS Should announce that they are going to fork a version of Linux with their
brand MS-Linux. Hell - If they port every piece of software over to Linux,
they would rule the world & back-end server market.

Any way. Good luck!

