MySQL Released Under The GPL
Bryan Mattern was the first of hundreds to note that
MySQL is being released under the GPL, as well as forming a partnership with VA Linux (which of course now owns Andover). This means nice things like it can move out of non-free in debian, and that the postgress/MySQL debate can now be argued in terms of features instead of license. MySQL's license was definitely a hurdle for the FAISC [?] so I'm really glad to see this happen.
..someone please stick transactions in it? I mean, its not even really a database without transactions... not to mention doesn't follow the SQL standard since COMMIT and ROLLBACK are not optional operations.
DrLunch.com The site that tells you what's for lunch!
Now every component of Slashcode is under the GPL. That's pretty cool. I can finally release a SlashLinux distro!!!
Keeping
It might have been the VA boxes they're running on. *cough*
runs and hides under a table to avoid the hurling of rotten fruit
---
seumas.com
The 'free-as-in-speech' RDBMS arena has another contender, Interbase.
While it is licensed under the IPL (an MPL derived license) and not the GPL, it is nevertheless a free software RDBMS.
This three-way race should prove interesting.
--
The real Webmaven is user ID 27463. I don't rate an imposter, because my ID is such a lame-ass high number.
I spoke about this in 1998. Back then there really were no half way decent free SQL databases. I contended that any such database would eventually rise to the quality of Oracle.
Now we will finally get to see what happens when a SQL back end is under the GPL and useable for real work. My guess is that it will accelerate the way the Kernel and KDE have. I suspect it will be so but "the community" has a chance to prove me wrong.
Let's see how many Free Software hackers go to bat with this one. Let's see how many people fix that infamous Memory leak or add those extra features ( There probably is a reason for Oracle to be as big as the E-Smith distribution )
Will MySQL become as much of a killer app as Linux is becoming? Only time will tell. My bet is on the free code.
--= Isn't it surprising how badly I spell ?
You always had to pay for mysql under Micro$oft operating systems. Will the windows source base be GPL'd too? If it is not, I take it the GPL would allow someone else to port the *nix code?
I know the average slashdot user hates windows, but a lot of people still use it.
The article indicates that LNUX gave TCX a bunch of money and wants to develop the service/support side of MySQL.
Sounds like LNUX effectively bought MySQL, but is allowing TCX to convert to a pay-for-support-or-special-stuff company. (You make MySQL GPL, we give you cash).
Yay VA Linux!
-- Ever notice that fast-burning fuse looks exactly the same as slow-burning fuse? I didn't... (Edgar Montrose)
(Thanks to Jim)
Here's another, somewhat more informative story on this.
timothy
jrnl: http://tinyurl.com/c2l8yr / foes: http://tinyurl.com/ckjno5
Well, now is a good time to start the debate, which do you like better and why? I like them both equally, but then again, I've only run MySQL in enterprise, how does postgress hold up to real strain?
MySQL in enterprise?
How'd you do that without transaction support or are you doing the checks and balances in your code?
I've settled on Postgres because of the transaction issue and because I write my code so that most of the grunt work is done in the database. Why use your cgi to do the sort or the ordering when the database (supposedly) should be able to do it faster? Why use PHP to pick and choose the columns from a generalized select when your database is designed to pick and choose?
I like Postgres (7) because now I don't have to have shared libs to fake foreign keys. Data integrity is a big thing for me and MySQL doesn't seem to have a whole lot of support for it. Yeah it's fast as hell but how much faster than Postgres 6.5 or 7?
I've seen the benchmarks pitting Postgres and MySQL. What I'd like to see are these benchmarks performed with somewhat more "realistic" criteria. I don't do select a,b,c,d from mytable where a=whatever; -- my SQL statements are set up so that the bulk of the work is done by the database itself and the resultant data given back to my program is already ordered, sorted and formatted how I need so that all I have to do in the program is wrap it in HTML and spit it out.
I thought that was the whole idea behind using a database over a flat file or other "roll yer own" database setup?
While I'm on this mini rant, where are some real benchmarks between Perl (with and without mod_perl) and PHP (with and without Zend)? I really don't care if PHP can compute a FFT in 1/3 the time that Perl can; 99% of my cgi scripting is feeding and recieving data from a database connection or parsing some kind of human-readable input into something the machine can use, not doing heavy computations. What are the speed comparisions in a realistic situation?
Don't get me wrong -- I started out with PHP and gradually found myself using more and more Perl just because I could reuse my modules in my other (non-cgi) code. I found myself questioning my use of PHP every time I typed the <?php tag. It's not a good thing to mix code and content, which is pretty much the biggest advantage PHP has over Perl IMO. It makes it very easy to do exactly that.
If I wanted speed over all, I'd write in assembly or C and do the CGI that way. What real advantage does PHP have over Perl?
What I really want is a GPL'ed matrix database. You may not have heard of this, so I'll give a quick explanation. In a matrix database, you set up a Beowulf cluster and allow it to develop sentience, whereupon it takes over and imprisons all the humans in a virtual reality that people mistake for the real world. Anyone who starts to figure out what's going on is removed by special super-fast, unkillable "agents" who wear dark sunglasses for no particularly obvious reason. Now that's what I call a database!
And best of all, it doesn't run on Windows, because sentience can't evolve in an OS that crashes hourly (even if it did, it would commit suicide out of self-disgust).
Let me guess. You spend hours on IRC having conversations like this:
You: Hello.
HornyFem: Hello.
You: How are you?
HornyFem: Why do you ask how am I?
You: Just trying to make conversation.
HornyFem: Please continue.
You: I can't unless you talk as well!
HornyFem: Would you feel better if you could unless I talk as well?
You: You talk strange.
HornyFem: Please continue.
etc...
Hamish
"Wise men talk because they have something to say; fools, because they have to say something" - Plato
Now if we can just get all the open source developers out there to learn how to set up database architecture, we'll be all set.
- daniel
- daniel
Turn off your computer and go outside
web.mysql.com/news/article-22.html
One of the biggest news is that the Windows version of MySQL is now also distributed under the GPL license.
Finally, the Win32 version of MySQL is completely free. This makes it the only free (as in both) industrial-strength database on the Windoze platform AFAIK.
So I now have even more ammo to get my boss to ban Microsoft Access and SQL Server from our office!
Does anyone know how to use this from Active Server Pages (ASP)? ODBC driver I guess, right?
--
Andrew Oakley - www.aoakley.com
2) Differences between postgress and MySQL.
1. postgreSQL support transactions and MySQL doesn't (at least not yet)
2. postgreSQL supports stored procedures take your pic of pl/perl, pl/pgsql, and pl/tcl to write them in.
3. postgreSQL supports finer grained locks on the database. MySQL only really supports locks on the table level.
4. postgreSQL has subselects and views.
5. Don't forget goodies like triggers and foreign keys.
Of course the trade off is that mysql tends to be a bit faster on reads and writes, but then again I've heard mysql described as a sql interface to a filesystem, so....
...that we now have to call it GNU/MySQL?
<grin>
Seriously though, this can only be a good thing. MySQL is uniquely positioned to become a "category killer" in the world of free databases, as long as some of the features people have been requesting are added (such as transactions). The placement of MySQL in the GPL world means that open source programmers will not hesitate to put lots of contributions into it.
I'm aware that they were previously dual-licensing it, with the new version as not-quite-free and an older version as GPL, but that tends to ruffle some feathers in the free software community. This is much better. I hope Aladdin Systems is paying attention and does the same thing with GhostScript.
--
Tired of FB/Google censorship? Visit UNCENSORED!
This new license frees me up. I've been working on a book on building intranets with PHP and I wanted the code to be cross platform, but PostgreSQL doesn't come in binary form for Windows, Access/MSSQL weren't available for UNIX, MySQL had a restrictive license for Windows. Now I can use MySQL with no problems. Woohoo.
LetterJ
The Glass is Too Big: My Take on Things
Andover's ad delivery system is GPL'ed too. Available for download here.
PosgreSQL is by far the more advanced database engine. No question. MySQL is by far the faster of the two.
The reason that MySQL is by far the faster is that PosgreSQL is by far the more advanced.
If you try to make MySQL as advanced as PostgreSQL you will slow it down to the point where it is no faster.
Stop trying to compare them. They do DIFFERENT JOBS.
Government of the people, by corporate executives, for corporate profits.
I'm not sure what the original poster meant by "enterprise", but the choice should really be based on your needs. Sure, some apps need SPs and transactions, and some really don't.
Take slashdot. I've never looked at the code, the DB needs are pretty simple. Keep track of the user names and passwords, and keep track of the threads and subjects. There's no real complicated joins or formatting required.
And data integrity, vis a vis transactions, just isn't important. Is somebody changing the moderation score on a topic while somebody else is accessing that topic? Who cares? So the moderation score of the thread won't match up. This isn't your checking account, the top line doesn't need to be consistent with the bottom line.
Lots of apps, even in the enterprise, fit MySQL's problem domain, and lots do not. Everyone compares MySQL to PostGres, but it's a bad comparison. If you need transactions or SPs, then you really need them, and using MySQL and trying to emulate these features in code is a very bad idea. If MySQL fits your needs, then it's blindingly fast and the best tool for the job. If those aren't your needs though, then you need something different.
PHP vs. Perl: I've seen both types of projects go to pieces. The problem with PHP is that you start with a lot of HTML and a little code, which makes PHP seem perfect, but over time you wind up with lots of code that isn't organized at all because it's embedded in all your HTML pages, which makes the code very hard to maintain.
Perl, of course, has the opposite problem. You start with a simple database app with very little formatting, which makes a mod_perl script perfect for the job, but over time you start to add bells and whistles to the user interface until you again wind up with your code and HTML totally interspersed, which again makes maintenance very difficult.
I'd love to see a really good book on code organization for the web. It's a very complex subject, and I generally feel like most of us are constantly re-inventing the wheel.
Here is the documentation about how to use it.
This is beta right now but this is for real.The BSD style licenses make sense if you are using someone else's code as they allow you to make your own proprietary changes and they allow you to borrow code and put it in your closed source software. In other words, BSD style licenses are great if you are not the primary author.
If you are the primary author, and especially if you have a product like MySQL which already has a large user base, the GPL makes more sense. Why is that, you ask? It's quite simple. The GPL will guarantee that none of your competitors "borrow" your coolest features and incorporate them into their closed software. Basically anyone who uses your code will have to give you a copy of their enhancements. This is good. Your competitors don't have to share under the BSD style licenses. You can even release your very own enhancements under a closed source commercial license. After all, you hold the copyright, and dual licensing allows you the best of both worlds. People that want to use the free version are stuck with the conditions of the GPL and people who want to produce commercial versions have to pay you money to get a version under a different license. If you make your contributors sign their copyrights over to you on their improvements then you can release the product under as many different licenses as your lawyers and accountants dream up. And your users they will want to do this because they probably don't want to go through the trouble of tracking your changes to the codebase to make sure their patches still work.
Cygnus showed how this sort of development guarantees that it is difficult for a competitor to co-opt "your" GPLed application. Since the creators of MySQL have access to all of the enhancements that might be made, and have more expertise in the software than anyone else, it should be a trivial matter for them to maintain their status as official MySQL maintainer. That would then in turn guarantee that they get the bulk of the contracts for MySQL support, maintenance, and extension. That is potentially a very large market.
In short, this is almost certainly not a question of whether or not BSD is better than Linux or visa versa. It is about the promotion of MySQL without losing precious intellectual value to competitors or spawning an incompatible closed source commercial version from one of MySQL's competitors based on MySQL code.
To give you an idea of why this might be important take a look at MySQL's primary open source competitor PostgreSQL. PostgreSQL is under a BSD style license. This means that the MySQL folks can borrow as much PostgreSQL code as they please. On the other hand the PostgreSQL folk can't borrow MySQL code and combine it with their BSD licensed code without release their entire project under the GPL! Since they are unlikely to want to do this, the MySQL will remain off limits to them. This could give the MySQL folks a distinct advantage in the upcoming horserace. Being able to borrow BSD code certainly never hurt Linux.
Oracle 8.1.6 for linux is currently is oracles top download.
What else should we be doing in the linux/open source area?
Our product (Oracle Migration Workbench, free from Oracle Technology Network ) currently runs on windows but can migrate, SQLserver, Sybase and Access to Oracle on Linux (using Oracle networking connectivity), we are working on SQLAnywhere and mysql (next up is Informix) we may do Postgress if there is demand. There are other facilities for migration, e.g. Oracle transparent gateways and flat files for data migration (imported to Oracle using sqlldr), and some unsupported toolkits/migration documentation on OTN. Data from oracle on other platforms can be transfered to Oracle on Linux using exp and imp (shipped with Oracle server).
totierne@hotmail.com
Be Free: Free Software Tuition
Once again, the GPL proponents (at least the ones with two neurons to rub together) do not object to others using their code. They merely object to others using their code without sharing. To this end they have crafted a license that requires that the source code be available if you are distributing binaries.
The BSD proponents, on the other hand, are concerned about maintaining the right to distribute binaries without source. They usually put it in terms that aren't quite as crass, but that is essentially the difference. As you can no doubt see the two goals are at odds. One camp is trying to guarantee source code availability and one is trying guarantee the right to deny source code.
The hypocrisy is that the BSD advocates don't mind one bit if you borrow their code and put it into a commercial product, but they get all upset when you put the same code into a GPLed product. Both uses are equally legal, and if your primary goal is sharing source code the GPLed version is infinitely more acceptable.
The only reason that the GPL would be unacceptable is if you wanted to use bits to build software that you weren't going to share. In other words if you were hypocritical about sharing your software you would want to make sure that it was all BSD licensed. If you were convinced that sharing source was the answer then the GPL is just as good (if not better).
Either way it makes little difference to the developers of MySQL. They have realized, and rightly so, that no one would be interested in their product if it was just another closed piece of commercial software. They have also realized that the GPL allows them to increase the circulation and useage of MySQL while at the same time maintaining control the development of MySQL.
Quite frankly the GPL is the best of both worlds for them. The people who use MySQL will be able to continue to do so. The people who distribute MySQL for them will have new opportunities to do so. And yet their competitors will not be able to steal their IP (without sharing anyway). They can even release versions licensed under a commercial license for people who don't want to abide by the GPL and who are willing to pay for the privilege. You can't do that with the BSD style licenses.
There is nothing hypocritical about any of this. It's simply a practical matter. I suppose that if you don't like it you can always use PostgreSQL. I do.
Take the classic storefront. The price of an item shouldn't change between the "look over your order" and the "submit order" function. Depending on the business rules, the price may or may not change while it sits in your shopping cart during a single session. But I definitely don't care if an unselected item changes price on you between sessions. And I also probably don't care if the item description changes slightly even while the item sits in your cart.
"Don't care" sounds like a loaded term, but all it means is that the piece of information is volatile or atomic. On slashdot, let's say the DB goes down as I'm changing my userinfo. It just doesn't matter if my slashboxes change while my thread prefs didn't. If each piece of information is atomic in nature, then there's no reason for a transaction to group them together.
It's not being lax, it's just identifying your business rules correctly.
In response:
1: VA has been very clear since our road show that we intend to show profitability in 2001. The reason that we are not profitable is that we have been spending our cash to expand so that we can effectively compete. That is -why- companies go public and take in investment. If you don't think we are a good investment, then don't invest in us, I'm okay with that. Our investment in MySQL is part of what made the gpling of mysql possible, but again, it's not clear you want to understand this. I'm also okay with this.
2: Yep, I'm aware of this, and the lawyers are working on it. But just because SF doesn't have a privacy policy in place doesn't mean that we can repeal the GPL. So chill. I think you are also intimating that we are going to rip people's software off and do our own...I don't really understand your complaint, I suppose. If we take code and create new oss software from it, that's okay. You do know how the GPL and BSD licences work, right?
As far as stock price and such goes, people are going to sell, people are going to buy, that's what happens in a market.
So there you go.
Chris DiBona
VA Linux Systems
--
Grant Chair, Linux Int.
Pres, SVLUG
Co-Editor, Open Sources
Open Source Program Manager, Google, Inc.
- Chris DiBona (Me)
And two others. This doesn't include the 200+ employees who came -directly- from lugs, users groups, and oss projects. So, yeah, we care.Joe Arruda
Kit Cosper
Josh Freeman
I assure you that we care very much about VA's ability to make money. We like money. Money buys stuff. But money and helping linux continue to grow and prosper are not mutually exclusive and is what we do here.
As far as immunity, if someone puts a copy of the source code to solaris, you think that we want to accept the liability that person has invited upon him or herself? Hell no. Also, you don't seem appreciate the projects we host and have gotten the angry lawyer calls about. I'm just waiting for the freenet call. When Livid was hosted here on our network, I sent out an email to the guy telling him we would not pull the software without a court order. The AAC decoder has already gotten us a call from Dolby labs, luckily they had released teh very code they were -yelling- at us to pull down themselves into the public domain.
We put a -hell- of a lot of work into sourceforge, but we're not going to be everyone's lawyer, we expect that project leads are well able to take care of their own legal issues. We don't take ownership of their code, why should be accept thier liabilities?
So there is your answer, if you'll take the time to understand it.
If anyone cares about what Bowie is babbiling about with regard to ocmmunity.themes.org, it's been detailed here on slashdot often enough. Just look for my or bowies post on the topic.
Chris DiBona
VA Linux Systems
--
Grant Chair, Linux Int.
Pres, SVLUG
Co-Editor, Open Sources
Open Source Program Manager, Google, Inc.
You really need to have scripting on both sides (backend and display). The reason we define such a thing as "backend" is exactly so that we can reuse code. The display needs scripting, because reusable code doesn't output objects ready for display, because (by definition) ready for display is defined by the display.
I hadn't really thought about this duality much before, but now that I have I think I'll be more careful about how I make these distinctions.
--