I'm not sure why MySQL seems to have received more attention over the years. PostgreSQL might be more robust.
One point about PostgreSQL that bothered me was the apparent lack of case insensitive collation. Where SQL Server, Oracle, and MySQL default to case insensitive, PostgreSQL defaults to case sensitive, and there was no built in way to change this, so you have to do things like "WHERE LOWER(namecol) = 'jdoe'" to work around it. At least that was the situation last time I checked.
Because at some point in time mySQL was widely installed with all providers, and PostgreSQL wasn't. I guess it was just a bit sooner adoption-ready, and that counted.
For a long time MySQL was easier to get started with, and the integration with PHP made it a popular choice on shared hosting services. A lot of developers cut their teeth on MySQL, many haven't felt the need to seek out alternatives.
Yeah, for a long time MySQL was completely easy on Windows, and Postgres required Cygwin. Granted, that was years ago now, but I think it hurt adoption significantly.
Also, there has long been a perception that Postgres was slower. I still run into that from time to time today.
Sometimes early adoptions in technology establish the trend long term.
Personally, I was rather put off by earlier mySQL versions on windows, that required commercial licenses for windows, but was free on other platforms. Also, the their weird perception of software connecting to mysql needing to be gpl, or commercially licensed (legally or not, it was an f'd up pov).
Each time I used mySQL was an oddity... a binary field would effectively treat the ascii value of a byte as a case-insensitive character... You could use ANSI SQL field quotes for everything but foreign key statements... Curly ticks, not just the ascii apostrophe could break you out of an SQL statement...
Now, these may well all be fixed today, I just find it hard to believe a lot of these issues didn't break MySQL's adoption rates by others.
What surprises me even more than PostgreSQL's lack of broader adoption was that FirebirdSQL didn't see wider adoption all along either. Considering it works in both embedded and stand alone server roles. I really just don't get why people like mySQL... I mean if you are using it as a mostly write dump table (myisam) without the need for foreign keys, sure... but anything with more than 3-4 tables, I just can't see why someone would chose mySQL over many other better, and free options.
Beyond some early adoption along with PHP (another hideous platform imho) that happened to stick, and spread.
Yeah, we're in the process of migrating from MySQL to PostgreSQL now. I don't think any other project at work has kept me up at night as much as this one.
> I'd have added one thing to the licence: that this
> licence is GPL but after three years it reverts to BSD,
> then Oracle wouldn’t have bought Sun because we’d be free
> within three years and MySQL would be BSD and nobody
> could take that away
What is the problem with the GPL in this case? That changes / additions must be given to Oracle?
The only thing you need to link to is the client library, as talking to the database over a socket is not linking. I believe there are non GPL client libraries now for many languages.
I think it's somebody who doesn't like GPL and does like BSD using too many words. With BSD, you can incorporate it into your closed source code or add closed source code to it. It becomes free as in beer.
MySQL was developed buy MySQL AB and they owned copyrights to the code. They provided dual licensing option, GPL and commercial licence. It made sense for Oracle to buy the company because they were only ones who could sell commercial licensees. Under BSD that would have not been possible.
If the licence would have been 3 years of GPL, then BSD, Oracle would have bought only three years monopoly to sell commercial licensees to the software. After that, owning the copyright would be mostly meaningless.
Monty Program Ab (company developing MariaDB) is now restricted to GPL/LGPL fork of the MySQL (that's what MariaDB is) they are not able to sell closed source versions.
Personally, I don't see problem with this. I guess it just limits the money making abilities of Monty Program Ab.
It feels like Monty wants to be able to have his cake (the money he made from selling MySQL to Sun) and eat it too (continue to make money selling some sort of MySQL license). If MySQL was BSD-licensed instead of GPL, presumably he'd be able to pursue an "open-core" model where he could sell proprietary extensions to MySQL.
It looks like MariaDB is getting some good run lately. I just installed Fedora 19 on one of my older boxes and they decided to have MariaDB as the default DB.
BSD is a permissive copy-left licence that allows you to do anything to code
... of huge significant ...
"You can repeat MySQL with MariaDB." (Speaking on compatibility. Did Widenius actually say that?)
Just beautiful. :D Also, considering both Oracle and Google are currently headed by "Larry"s, I wish that if they want to shorten Larry Ellison's name, they would consistently shorten it to "Ellison", rather than "Larry" as they do a couple times.
33 comments
[ 2.6 ms ] story [ 86.5 ms ] thread(Seriously though, this whole article is summed up by your sentence, the rest is filler)
http://www.postgresql.org/docs/9.1/static/tutorial-window.ht...
These have been part of PostgreSQL, SQL Server, Oracle, etc for quite a while and still absent from MariaDB/MySQL.
http://wikibin.org/articles/mountain-view-chocolate-factory....
One point about PostgreSQL that bothered me was the apparent lack of case insensitive collation. Where SQL Server, Oracle, and MySQL default to case insensitive, PostgreSQL defaults to case sensitive, and there was no built in way to change this, so you have to do things like "WHERE LOWER(namecol) = 'jdoe'" to work around it. At least that was the situation last time I checked.
[1] http://www.postgresql.org/docs/9.0/static/citext.html
Also, there has long been a perception that Postgres was slower. I still run into that from time to time today.
Personally, I was rather put off by earlier mySQL versions on windows, that required commercial licenses for windows, but was free on other platforms. Also, the their weird perception of software connecting to mysql needing to be gpl, or commercially licensed (legally or not, it was an f'd up pov).
Each time I used mySQL was an oddity... a binary field would effectively treat the ascii value of a byte as a case-insensitive character... You could use ANSI SQL field quotes for everything but foreign key statements... Curly ticks, not just the ascii apostrophe could break you out of an SQL statement...
Now, these may well all be fixed today, I just find it hard to believe a lot of these issues didn't break MySQL's adoption rates by others.
What surprises me even more than PostgreSQL's lack of broader adoption was that FirebirdSQL didn't see wider adoption all along either. Considering it works in both embedded and stand alone server roles. I really just don't get why people like mySQL... I mean if you are using it as a mostly write dump table (myisam) without the need for foreign keys, sure... but anything with more than 3-4 tables, I just can't see why someone would chose mySQL over many other better, and free options.
Beyond some early adoption along with PHP (another hideous platform imho) that happened to stick, and spread.
I know because I wanted to use it this way and was forced to use SQLite instead (which performed nicely btw).
I am not sure how MariaDB solves these issues though? Because they will have to stay on GPL forever if I understand correctly.
If the licence would have been 3 years of GPL, then BSD, Oracle would have bought only three years monopoly to sell commercial licensees to the software. After that, owning the copyright would be mostly meaningless.
Monty Program Ab (company developing MariaDB) is now restricted to GPL/LGPL fork of the MySQL (that's what MariaDB is) they are not able to sell closed source versions.
Personally, I don't see problem with this. I guess it just limits the money making abilities of Monty Program Ab.
http://ostatic.com/blog/oracle-mysql-and-the-gpl-dont-take-m...
But they probably won't since this is Google, and it "works just fine on Linux"