Forgot your password?
typodupeerror
Databases Programming Software GNU is Not Unix

Is MySQL Planning a Change of Tune? 403

Posted by CowboyNeal
from the license-switcheroo dept.
Iggy writes "After reading the article on 'The MySQL License Question' by Timothy R. Butler at Open for Business I just have to wonder, is this company's wording on the MySQL site indicating the company is backing away from Free Software, specifically, the GPL? Great reading and certainly thought provoking."
This discussion has been archived. No new comments can be posted.

Is MySQL Planning a Change of Tune?

Comments Filter:
  • by Anonymous Coward on Monday August 16, 2004 @08:58PM (#9986666)
    Like a lot of us are. Their interpretation is a bit off and I'm sure they'll correct it.
    • by cbrocious (764766) on Monday August 16, 2004 @08:59PM (#9986672) Homepage
      I disagree. I think that they're using legalese to try and mask that they're moving away from true F/OSS. It's been happening for a while now.
    • MySQL AB Comments (Score:5, Informative)

      by martenmickos (467191) on Monday August 16, 2004 @11:07PM (#9987564)

      Thanks for all the feedback!

      Let me here present the background logic behind our licensing policy and software policy in general.

      MySQL AB is probably the world's largest company that has published all its software under the GPL licence. Over the years we have expanded and developed the business that David Axmark and Michael "Monty" Widenius started in the 90's.

      Thanks to our business model, we have been able to hire more developers and make more code available under GPL. For instance, last year we acquired a highly advanced clustered database from Ericsson which we made available under GPL for the free and open source software (FOSS) communities in the world. Monty and David continue to be in the driving seat in these issues.

      While being fully committed to FOSS and to GPL, we get more and more enterprise customers who want us to provide commercial licences and commercial services. They also want easy guidelines on open source licensing and when to do what.

      In our attempt to make open source licensing easy to understand for enterprise customers who know little about the topic, we clearly have stated things that have upset those who know the licensing in detail. My apologies for this.

      I hope you will have understanding with this, and that you will appreciate that we listen to you and make changes as we go. For instance, a misfortunate wording regarding "distribution" and more specifically "internal distribution" has now been removed from our licensing pages.

      But more feedback is welcome, because open source licensing just is not easy to explain. If you have a better wording than we have come up with, please let us know.

      It is interesting to debate licensing issues, and we do want to do it right. At the same time, we continue to experience that most practical situations are for the most part clear. FOSS projects and use of MySQL clearly falls under the GPL, and enterprise customers invariably want a commercial relationship with us. There undoubtedly is some gray zone, but it is not enormous, and we do all we can to sort it out.

      I'd say that our FOSS Exception (which admittely took time to author) is a great example of removing gray zones and impossible situations. Some open source licences are by definition incompatible with each other, but with our FOSS Exception we have made sure that MySQL under GPL can live side by side with open source software of other licences.

      There is much more to write on the subject, but I will stop for now. Feedback continues to be very much welcome - publicly or directly to me (I am sure you can guess my email address).

      Marten Mickos, CEO, MySQL AB

      P.S. Sometimes I see comments about our VC financing and where that may lead us. Here is some info for the interested reader: We brought in some 13.5 million euros last year in venture funding. As of today, we have barely touched the money. We are growing fast, but we don't want to grow too fast and risk losing the unique culture of our company. Monty and David and the other founders continue to be the biggest owners in the company. And to be on the safe side, we have made sure through a shareholders agreement that all shareholders stay committed to our open source / free software philosophy. I would claim that MySQL AB could serve as an example of how open source and VC funding can work well together. And I hope the world will see a whole armada of successful open source businesses in the next years. The market is in need of disruptive technologies, and this community has them.
      • Re:MySQL AB Comments (Score:5, Informative)

        by Hobbex (41473) on Tuesday August 17, 2004 @01:43AM (#9988382)

        The only valid complaint here is that your marketing person claimed that connecting to the database via a socket was a "grey area" in regards to linking. It is not a "grey area", and never has been - doing so makes the client no more of a derivative work then IE is a derivative work off Apache. Claiming otherwise is downright deceitful.

        • Re:MySQL AB Comments (Score:5, Informative)

          by martenmickos (467191) on Tuesday August 17, 2004 @02:15AM (#9988484)

          Thx for the comment. We (MySQL AB) are not the judge on this. Therefore we are careful not to make statements that may be oversimplifications, as that may mislead our customers. Our comment on connections was based on the GPL FAQ on FSF.org:

          http://www.fsf.org/licenses/gpl-faq.html#MereAggre gation [fsf.org]

          It says this (boldfacing by me):

          "What constitutes combining two parts into one program? This is a legal question, which ultimately judges will decide. We believe that a proper criterion depends both on the mechanism of communication (exec, pipes, rpc, function calls within a shared address space, etc.) and the semantics of the communication (what kinds of information are interchanged)."

          and this:

          "By contrast, pipes, sockets and command-line arguments are communication mechanisms normally used between two separate programs. So when they are used for communication, the modules normally are separate programs. But if the semantics of the communication are intimate enough, exchanging complex internal data structures, that too could be a basis to consider the two parts as combined into a larger program."

          But, again, lets remember that only a court of law can take an affirmative position on this. FSF and MySQL AB can only provide their best advice and their presentation of their intent.

          Please also note that we are very happy when our users use MySQL under the GPL (as /. does!), but we don't see it as our responsibility to provide a detailed legal analysis to every user. We proudly think we have done a fantastic deed in licensing MySQL under the GPL in the first place, and we think it is only fair for us to assume that the free software / open source community needs little help in coming to terms with the GPL.

          I hope this sheds some light on our logic. Many people look to us as the foremost authorities on the GPL. But that's not what we are. We are a software development organisation that provides software to the FOSS community and to commercial users, and that provides additional commercial services to the commercial users. We hope we can be a role model for other open source developers who want to stick to their FOSS principles and ALSO build a great and lasting business.

          Marten
          • Re:MySQL AB Comments (Score:5, Interesting)

            by jadavis (473492) on Tuesday August 17, 2004 @03:02AM (#9988634)
            Correct me if I'm wrong, but aren't the client libraries licensed as GPL?

            This makes it difficult to develop an application with MySQL support, even under a FOSS license like the BSD license, without paying for a commercial MySQL license. Merely providing a MySQL database driver seems to violate the GPL if the application is not GPL.

            As I understand it, this is more restrictive than even proprietary databases. As evidence I point out that PHP includes many database drivers (proprietary and FOSS), but does not bundle the MySQL one anymore.

            Also, it creates a significant "grey area" when your language of choice (e.g. PHP) provides a driver. Must the PHP app then be GPL as well?

            Am I being confused by FUD or are these real points of confusion and concern?

            I am really only concerned with the client libraries. I'm certainly comfortable with the server itself being GPL, and I am grateful to MySQL AB for contributing so much code in a FOSS license. Client libraries are often LGPL, and it confuses me when MySQL AB does not follow that norm.
    • All the more reason to use FirebirdSQL or PostgreSQL
  • First Useful Post (Score:3, Insightful)

    by HappyPerson (525201) on Monday August 16, 2004 @08:59PM (#9986671)
    Consistency in licensing is important, whatever they choose I hope they stick with it.
    • by borgdows (599861) on Monday August 16, 2004 @09:01PM (#9986681)
      Consistency in a database is important too, whatever they choose I'll stick with Postgresql.
    • Someone help me out, i've poked about in the GPL and *think* i understand what it means, but what happens when:

      a package is released GPL style, then the devs decide that's not exactly what they wanted and decide to change the license....er, what happens then? Are the old versions still under GPL? Is the new code, regardless of the newly chosen license still bound to the GPL since it's based on the older code? What about re-writing all the code new - that wouldn't be covered, but how close is too close to
      • Once they've released code under the GPL, it is always under the GPL. But, because they are the original copyright holders, they may also release it under any other licenses as they see fit (and in this case, MySQL does just that). They could also make a newer version using the old code and not release it under the GPL, since again, they are they copyright holder.

        Where this gets dicey, though, is if MySQL contains any code which is owned by someone else. For example, if I make an improvement to MySQL, and

        • by joeykiller (119489) on Tuesday August 17, 2004 @12:50AM (#9988145) Journal
          Strange quirks like this are one of the reasons why the FSF asks people to give the copyright of code over to them rather than to have all of the individual programmers retain copyright.
          I think the FSF only asks this for GNU products, not for every GPL product that exists.

          Isn't FSF's asking people to give them the copyright just the same as MySQL does, the only difference being thar MySQL is a commercial entity?
      • Email the FSF (Score:3, Informative)

        by Short Circuit (52384) *
        Maybe you should email the FSF [mailto]. They're the gurus on all legalese GPL.
      • by YOU LIKEWISE FAIL IT (651184) on Monday August 16, 2004 @09:29PM (#9986851) Homepage Journal

        I'll give you my reading, because the other followup didn't catch all your questions:

        You are welcome to license your new versions or the same version under licenses other than the GPL, because the GPL is non-exclusive. You can re-license the original code to yourself, if you feel like getting that far into it, under any license you like. What you cannot do is revoke the GPL rights on copies already distributed. This parallel licensing, where projects are released under the GPL and then sublicensed to private entities under non free licenses in exchange for bling is probably ( imho ) the best way to make money on a free software project.

        Anyone else have a better grasp of the issues?

        YLFI
        • I'll give you my reading, because the other followup didn't catch all your questions:
          Thanks, because right now Open for Business' server should be renamed Closed for Business (slashdotted).
        • by lspd (566786) on Monday August 16, 2004 @11:13PM (#9987606) Homepage Journal
          This parallel licensing, where projects are released under the GPL and then sublicensed to private entities under non free licenses in exchange for bling is probably ( imho ) the best way to make money on a free software project.

          Horse-puckey...

          It's a conflict of interest that consistently leads to abuses.

          In the present case MySQL is pretending that GPL software is basicly non-commercial use only. It's a straight out lie, no matter how they dance around the issue. The Free Software Foundation is being very kind in stating that MySQL "marketing literature" isn't their concern.

          MySQL AB isn't alone though.... Trolltech advances the idea that software you create using the GPL version of QT can't be reused in a commercial product. Their wording is careful, but the idea is wrong. You own the code you write, regardless of what libraries you used. Remove those libraries and you can do whatever you want. Their dual-licensing has also resulted in Linux PDAs which can't be synced to Linux desktops. Way to go...

          PHP-Nuke has tried to pretend that various bits of code and advertising constitute a license declaration under the GPL. Basicly, GPL == adware. It's nonsense. Moreover, the PHP-Nuke advertising makes no mention that PHP-Nuke is itself a fork of Thatware.

          ReiserFS, like PHPNuke wants to pretend that GPL software is adware for commercial products. Hans flipped out when Debian trimmed the marketing spiel out of mkfs.reiserfs. It's obviously not the intent of the license text clause of the GPL to advertise the benefits of non-free versions of GPL software.

          Dual licensing is a bad idea. The only way you sell the commercial version is to make the GPL version unfriendly to business. Since the GPL was intended as a business friendly license, you're forced to misrepresent the GPL to sell licenses. If you want a dual-licensing business, don't use the GPL as the free license. Pick something that lets everyone know, from the get-go, that you're a commercial house intent on selling commercial software.
      • by conradp (154683) on Monday August 16, 2004 @10:09PM (#9987124) Homepage
        IANAL, but...

        Firstly, certainly all previous versions of the software licensed under the GPL can continue to be used under the GPL.

        Secondly, if the copyrights to the software are all solely owned by one company or by a small group of people then they can re-release the software under as many different licensing schemes as they want. They own the copyrights to the code, so they could decide to make all future versions of the code closed-source, or whatever. Anyone in the free software community would be free to create a "forked" version of the software based on the last GPL version and continue to develop it independently and release it under the GPL.

        Thirdly, if the developers have accepted contributions from GPL folks without also getting ownership of the copyrights to the contributed code, then they probably are not allowed to take the current code based and make a version of it with any license that's more restrictive than the GPL, since the only license they have to the other people's code is the GPL itself, which forbids adding restrictions.

        Finally, this is all a red herring in this particular case because the MySQL folks are just publishing their take on what the GPL means on their web site - they're not actually adding any restrictions. Of course, any company that sells software for a living will bias the explanations of the GPL on their web site as far as they can towards making you think that you have to buy their software, but the real license is still the GPL, and their "interpretation" of the GPL holds little or no legal standing.
      • Well, for them to change the license, they must have the copyright on that code (or the consent of all those who do hold copyright on it).

        From then on, they can license it however they please under any license they see fit.

        However, what was GPL'd *stays* GPL'd, so you can restart a fork of it with all new developers if you so choose. Also, if you have many copyright holders (e.g. as with Linux), you effectively cannot change the license, because it would probably be impossible to get the consent of enoug
    • Me too!

      I'm going to snag the sourcecode right now. but probably will use the fork that is created the very second they pull that trick.

      That's the great part about the GPL, they can try and take their ball and go home, but as long as I have a snapshot of how the ball is made, I can make a LumpySQL that will seamlessly replace theirs and continue along happily.

      I dont care what they do, they cant take mySQL away from me.

  • Strange really.... (Score:3, Insightful)

    by tarquin_fim_bim (649994) * on Monday August 16, 2004 @08:59PM (#9986673)
    This has been in the offing for sometime now, why would anyone chose MySQL over PostgreSQL if they had to pay for it? It may be faster but it does little more than can be done with a flat text file and Perl. Suicide.
    • Those were more or less my first thoughts as well.

      If the F/OSS world loses MySQL, and there isn't a satisfactory fork of the GPLed version, why wouldn't we all switch over to the superior power of PostgreSQL?
      • Ah yes... you ask the question that can only be answered in a way that must be marked as Flamebait...

        Because, unlike MySQL, PostgreSQL is a real RDBMS. It didn't kludge things into the main system like the InnoDB/MySQL fiasco. It supports a MUCH, MUCH more powerful, rich subset of SQL. It does, basically, what a RDBMS should do, whereas MySQL only does as much as it needs to get by.

        Interestingly, this gave MySQL a niche in the small/medium website market. People who couldn't justify the complexity of earl

      • by Tassach (137772)
        Because there are a whole lot of stubborn idiots out there who think that MySQL is the be-all and end-all of databases and refuse to learn anything else. Fanboy mentality instead of solid engineering practices.
        • by EvilTwinSkippy (112490) <yoda@etoyEULERoc.com minus math_god> on Monday August 16, 2004 @09:26PM (#9986835) Homepage Journal
          It's not that I "refuse" to learn anything else. It's that 3 years ago when I started my project I needed replication THEN. I needed a windows port THEN. I needed TCL bindings THEN. And I'm not going to re-write 250,000 lines of code because someone tells me my perfectly working system is inferior.

          And you guys are yelling awful loud to have anything meaninful to say.

          • by fitten (521191)
            Heh... I'd be surprised if your system works "perfectly".

            If you have to rewrite 250,000 lines of code just to change to a real RDBMS, your code must particularly aweful. We typically isolate all database specific code in appropriate classes and stored procedures (after all, that's one of the things stored procedures are for... to help abstract the database specific code from the rest of your code) and it isn't bad at all to port to a new RDBMS, as long as it has the features we need (referential integrity
      • why wouldn't we all switch over to the superior power of PostgreSQL?

        Documentation.
        At first, anyway.

        I don't do a great deal with databases, but I did briefly look at using them alongside PHP a year or two ago. The majority of resources I looked at (both online and dead-tree) covered accessing a MySQL database to the exclusion of anything else. There were references to other databases, but no actual details on how to use them.
        A quick check on Google reveals that not much has changed. Default "How to u

    • by Jack9 (11421)
      So how long before you give me a MySQL equivalent Perl script? Right. People would choose MySQL for speed and ease of administration (not hard to "administrate" a flat text file over a RDB), like always.
    • by rokzy (687636)
      did Xfree/X.org teach (or even remind) them nothing?

      fools! those who do not learn from history.... etc.
    • flatfile and perl equal to mysql?!?!? I don't think so. However, mysql vs. postgresql is getting more interesting by the day. Fortunately since I use perl's DBI interface I don't have to change much in my programs to switch to postgresql if I need to jump ship. ;-)
    • As one of those sickos: yes I would actually pay money to use MySQL. In high-volume web transactions speed is everything, and you trust your backend to do nothing.

      I get around most of mySQL's "limitations" in TCL.

      • I get around most of mySQL's "limitations" in TCL.
        Really? Please tell me how to implement atomic transactions and stored procedures in TCL. Please tell me how you reliably guard against SQL injection attacks using TCL.
    • It may be faster but it does little more than can be done with a flat text file and Perl. Suicide

      Oh really? I'd like to see someone run a major MMORPG off of a flat text file and Perl. Mythic's "Dark Age of Camelot" uses MySQL on Linux for its database.

    • by RedPhoenix (124662)
      > why would anyone chose MySQL over PostgreSQL if they had to pay for it?

      Good question. At the moment, the things that are keeping me from switching over, are:
      * Unbuffered queries
      - When you're returning a result set that might be (literally!) gigabytes in size, storing the results in RAM is unfortunately, not an option.

      * MYSQL's optimised count() function.
      - "Select Count(*) from table" is very fast on mysql due to internal jiggery-pokery. Postgres is a touch slower unfortunately.

      * Insert LOW_PRIOR
  • PostgreSQL (Score:4, Insightful)

    by thammoud (193905) on Monday August 16, 2004 @09:03PM (#9986698)
    People will switch to PostgreSQL faster than the MySQL folks can type GPL back into the license. They will be crazy.
    • Forking? (Score:5, Interesting)

      by headkase (533448) on Monday August 16, 2004 @09:07PM (#9986716)
      Couldn't anyone create their own fork from the last GPL'd source?
    • Re:PostgreSQL (Score:5, Insightful)

      by BiggerIsBetter (682164) on Monday August 16, 2004 @09:28PM (#9986845)
      There's only one thing that I like about MySQL... SAP-DB. - er, MaxDB, and even that's sufficiently different from MySQL database to avoid the whole PHP/FanBoy mess. However, Postgresql is "good enough" for 90% of apps. Oracle is certainly good enough for the remaining 10%.

      I reckon that now that MySQL is dealing with one of the big boys (SAP) they think they're the shiznit. They think they have the PHP and web server-side arena sewn up, so now they're trying to assert themselves in the larger market.

      Roughly put, they're setting themselves up for a fall. MySQL database might be owned by a company, but it was tested and supported by the wider community. If MySQL starts screwing with their supporters they'll lose them to Postgresql, Firebird, or whatever. Much of the software using MySQL is opensource, and it can be ported to another database just as soon as the need is there.
  • Nothing new here. (Score:5, Informative)

    by Anonymous Coward on Monday August 16, 2004 @09:05PM (#9986705)
    You've always been able to buy a commercial MySQL license for a commercial app. Personally, I'd be using PostgreSQL for any serious database work in any case (assuming Oracle or other commercial database isn't a requirement) -- it's much closer to what I'd expect from a database than MySQL.

    Nothing to be concerned about here, folks. Move along. Move along.

  • by Anonymous Coward on Monday August 16, 2004 @09:06PM (#9986713)
    If they change the license, can't we just fork from the last GPL release?
    • by VirexEye (572399) on Monday August 16, 2004 @09:18PM (#9986788) Homepage
      The classic "farewell and fork you!"
  • Well... (Score:5, Insightful)

    by joseph schmo (223532) on Monday August 16, 2004 @09:07PM (#9986718)

    I can't get to the article (/.), but assuming this is not FUD:

    With all the "Postgres is so awesome" stuff I keep reading (well okay, mostly on here), if MySQL backs away from open source, it could be the beginning of the end for them with "the geeks" (ie. us).

    I'm not that familiar with Postgres, but I just checked and their website says:

    The above is the BSD license, the classic open-source license. It has no restrictions on how the source code may be used. We like it and have no intention of changing it.

    Sounds good to me!
  • Good for them... (Score:5, Interesting)

    by SnapShot (171582) on Monday August 16, 2004 @09:07PM (#9986721)
    If a prorietary software vendor wants to package MySQL with their product I'm glad MySQL AG is getting a few bucks out of it.

    It doesn't seem to negatively affect the free software developers.

    I've always liked the idea that you could release a product under a Free license but keep the option to sell versions to companies as well.

    I realize that this doesn't answer the question of whether the GPL itself allows this kind of dual license but it seems to me that TrollTech does something similar and that has never bothered me either.
    • Re:Good for them... (Score:5, Interesting)

      by AKAImBatman (238306) <akaimbatman@[ ]il.com ['gma' in gap]> on Monday August 16, 2004 @09:23PM (#9986811) Homepage Journal
      See, here's the problem. MySQL AG seems to have reinterpreted the GPL to mean that any use of their software means that your software should be open source. Run a small website with the MySQL database? If all the source to that site is not GPLed, you're in violation. That's despite the fact that your site should be a clear and separate product from MySQL.

      MySQL has made sure to cement their interpretation in two ways:

      1. They "purchased" the LGPL JDBC driver and relicensed it as GPL. This ensures that physical linking will occur with their software (and thus the warning in the article about "circumventing" the drivers).

      2. They keep their own variation of SQL (with the #$^@ing backticks) so that software must be designed for use with MySQL. While some of us use config files on a per driver basis, many software developers have fallen for the bait and tied their software to MySQL. Doing so invalidates certain GPL clauses that may allow you to get around the "linking" issue.
      • Re:Good for them... (Score:2, Informative)

        by flupps (193729)
        They keep their own variation of SQL (with the #$^@ing backticks) so that software must be designed for use with MySQL.

        You can still use the doublequote if you run with

        --sql-mode="ANSI_QUOTES"
    • I realize that this doesn't answer the question of whether the GPL itself allows this kind of dual license

      Hasn't hurt Ghostscript [artifex.com] that I'm aware of.
  • It's MySQL (Score:5, Funny)

    by Anonymous Coward on Monday August 16, 2004 @09:10PM (#9986739)
    not YourSQL.

    If they wanted you to own it, they would have named it that way.

  • Great! (Score:4, Insightful)

    by The AtomicPunk (450829) on Monday August 16, 2004 @09:13PM (#9986761)
    PostgreSQL gets another boost! :)

    Seriously, if you haven't used PostgreSQL, consider it for your next project. I use both, but have ended up using PostgreSQL a lot more. It's a much more serious database, and really isn't any more difficult to setup and manage than mySQL.

    8.0's introduction of point-in-time-recovery is going to be a huge boost to enterprise applications of PG!
  • This is a gray area I think. If you are distributing, then people are getting your software. At what point does a distribution system cross the line from interal to beyond? Seems that it is a slipery placeto be since leaks could happen very easily, especially with larger companies and corporations. Could you defend you position that you did not want to distribute a program by branding the souce code and binaries with warning like "FOR INTERNAL USE ONLY -- DO NOT DISTRIBUTE"?
    • Could you defend you position that you did not want to distribute a program by branding the souce code and binaries with warning like "FOR INTERNAL USE ONLY -- DO NOT DISTRIBUTE"?

      You've obviously never worked on a classified project.

  • by deathcloset (626704) on Monday August 16, 2004 @09:17PM (#9986781) Journal
    TheirSQL

    *snicker snicker*
  • There are others to take its place, that will never have such license issues ( like berkeleyDB, or postgresSQL )
  • License of MySQL (Score:2, Insightful)

    by shawn_f (620177) *
    Well, if MySQL decides they need to change the license, then fine...I am sure they will loose some users, but it will not be their downfall. Perhaps they could something like http://www.bb4.net/ [bb4.net] has done, where they have a fairly functional free, version, which is still open source, and a "professional" version which has some additional features and support. Really not a bad idea...

    MySQL is a great product, as well as Postgres, but a change in licensing for MySQL will not be as bad as it may sound...
  • by SQLz (564901) on Monday August 16, 2004 @09:19PM (#9986792) Homepage Journal
    Changing the license at this point will hurt mySQL bad. Postgres has some big backers now and is already more feature rich than mySQL. Take it form me, I was a mySQL addict and then my boss introducted me to Postgres. I look at mySQL as a kids toy now.

    I can't wait till 8.0 when I can start writing my stored procedures in Java. W00t.
  • Error in Logic? (Score:2, Insightful)

    by Anonymous Coward
    Wait, wait.

    MySQL is licensed with a "dual licensing scheme":

    1. If your product talks to MySQL, you must release it as GPL.
    2. If you don't want to GPL your product, pay MySQL $450.

    So... according to the GPL, can't I fork the GPL version of MySQL, not change a thing, and allow companies to use "HerSQL" for free, keeping "HerSQL" as GPL?

    Further, don't a lot of web applications that are not GPL interface with MySQL? Doesn't this violate their license?
    • Re:Error in Logic? (Score:3, Insightful)

      by EvanED (569694)
      So... according to the GPL, can't I fork the GPL version of MySQL, not change a thing, and allow companies to use "HerSQL" for free, keeping "HerSQL" as GPL?

      Yep.

      Further, don't a lot of web applications that are not GPL interface with MySQL? Doesn't this violate their license?

      It's in the gray area. A bit closer to the "okay" side than, say, Java's dynamic binding (which is another 'can we combine GPL and nonGPL code). That's what the guy is talking about in the article about developers should abide by
  • by RWaye (778934)
    Now, I am not sure if this is true, but since MySQL is GPLed, doesn't that mean that they have some freelance programmers that contribute to the project? If they leave the GPL, that may encourage a devolper move to Postgre, helping it become a better DB.
  • by ttfkam (37064) on Monday August 16, 2004 @09:23PM (#9986807) Homepage Journal
    It went on and on about how much they like the GPL over all other licenses. I'm no MySQL fan, but for fuck's sake...

    That said, this statement made me chuckle a bit:
    The main point he made to us is that his company believes "strongly in Open Source." The company has actually tried to increase the freedoms provided by the GPL, Urlocker asserted, with the "MySQL FOSS exception" that allows some Open Source Initiative approved licenses, that are incompatible with the GPL, to still make use of the GPL licensed version of MySQL.
    Let me get this straight. Because it allows linking with PHP and Apache -- two systems which incidentally are fundamental to MySQL's continued success -- this is proof of their love of free software and freedom? Call me cynical, but it sounds more like proof of their love of avoiding irrelevance.

    Can you imagine?

    MySQL AB: We are pure GPL!
    Developer1: Isn't the GPL incompatible with the Apache/BSD style of license?
    Developer2: According to the FSF it is.
    Developer 1: Aren't the Apache web server and PHP under Apache/BSD styles of license?
    Developer 2: PHP used to be GPL, but yeah, now they're both like that.
    Developer 1: So if I sell a complete package with all three, I'm legally in trouble?
    Developer 2: Looks like it.
    Developer 1: Well, I guess I'll install PostgreSQL then.
    MySQL AB: MySQL FOSS exception!
    Developers 1 and 2: Wow! What nice guys. They're really sticking their neck out for us on that one. Thanks!
  • by fishdan (569872) * on Monday August 16, 2004 @09:24PM (#9986817) Homepage Journal
    I'm not saying that MySQL is the greatest thing since sliced bread, but Open For Business [ofb.biz] makes their living off of commenting on FREE software, which MySQL is not, nor has every really claimed to be. They sell advertising. They have a financial incentive to claim that

    the sky is falling

    MySQL is going to screw everyone.

    Just because one person's twist on that interview says that MySQL is about to turn evil, doesn;t mean it's true. Read the article, not just the /. headline

    I actually think that the article is very fair, but it's considerably more in depth than most people who only read the /. headlines will know.

  • by Anonymous Coward on Monday August 16, 2004 @09:24PM (#9986819)
    Interviews
    The MySQL License Question
    By Timothy R. Butler
    Editor-in-Chief, Open for Business
    August 13, 2004, 11:15:53 EDT

    MySQL AB's namesake database is a package that many would list among the crown jewels of Free Software. The Swedish company's database has been deployed over five million times by the company's own count. Yet, some, quite legitimately wondered if certain wording on the MySQL site might indicate the company is backing away from Free Software, and, more specifically, the GNU General Public License. We wanted to know if this was an actual concern or simply a misunderstanding, so OfB contacted MySQL AB to find out more information.

    The whole question arose from the text MySQL AB publishes on its web site concerning why one would need to purchase a commercial license for its software. "When your application is not licensed under either the GPL-compatible Free Software License as defined by the Free Software Foundation or approved by OSI, and you intend to distribute MySQL software (be that externally to customers or internally within your organization), you must first obtain a commercial license to the MySQL product," the site explains. At press time, the remark concerning internal distribution had been removed after the commercial licensing page was revised based on user feedback, MySQL AB told OfB.

    At first glance, this might not catch anyone's attention, but after considering it, it becomes apparent that this sounds like stricter requirements than those laid down by the General Public License. For example, the Free Software Foundation's documentation on the General Public License, which they wrote, explains that "[y]ou are free to make modifications and use them privately, without ever releasing them." The document then continues, "This applies to organizations (including companies), too; an organization can make a modified version and use it internally without ever releasing it outside the organization." If this is the case, a company desiring to keep its code private would not need to purchase a commercial license as the MySQL site indicates.

    The information on MySQL's commercial license page also seems to be a bit far reaching when it suggests that one's program must be licensed under the GPL or another Free Software license if MySQL is distributed with the product. A good analogy here is that it is legal for a proprietary web browser to communicate with a GPL licensed web server, and vise versa -- the programs are communicating to each other, but not actually combining code together. In the same way, it is theoretically possible to communicate with the MySQL server either using a third party Free Software tool that allows linking to proprietary packages, such as one licensed under the LGPL or BSD licenses or by developing a proprietary program that can communicate with MySQL through networking protocols. In plain English, this means there are ways that one could have a proprietary program communicate with a GPL licensed program without violating the GNU General Public License. Furthermore, simply distributing a proprietary product and GPL licensed product together is called "mere aggregation," something explicitly permitted by the GPL.

    One developer from a small consulting firm who requested anonymity explained his concerns about the issue and how it had led the company he works for to have all of its clients purchase MySQL licenses out of fear of litigation. "MySQL AB has bent the intentions of the gpl to say that any proprietary application I write that causes my customer to have to install a copy of MySQL, whether or not it uses the MySQL client libraries, must be licensed under [the GPL]."

    We wanted to know if this assertion was correct or if MySQL's site was simply a bit confusing on the point of when licensing is required, so we contacted them. Zack Urlocker, MySQL's vice president of marketing, agreed to answer our questions on the matter.

    The big question we wanted to know was if
  • Free software (Score:5, Informative)

    by Sir Homer (549339) on Monday August 16, 2004 @09:27PM (#9986836)
    The article states that this doesn't effect free software at all. Only commerical software that links to MySQL requires a licence, as it always has been.
    • Re:Free software (Score:5, Interesting)

      by Bastian (66383) on Monday August 16, 2004 @10:37PM (#9987340)
      The issue is that the information MySQL AB puts on their site advising people about which license to choose isn't entirely in sync with what the GPL really states. Basically, MySQL AB is trying to scare businesses who weren't planning on violating the GPL into purchasing a commercial license of MySQL just incase.

      This even comes out in the article when they talk about applications that talk to a MySQL database but don't actually link against any MySQL (or other GPL) libraries being a gray area. There is no gray area in sight on this issue - if there is no mixing of code, the license is not applicable and there cannot be a GPL violation.

      MySQL AB's assertion here is akin to their claiming that you're running dangerously close to violating the GPL when you develop commercial software that runs on GNU/Linux. Yes, your app speaks to GNU software constantly, depends fundamentally on it, and is completely useless without said GNU software, but nobody is claiming you're anywhere near violationg the GPL. It's a pretty damn hypocritical argument for them to make, too, since there is a build of their software that runs on (works closely with) GNU/Linux that they do not release under the GPL. (I consider the GPL and commercial versions of MySQL to be different products because they admit there are minor differences between the two due to licensing issues with the libraries MySQL depends on.)

      I understand that MySQL is trying to secure a profit for themselves, but doing it by scaring folks away isn't going to help very much. They'll get more chance of a profit from me by putting out an effort to implement all of the features a lot of corporate users have come to expect from a bunch of their competitors and being a bit more well-behaved in terms of SQL standards compliance, thus making potential business customers more interested in tightly coupling applications with MySQL in the first place.
  • by Unknown Relic (544714) on Monday August 16, 2004 @09:27PM (#9986843) Homepage
    Let's not forget about the recent changes of the MySQL client to use the GPL instead of the LGPL, since such a change hardly suggests that they're looking to dump the GPL. This change was widely publicised, as it caused issues (which have now been resolved) with other non-GPL open source applications which previously shipped with the client software - PHP being the prime example.

    On the other hand, I do think MySQL really wants to push their commercial license as they "recommend" it for everyone who use MySQL in a commercial environment, even though their dual licensing scheme only requires the purchase of a license if you plan to be distributing MySQL itself. It'll be interesting to see how this all unfolds, but I don't think the GPL version of MySQL is going to go anywhere, at least not for non-commercial users. While commercial users may face stronger "recommendations" to purchase licenses, I don't see any actual changes to the license requiring a license for commercial use without distribution. Doing this would shut out millions of entry level hosting providers, and it wouldn't be long until MySQL's massive market share fell to alternatives such as Postgres or SQLite.
    • by rhaas (804642) on Monday August 16, 2004 @09:39PM (#9986908) Homepage
      I think the change from the LGPL to the GPL was designed precisely for the purpose of forcing more people to purchase commericial licenses. Unless I'm misunderstanding the situation, under the LPGL, you can link your (propriety) code against their libraries without having to distribute your source code. Under the GPL, this is not the case - linking is not "mere aggregation" and you now have to distribute the source, cough up $$$, or stop upgrading MySQL. If they were distributing the code ONLY under xGPL, the change would clearly be an endorsement of F/OSS, but because of the dual license, it seems more like an attempt to restrict what users can do with their software.
  • by davidwr (791652) on Monday August 16, 2004 @09:46PM (#9986944) Homepage Journal
    On my last project, I used OBCD specifically so I could use one DBMS today and I or my in-house customers could replace it with another one later with minimal effort.

    There are other ways of doing the same task, such as using wrapper functions for your DB calls.

    This approach isn't appropriate for every project, but before you start coding, you should ask yourself "will this ever be used on another DBMS, what can I do now to save myself work later, and what will it cost me in terms of schedule, functionality, performance, etc."
  • by justins (80659) on Monday August 16, 2004 @10:04PM (#9987074) Homepage Journal
    I don't think it would be overstating the case to say that "Zack Urlocker, MySQL's vice president of marketing" is either a liar or doesn't understand the application of the GPL with regards to client/server software:
    On the other hand, while Urlocker said the company is not adding restrictions on to the GPL, he felt that attempting to, as he put it, "circumvent" the GPL by communicating with the database using a third-party tool and TCP/IP or another protocol was a gray area and while perhaps following the letter, it was not following the spirit of the General Public License.

    Communicating with a database via "TCP/IP or another protocol," such as ODBC, is not in any way a circumvention of the GPL. This is what ODBC is for, for heaven's sake, there's nothing sneaky about it.

    Following MySQL's moronic licensing innuendo, you would be required to use GPLed software to talk to a GPLed web server. Unfortunately even the unixODBC guy who was quoted didn't make the point that connecting to a database server from a client program (on a remote machine or on the same machine) using ODBC is morally equivalent to connecting from a client program to a web server using HTTP, and so the same rules must apply. The FSF guy didn't make that point either. I can understand why these free software folks feel some need to stick up for each other but someone needs to drive a stake through the heart of all this licensing idiocy, it doesn't help anyone.
  • by ttfkam (37064) on Monday August 16, 2004 @10:08PM (#9987114) Homepage Journal
    Speaking of the new releases made possible by MySQL's dual licensing business model [as though they would stop all development otherwise], Urlocker pointed out that MySQL 4.1 is presently in beta and "should be released for production" within four to five weeks. According to information provided by the company, the new release will feature OpenGIS geographical data support [just like PostgreSQL and Oracle have done for some time now?] and the ability to send multiple SQL statements via a C language MySQL API call and receive the results back at once [yup, even though batch SQL processing isn't all that new, just use our proprietary C API and leave that nasty old ODBC behind], among other additions and enhancements [which by and large have been done by every other database vendor before us].

    MySQL 5.0, the first major update to the product since the MySQL 4.0 "production" release was announced in early 2003, is presently in the alpha stage of development. "New stored procedures and views" are among the features that this upcoming release will include [even though they publicly made a point of telling developers how little you needed them just a short while ago]. Some other interesting features may also make it into the code before the release, but Urlocker said that his company prefers to "under promise and over deliver." [Well they've certainly delivered on the under promise part.]

    This was fun! It kinda makes me want to write a timeline of when MySQL developers would publicly and loudly assert that certain features were not needed and compare it another timeline that proudly announces the formerly useless feature in their newest revision.

    Might be as much fun as reading the MySQL gotchas pages. "Foreign keys only serve to slow database engines down." Wait a couple of years... "MySQL 4: Now with new enterprise features like foreign key support!" Wash. Rinse. Repeat. ...to get the stink off.

    Those who forget the past are doomed to extended use of a debugger.
    • In fairness to MySQL AB, I think they still feel that, for example, foreign keys are unnecessary. I just think they've put them in because they kept hearing "your program sucks 'cuz it doesn't support foreign keys" and (more importantly) "Gee, we'd like to use your product, but we insist that we must have foreign keys so we can't", so they gave in and added them.

      I wonder, though. Any chance PostgreSQL might add a "MySQL-compatible" client library? There seem to be quite a few programs that currently onl

      • by ttfkam (37064) on Monday August 16, 2004 @11:15PM (#9987627) Homepage Journal
        I had thought about that, and the more I thought about it, the more it seemed like a bad idea. Why?

        The bad habits people learned on MySQL would perpetuate. After all, why code for database abstraction if the two main OSS databases share the same API?

        I'd much rather MySQL tightened things up a bit. Optionally of course as I understand they have a large installed base, but I'd like to see the MySQL version of Perl's "use strict". If MySQL did that, I hereby proclaim to all around me that I will no longer bash MySQL. I won't necessarily prefer it to PostgreSQL, Firebird, or SQLite, but I won't flat out trash talk it for being a loose piece of crap data trashcan that silently ignores obvious errors in the name of efficiency while blaming the programmer even though one of its primary selling points is that it's easy for beginners.

        'The fuzzy elephant' is NOT a valid integer nor is it a valid timestamp nor is it appropriate for a varchar field constrained to 10 characters! NOT NULL means "I require a value," not "I'll put the non-specified default in there despite you passing a NULL." It's not like these checks require a great deal of processing power after all. If it made more than a blip on the speed of MySQL, I would be truly astonished.

        Once MySQL's "use strict" is in there, I will accept the mantra that it's the programmer's fault for not using it.
    • by danharan (714822) on Monday August 16, 2004 @11:33PM (#9987740) Journal
      I remember a few years ago, a total nOOb, trying to figure out what's what in the database world. I had read about how we don't really need all those complex features that slow down databases, and believed it.

      Then I worked for a company that required Oracle for its database, because nothing else on the market could possibly handle what they needed done. And they put me to work on some of their stored procedures. ouch.

      I learned what I needed about database normalization, and I realized just how much of a toy MySQL was.

      That they added essential features is great, but that they still think they're unnecessary shows they have NO CLUE what challenges you get in big developments. And if they flip-flopped on the features, will they change the license?

      The most promising db right now for people like me is obviously PostgreSQL. No license hassles is just gravy.
  • by freelunch (258011) on Monday August 16, 2004 @10:18PM (#9987206)
    Funny that the article didn't mention the $19.5 million series B round of funding [mysql.com] received in June 2003...

    That's gotta do something...

  • by greggman (102198) on Monday August 16, 2004 @10:54PM (#9987457) Homepage
    This whole topic reminds me of question to which I've never gotten a good answer.

    One of the supposed benefits of Open Source in general is that lots of people can contribute, add features, fix bugs. This includes the GPL.

    GPLed code and GPLed contributions stay GPLed forever.

    MySQL is GPLed. MySQL sells a commercial license. Do you really believe the commerical version of MySQL has ZERO GPLed contributions to it? No bug fixes from anyone outside AB? No feature additions from anyone outside AB? While I admit it's remotely possible, if there are no outside contributions to MySQL then what's the point of it being GPLed? If there are then it's illegal for them to redistribute a version of MySQL with the GPLed contributions in it under some other license.
    • by Kjella (173770)
      ...if you already have the code base, which is mainly developed in-house. Simply require all contributions to be under dual licence/copyright waiver. Certainly, you're free to create your own GPL fork, but then you're on your own.

      It is not considerably different from most other projects. If you don't like the rules of contributing, fork your own. That e.g. the kernel is GPL, doesn't mean I have any right to get my code in Linus' code tree.

      Kjella
      • It's the other way around, unless your project is internal only you have no right to keep your changes to yourself or the right to require them to abide by any more restrictive rules than the GPL allows for.

        In other words, in order for AB to require you to have a commerical license they would need their commerical version to 100% free of any GPLed contributions. Inserting one GPLed contribution into their code would make the entire thing 100% GPLed and therefore they would have to provide some way of obta
        • In other words, in order for AB to require you to have a commerical license they would need their commerical version to 100% free of any GPLed contributions.

          I'm coming to this discussion a day late, and I can't believe no one has answered your questions, greggman. In any case, here it is: their commerical version is 100% free of any GPL'd contributions. You clearly wonder how a product that huge, with that many contributions, can manage such a thing. It's simple. They do the same thing that the FSF d

  • by cluge (114877) on Monday August 16, 2004 @11:53PM (#9987857) Homepage
    It appears that the folks building MySQL are even MORE pro GPL than a rabid /.er! I know it's hard to believe, but unlike the very bad description of the artcle given above (the sky is falling, the sky is falling) the actual text of the article shows that the company is pro GPL. It isn't backing away from the liscence, but tryng to be sure that users of GPL software uphold that very lisence.

    Whats interesting is that this affects open source, but not necessarily GPL projects. Asterisk [asterisk.org] which use a different lisence have removed MySQL libraries because of this conflict.
    From their documentation:
    "We were recently contacted by MySQL and informed that the MySQL client
    libraries are now under GPL license and not LGPL license as before.

    Since Asterisk does allow exceptions to GPL, we are removing MySQL support
    from standard Asterisk. We will, where appropriate, make it available via
    a separate package which will only be usable when Asterisk is used completely
    within GPL (i.e. not in conjunction with G.729, OpenH.323, etc). We
    apologize for the confusion.


    Is this a case of the GPL being a bad thing?

    cluge
  • I don't think so... (Score:3, Informative)

    by nsandver (82942) on Tuesday August 17, 2004 @05:07AM (#9988964)
    I haven't RTFA yet, but I heard Brian Aker, MySQL's Director of Architecture speak at a local LUG meeting last weekend, and he sure didn't seem to think the company was backing away from the GPL. Quite the opposite. They're getting ready to release some really nice-looking new GUI admin tools, which will be GPL'd. He said (paraphrase), "If you're open source, we're open source, and we'll help you however we can. But if you're using our product in a closed-source way, we have no problem charging you for a commercial license." As I understand it, that's the way they've always been.

"An open mind has but one disadvantage: it collects dirt." -- a saying at RPI

Working...