Now that Oracle holds the keys to the MySQL copyright, the question remains: What does the future hold for the popular open source database - and the organisations that rely on it?
Oracle's absorption of Sun is complete. Now that the European Commission has blessed the merger, the Oracle logo is proudly displayed to anyone who types "sun.com" into a browser. Yet if you visit mysql.com, you'll see hardly any mention of Sun, the company that purchased MySQL for $1 billion in 2008, and Oracle's logo is buried deep at the bottom of the pages.
It's almost as if the endless legal briefs, the hearings, the saber rattling, and the hand-wringing never happened. For the moment, database administrators, IT managers, and tiny website operators everywhere continue with business as usual, leaving MySQL running on the servers and fielding the queries that come zipping in. Yet now that Oracle holds the keys to the MySQL copyright, the question remains: What does the future hold for the popular open source database - and the organisations that rely on it?
The question is a tricky, and the answer depends heavily on MySQL's role in your business, the type of licence you use, the amount you want to spend, what you want purchase, and who you plan to work with in the future. To further complicate matters, MySQL is one of the most prominent open source projects and businesses in the world, so any discussion about MySQL becomes a proxy for a debate about open source licences such as the GPL (GNU Public Licence).
MySQL, today and tomorrow
There's good news for fans of MySQL: It won't be left to wither and die any time soon. Oracle has made very public assurances that it will spend more on developing the database than Sun ever did, at least for the next three years. The Community Edition will continue to see improvements, which will be released under the GPL at no charge with all of the source code.
These assurances suggest that the average MySQL user won't need to think about whether or not to drop MySQL for the next few years. If you're happy with your version of the database, you will be able to keep running it - as long as you have a compiler.
There's some good historical evidence that Oracle will make it easy to continue using MySQL without a compiler. One developer, who is familiar with how Oracle nurtured Sleepycat after purchasing the open source database company, said the deal worked out wonderfully for everyone. There are now more engineers than ever, and the company never changed the licences.
"It's four years later and we're almost all still here," said one developer who isn't allowed to speak publicly for Oracle. "People are still engaged and happy. Oracle is an excellent engineering organisation."
Assurances such as these aren't enough to calm everyone's nerves. The very fact that MySQL's website is so distinct (unlike Sleepycat.com, which redirects to the Oracle website) may be more than an oversight. Oracle executives know just how tumultuous the journey has been for MySQL. Marching right in and redirecting mysql.com to oracle.com would upset people who are still brooding after the purchase of Sun.
Your licence or mine?
Organisations and developers aren't simply concerned about the future of MySQL as a product, but how Oracle's possession of the database - and its copyrights - will affect licensing.
Monty Widenius, one of the original founders of MySQL, has been one of the most public opponents of the Sun-Oracle merger. He left Sun in 2009 to start up MariaDB, a new version of the MySQL source code, under the umbrella corporation Monty Program AB.
Widenius lobbied the European Commission to prevent the merger, arguing that it would be bad for Europe and society in general to let Oracle gain control of the copyrights to MySQL. He made the case that a company such as his, whose product is built on the open source database, is sustainable only if it can offer commercial licences to users who don't want to be bound by the GPL.
Yet if Oracle were to become the sole copyright holder, he argued, no competition would be permitted to sell commercial licences. (The original MySQL corporation always insisted on keeping the full copyright by asking that all contributors sign agreements assigning the copyright to the company. This power meant they and they alone could sell the chance to ignore the GPL.)
The trouble with forcing a customer to embrace the GPL is it's an arguably confusing license, the details of which can grow fairly complex. Some suggest, for example, that the licence applies to the drivers that are usually more closely linked to everyone else's software and the protocols that define the connections. Others argue that the idea is overreaching.
In the past, I've known MySQL salespeople to effectively exploit would-be customers' confusion over the GPL, convincing them that opting for a commercial licence would be simpler, eliminating any chance of costly legal battles down the road. And, of course, buying a commercial licence helps feed starving developers. It's proven to be an effective and profitable scare tactic.
A kinder, gentler GPL
There's reason to believe that the fear of the GPL is dissipating. Google has no qualms running MySQL with the licence. "There are a lot of people who read into the GPL what they wish it says," said Chris DiBona, the open source programs manager at Google. "We understand the GPL and we'll use it the way that it's made."
He noted that the GPL requires developers to include the source code when distributing copies. Most of what Google distributes is results, not software, so the company doesn't need to distribute any changes it makes to the software - if it makes any at all. Many companies use MySQL and other GPL projects without any changes.
"Pretty soon, selling people on the idea that the GPL is scary and 'You should pay us not to hex you with it' is not going to be a durable business model," said Eben Moglen, a Columbia University law professor who often helped Richard Stallman draft versions of the GPL.
In the past, Moglen worked for both Oracle and MySQL to help them understand and define the role of the GPL in business. When the European Commission debated the merger, Moglen came to the conclusion that the marriage of the two companies PDF would not damage the openness of the source code, the most important factor in his mind and the real focus of the GPL.
Stallman took a different tack and chose to focus on economics and competition, joining with other open source advocates to echo Widenius's argument that the ability to issue commercial licences was essential. In a letter to the European Commission, the group made this case: "As only the original rights holder can sell commercial licenses, no new forked version of the code will have the ability to practice the parallel licensing approach, and will not easily generate the resources to support continued development of the MySQL platform."
For better or for worse, the European Commission was not swayed by these arguments and agreed to let Oracle gain control of Sun and MySQL. How this will affect the way companies use and license MySQL remains hazy, but Oracle, its customers, and its competitors are preparing.
An open approach
Monty Program is not the only company that wants to support database administrators who use MySQL. Another group of ex-MySQL developers have started work on Drizzle, a fork of MySQL still in alpha form. Data center manager Rackspace recently announced hiring several major developers from Drizzle, a decision that should move the company closer to shipping a version that's generally accepted as stable.
The ecology of MySQL installations will probably split into several distinct camps. Widenius is already signaling that he wants his branch to offer a more collaborative, experimental community by accepting community bug fixes. MariaDB will probably be more attractive to the hard-core developers with the time to tune the code to squeeze out every last bit of performance. The new version includes Maria, PBXT and Xtra, three storage engines that lie inside of the MySQL parsing mechanism.
Details about these storage engines will be of greatest interest to developers who need a high level of performance and ACID transactions. These details are largely hidden away behind the SQL parser, so most users will see these engines as equivalent to the engines distributed with the version of MySQL coming from Oracle.
Widenius suggests that the GPL binds all developers that distribute MySQL with their software, even if the two run independently. The MariaDB or Drizzle versions won't help them, unless they intend to distribute all of their code.
"My view is that the GPL doesn't affect one over [TCP/IP]," said Widenius. "The GPL in MySQL does however affect an application if it is distributed with the MySQL server and/or require the MySQL server to work. This is because the whole system is a derivative of MySQL, even if some parts aren't."
But others disagree, and any company in this gray zone is going to continue to need commercial licences from Oracle unless it wants to be ready to argue about the details of the GPL in court. Or companies might just point to the way that Oracle blends its database with Linux OS, a process that many feel doesn't force the database to be covered by the GPL.
Welcome to Oracle's world
Oracle, for its part, will almost certainly leverage its strength and work toward supporting the companies that rely upon it for crucial data. The company has a crack sales force and a well-engineered mechanism for training people.
Oracle's control of the MySQL copyright and its ability to grant commercial licences to users will also keep many customers in its orbit, if only because paying a few thousand dollars for a commercial licence is cheaper than hiring a lawyer to decide whether you are complying with the GPL.
Although the vast number of MySQL users run blogs or other basic websites that store their content in the database, few of these versions produce any revenue. Will Oracle squeeze them harder for fees? Or perhaps Oracle will view these customers as a farm team and encourage them to enjoy the open source licences until they grow into bigger, more commercial operations.
Some companies will have little choice but to smile and be kind to the Oracle salesman. A number of software companies build their packages around MySQL and ship the two as an integrated tool. They'll need to continue purchasing commercial licences if they want to bundle MySQL with the code that they write - or they may think they have to.
There's NoSQL like MySQL
Oracle must be savvy enough to recognise that there are limits to what it can demand before customers start rewriting their code. Twitter, for instance, has announced that it's experimenting heavily with switching its infrastructure over to Cassandra, another open source project with a more open Apache licence.
Twitter's move may simply be motivated by technical reasons: Cassandra is a very simple, fast database without many of the more sophisticated protections such as transactions. There are a wide variety of other projects like Cassandra, all of them often defined by the buzzword "NoSQL."
Twitter's move may also suggest a simpler path for MySQL users who would rather not get stuck in the licensing morass. Yet embracing NoSQL comes at a cost: "It's clear that NoSQL has its place, but it's not for the average developer as NoSQL can give you more performance in one area at the cost of less flexibility and interoperability in a lot of other areas," said Widenius. "They remind me of the numerous databases that existed before MySQL was created. When MySQL got popular it killed of many of these as MySQL, thanks to the SQL interface, was so much easier to use and interface with other applications."
At the same time, today's NoSQL databases are reminiscent of what MySQL was like once upon a time. The database began in the same niche as Cassandra, offering very fast storage by forgoing some of the belts-and-suspenders protections of the most traditional databases.
Over the years, MySQL added many of these features, building a successful tool that could handle some of the more sophisticated chores, all jobs that required more engineers and bigger budgets.
Widenius, along with organisations that rely heavily on MySQL, is now in a precarious position. If MariaDB fails because would-be customers want to steer clear of licensing issues, he'll be left with a failed company, yet he can claim vindication that his dire prediction of the adverse effects of the Oracle-Sun merger. If MariaDB flourishes, he'll have that success, but his predictions will certainly be greeted with more skepticism. Down one path, he becomes a David who vanquished the Goliath Oracle. Down the other, he's viewed as Cassandra with a baby who's grown up and found a fancier life with the flashy guy and his big yacht. In either case, he's right and wrong.