Why You Shouldn't Panic About Closed Source MySQL Extensions
jfruhlinger writes "Oracle has released proprietary extensions to the open source MySQL database, seeming to reinforce the worst fears of those in the open source community who opposed Oracle's acquisition of MySQL in the first place. But open source observer Brian Proffitt urges you not to panic: This dual source strategy really isn't unusual in the commercial open source world, Oracle has already released a bevy of open source improvements to the database, and anyway the EU extracted a commitment to keep MySQL open for another four years when it approved the Sun-Oracle merger."
open source observer Brian Proffitt
lol
Contrary to the popular belief, there indeed is no God.
... after which Oracle will be @ liberty to digest MySQL as closed, and the EU will have nothing to say about it.
and anyway the EU extracted a commitment to keep MySQL open for another four years when it approved the Sun-Oracle merger.
In other words, in 4 years all bets are off so you better start migrating to Postgres, a community fork or something else now.
from MySQL to PG. It was easy. You should do it too.
because of postgresql?
You can't handle the truth.
By "keep MySQL open for another four years", they mean "pay lip service to its life support, then on day 1462 stop even that". Sorry, but unless one of independent forks really takes off, I'm not going to even look at something else than Postgres. For that "bevy of open source improvements", what exactly has been added? Heck, MySQL development has been dormant even during Sun days.
The creatures outside looked from Alt-Right to Antifa; but already it was impossible to say which was which.
...because if you aren't already running some better DBMS, chances are that you are probably generally unable to panic about any DBMS quality.
As I'm writing a new software application, I've chosen PostgreSQL for these reasons:
1. Very good quality of PostgreSQL and very good features
2. License (BSD)
3. Officially supported pre-compiler for embedded SQL in C/C++. Ironically there was such a pre-compiler for MySQL, but after the buyout it has been dropped from the official MySQL website (now Oracle) , however you can still find it elsewhere.
4. I don't want oracle men in suits asking me money
They have no good financial reason to support 2 seperate database systems. In those 4 years they'll simply migrate all their paying MySQL support customers to the Oracle DB and once thats done the MySQL codebase will no doubt be quietly forgotten about.
At the moment they are 'extensions'. In short order, core features will be added through extensions, and MySQL-GPL will just be a vessel for proprietary software.
What happens after that fourth year? Pull your head out of the sand.
My karma is not a Chameleon.
If any 'fork' is to be taken seriously, it has to remain binary compatible (eg, can't simply dump and re-import), there are too many programs that rely on MySQL and MySQL only (ex, wordpress, which is used heavily) and have no means of using an alternative DB since they weren't written with any DBAL. Or there are cases like Xaraya and phpBB3 where the DBAL itself only knows specific versions of MySQL and doesn't functionally work with other DB's even if the core does since extensions may not be written using the DBAL.
As for switching to PostgreSQL, same as above, the products in question and many others, assume that the underlying DB is MySQL3 or MySQL4.
In the case of IBM, IBM cannibalized some of it's internal proprietary software sales, but in turn sold more services, a lesson it learned back with the original IBM 5150 BIOS and MS-DOS. Trying to hold back innovation using copyrights and licences results in the ability to sell services being lost. Oracle is being rather dickish about Java, much like Sun was about Java, and I think in the end this doesn't bode well as it pretty much killed Java being adopted and the world has moved to JIT-LLVM types of development instead.
Unlike Sun Office, OpenOffice, LibreOffice, you can't simply fork when you don't like the company that buys it. Yes there will be attempts at forks, but they won't replace the previous popular flavor of the year unless that new version offers something attractive to switch for. As we all know, people don't flock to Gimp and Inkscape over Photoshop and Illustrator just because it's free and not owned by dickish companies. People use these products out of necessity.
So in the case of MySQL, there is a large installed base, just like the Apache HTTPD server itself, this is the norm, even if the underlying OS is MacOS, or FreeBSD. Low-end VPS systems only support Linux CentOS+Apache+MySQL+PHP and nothing else. You don't get to install anything that CPanel doesn't have unless you want to install everything manually by yourself.
Nobody cares about licenses when they can just tick a "install database" box.
Free software is about setting minimum levels of respect: the four freedoms.
Many projects go beyond this, by using copyleft, by assisting community participation, by being transparent, etc.
By abandoning this standard, Oracle shows itself as just another free software freerider, not to be trusted and not worthy of community support or good will.
Expert in software patents or patent law? Contribute to the ESP wiki!
In VirtualBox v4.0, Oracle released the core as an open-source projet and the proprietary extensions as a plug-in. This proprietary extension is free for home use but commercial users must by a licence. The extension is not 100% necessary but does provides some very useful features, such as being able to connect to the "console" of a headless VM. Cool right?
Well, not really. There is at the moment no way to actually buy such a licence from Oracle, so all the people using VirtualBox v4.0 with this extension in a business are technically out of compliance.
VirtualBox is cool, but they really need some leadership from Oracle.
Nobox: Only simple products.
How long did it take for LibreOffice to take over from OpenOffice?
You'll probably see a perfect replacement fork for MySQL the day it's open source life ends.
Perhaps the binary-only extensions from Oracle are part of an attempt to prevent that sort of thing. After all, if a large part of the user base is hooked on non-forkable proprietary extensions during the next few years, then forking MySQL when Oracle's commitment to keep it FOSS expires would be largely fruitless. Moreover, relying on these extensions may also make it harder to port one's DB and related applications to Postgres or other alternatives.
For this reason, I'd say Mr. Proffitt is utterly wrong: there is much to worry about. Each proprietary binary extension is potentially a poisoned chalice, and should be viewed as such.
Those who can make you believe absurdities can make you commit atrocities. - Voltaire
I would think most distros will have policies that will make this a second class DB or drop it entirely. It rules it out of Debian for the next release, openSUSE will drop it to non-oss, gentoo wont like binaries and so on.
Having to go the Oracle website to get it would put off the majority of new non-commercial users or anyone wanting automatic update notification.
And, as with OpenOffice, the community will fork the Database and add a bunch of useful features to it.
Finally Oracle will either "donate" MySQL back to the community or keep it closed source and everyone will move over to PostgreSQL.
I suspect the binary-only extensions from Oracle are part of an attempt to prevent that sort of thing. After all, if a large part of the user base becomes reliant on non-forkable proprietary extensions during the next few years, then forking MySQL when Oracle's commitment to keep it FOSS expires would be largely fruitless. Moreover, relying on these extensions may also make it harder to port one's DB and related applications to Postgres or other alternatives. Furthermore, a MySQL donated to the community would be worthless to those who need the extensions (and nothing prevents Oracle from making those extensions quite expensive later). Conceivably, the extensions could even make it easier to port to a commercial DB offering from Oracle, if they are cunning enough.
For this reason, I'd say Mr. Proffitt is utterly wrong: there is much to worry about in these extensions. Each proprietary binary extension is potentially a poisoned chalice, and should be viewed as such.
Those who can make you believe absurdities can make you commit atrocities. - Voltaire
a commitment to keep MySQL open for another four years
If four years are rated a long time I wonder about the implications regards short term memory, assuming a universal scaling factor.
CC.
TaijiQuan (Huang, 5 loosenings)
Mod parent up.
404555974007725459910684486621289147856453481154 in hex is "You sank my Battleship?"
[GPG key in journal]
... EU extracted a commitment to keep MySQL open for another four years when it approved the Sun-Oracle merger.
Communist socialist maoists! How dare they!
It's community owned.
When it's not open in four years will that have anything to do with a full working version still being free?
If MySQL is still an important part of the FOSS ecosystem by then, interest will shift to MariaDB (or some other fork), and/or someone else will pick up the FOSS version of the MySQL codebase and maintain it. On the other hand, if the majority of the FOSS community is moving on anyway by that point (e.g. to PostgreSQL), then it won't matter if MySQL is "quietly forgotten about".
You can trust Larry Ellison without question.
has and always will will suck compared to alternatives such as postgres. I see no logical reason to use it.
The only people who get screwed are the people who signed up for the proprietary version up front.
And, in theory, the only people who get screwed by Microsoft are those who signed up for Windows. But it turns out that if you have a large enough impact on the software ecosystem, you can make life miserable for those around you, even though your neighbors want nothing to do with you.
(It works that way for actual ecosystems, too.)
dragonhawk@iname.microsoft.com
I do not like Microsoft. Remove them from my email address.
"They have no good financial reason to support 2 seperate database systems. In those 4 years they'll simply migrate all their paying MySQL support customers to the Oracle DB and once thats done the MySQL codebase will no doubt be quietly forgotten about."
I doubt that. MySQL is nowhere near as complete as Oracle, but on the other hand it is considerably simpler to deal with. Oracle will most likely keep MySQL as an "Oracle Light", which doesn't contain all the fancy enterprise features of Oracle, but is quick and easy to set up without donating your second kidney and practising voodoo, sacrificing live chickens and all.
I doubt Oracle will think they have a good financial reason to support an open source database system, however, so MySQL will not remain open source beyond those 4 years (and several of those must have passed by now?).
If only I had mod points...
You express a thought that is lost on so many here: It's the spirit of F/OSS that is being violated here. You nailed it on the head calling Oracle a "freerider," because that is exactly what they are doing, leeching off the work of others for their own gain (whether present or future).
If any post sums up this what Oracle is doing wrong, the parent is it.
If you aren't interested in how well it performs, Oracle already isn't that hard to set up. It's not that expensive either.
A Pirate and a Puritan look the same on a balance sheet.
Oracle which now owns MySQL is a database vendor.
MySQL has been a game changer in the database market offering for little or no cost a product which directly competes with Oracle offerings in some market segments.
Improving MySQL scalability makes it compete in more market segments that before. This doesn't make sense
Improving MySQL authentication options makes it compete directly with the Enterprise Edition of the Oracle DB
Where is the benefit to Oracle in maintaining 2 competing database products? There is none.
Unless you are willing to play the long game.
Step one Gut hook the client, Oracle purchased MySQL for the customers, adopting an embrace and extend model binds customers to the product increasing cost associated with jumping ship. (Go on Oracle give those cigarettes out for free)
Step 2 Develop an migration path between MySQL and Oracle, hey guys there's no pressure (Maybe a MySQL front end on Oracle?)
Step 3 Migrate more components to a closed source model, ones that you really need
Step 4 Force users onto the Oracle back end
Step 5 Roll in cash and laugh
As you pointed out, both structural *and* content changes are often necessary in agile programming. PostgreSQL offers a great opportunity to ensure that your database remains consistent during version migration/evolution: you can combine your DDL and live data changes in a single transaction that can cleanly roll back.
Let's say you are changing the schema of tables foo & qux and want to synthesize a new child table, bar, from some column data from foo + qux. After that you naturally want to inject FK's in foo & qux to link to the newly-created bar records. Of course, at this point you want to drop the now-redundant columns from foo & qux. No sweat: do it all in a single transaction in PG. It either goes or it doesn't. It will enforce all the triggers as well, so you are guaranteed that your new, NOT NULL FK columns are populated in all of foo & qux's records.
I love this feature, because I would rather have a combined update blow up than to leave my app in a "half migrated", metastable state between the old and new form of the schema, as might happen if I had to do DDL first and then live data migration separately. Besides, if my schema migration fails transaction validation on "live data", then that means I missed a corner case in testing and I should stop to review what I overlooked to avoid stomping production data.
Yes, you want these transactions to run non-interactively. With proper pre-flight testing you can get a very high confidence that your database evolution will "just work". However, it's nice knowing that if it *does* asplode the database won't have crapped itself and will merely roll back your pending DDL & live data changes.
Because you cannot ask the wolf to watch over your sheeps!
Sent as ripples into the electromagnetic field. No single photon has been harmed in the process.
sounds more like a 208 week strategy to me
I listen to both RIAA and non-RIAA stuff if I like the music, tangential business/politics nonwithstanding.
Laughing @ U, Mr. "wannabe PhD" (no PhD to your name) = EZ 2 do!
Why You Shouldn't Panic About Closed Source MySQL Extensions
Because anyone that mattered moved off of MySQL to PostgreSQL a long time ago?
Persistent Volume manager for Kubernetes - https://github.com/dwimsey/openshift-pvmanager
I don't use MySQL. I use MariaDB. I've looked at Drizzle too. Drizzle is "for the cloud".
For all practical purposes, MariaDB is a binary drop in replacement of the same MySQL version (for example MySQL 5.1 -> MariaDB 5.1, MariaDB 5.2 & MariaDB 5.3 are compatible. MySQL 5.5 will be compatible with MariaDB 5.5). http://kb.askmonty.org/en/mariadb-faq
Please help fund MariaDB.
Having to work for a living is the root of all evil.
After the release of Postgresql 9.x. MySQL has no place, period. MySQL can't even get UTF-8 right. Bug laden transaction support. TS engine? CRAP. Trash OO wannabe. If you do not need the features, then use mongo or couch. I don't know why anyone would use it knowing Postgresql exists.
mysql = java = sun = oracle = trash
Humm, a typical Enterprise-level licence (four sockets, some cores) run to hundreds of thousands of pounds. RAC is an other 15k or so, and then add active dataguard for an other 5k or so. It racks up pretty quickly.
Last year's enterprise licence was about £32k per licence and for a four-socket 6-core each server you'd require 12 enterprise licences. And then you would be insane not to have a second server with data guard or RAC.
Just checked the US prices, (http://www.oracle.com/us/corporate/pricing/price-lists/index.html) and the processor licence is now $47.5k for US. For Intel/AMD, you multiply the cores you have by 0.5 to get the processor licence.
For the server above, you'd require $570k per server. Of course you might be able to get some reduction in that. Once you count partitioning, Active data guard, advanced compression, total recall etc. etc., say byebye to your budget.
Its time for a new license in the open world. I propose a clause that says this code and any updates to it are to remain open no matter who new owners might become over time.
Or words to that effect.
They have no good financial reason to support 2 seperate database systems...
They are supporting more than 2 database systems... TimesTen, Berkeley DB. No comment on how active the development and promotion and whether they will eventually dump them.
Interesting. Possibly this is a case that demonstrates why BSD/MIT/Apache licenses are superior to GPL? When Oracle acquires a copyright title on a product such as MySQL released under GPL license, they can release closed source mods to the code and convert the community to a locked-in position, whereas no other player can do the same? Everyone but Oracle is "stuck" with a viral license now and so Oracle has a huge advantage in terms of controlling the community with proprietary extensions? Hmm.
The proprietary extensions were there before, all the way back to mysql ab. You just had to pay for them before.
From the article, they are enterprise monitor and enterprise backup. Backup at least has been reimplemented by percona as xtrabackup.
When a GPL'd project gets bought out, we can end up with one freerider: the purchaser.
With BSD/MIT/Apache licences, we get lumped with unlimited freeriders, no purchase necessary. That's why companies who aren't interested in freedom put so much work into advocating those licences.
Expert in software patents or patent law? Contribute to the ESP wiki!
And, in theory, the only people who get screwed by Microsoft are those who signed up for Windows.
I'd guess it's a lot harder for MySQL admins to avoid the proprietary components than for home PC users to avoid Windows. For example, the package manager for a server operating system based on CentOS or Debian is likely to put the non-free components in a separate package in a separate repository.