Slashdot Mirror


Is MySQL Planning a Change of Tune?

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."

403 comments

  1. No, they're just confused by the legalese by Anonymous Coward · · Score: 3, Funny

    Like a lot of us are. Their interpretation is a bit off and I'm sure they'll correct it.

    1. Re:No, they're just confused by the legalese by cbrocious · · Score: 5, Insightful

      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.

      --
      Disconnect and self-destruct, one bullet at a time.
    2. Re:No, they're just confused by the legalese by Anonymous Coward · · Score: 0

      You forget Ninnle Linux. That is free of all licesenseses and is fast if not slow down word done.

    3. Re:No, they're just confused by the legalese by einhverfr · · Score: 2, Insightful

      All the more reason to use FirebirdSQL or PostgreSQL

      --

      LedgerSMB: Open source Accounting/ERP
    4. Re:No, they're just confused by the legalese by hughk · · Score: 1
      Not really, but both Firebird and Postgress are very good projects for keeping MySQL AB honest (actually, they don't need much, but it helps to have something to persuade the money men.

      Competition is good, even (or especially) in the open source community.

      --
      See my journal, I write things there
    5. Re:No, they're just confused by the legalese by primus_sucks · · Score: 1

      or Derby

    6. Re:No, they're just confused by the legalese by Anonymous Coward · · Score: 0

      This is hilarious! You can now get several FULL databases (you know, the type that are Atomic, Consistent, Isolated and Durable) under the GPL. MySQL has always been a cheap option. Take away the cheapness, and its lack of functionality becomes a serious issue.

  2. First Useful Post by HappyPerson · · Score: 3, Insightful

    Consistency in licensing is important, whatever they choose I hope they stick with it.

    1. Re:First Useful Post by borgdows · · Score: 5, Funny

      Consistency in a database is important too, whatever they choose I'll stick with Postgresql.

    2. Re:First Useful Post by Lumpy · · Score: 1

      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.

      --
      Do not look at laser with remaining good eye.
    3. Re:First Useful Post by outsider007 · · Score: 1

      It's an open source license, meaning the license is open source not the software. The lawyers decided to release it for free in hopes that companies will hire them to explain it. Sound familiar?

      --
      If you mod me down the terrorists will have won
    4. Re:First Useful Post by Anonymous Coward · · Score: 0

      > That's the great part about the GPL, hey 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.

      That's also the great part of the BSD license, the X license, the apache license, and every other 'open source' license.

      Get off your GPL pedestal Linux fan-boy

    5. Re:First Useful Post by Anonymous Coward · · Score: 0

      Yes, many people treat the GPL like some sort of god.

    6. Re:First Useful Post by Noltar · · Score: 1

      You mean GPL doesn't stand for God's Personal License !?

  3. Strange really.... by tarquin_fim_bim · · Score: 3, Insightful

    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.

    1. Re:Strange really.... by angst_ridden_hipster · · Score: 2, Insightful

      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?

      --
      Eloi, Eloi, lema sabachtani?
      www.fogbound.net
    2. Re:Strange really.... by Jack9 · · Score: 2, Insightful

      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.

      --

      Often wrong but never in doubt.
      I am Jack9.
      Everyone knows me.
    3. Re:Strange really.... by rokzy · · Score: 2, Interesting

      did Xfree/X.org teach (or even remind) them nothing?

      fools! those who do not learn from history.... etc.

    4. Re:Strange really.... by Anonymous Coward · · Score: 1, Informative

      why wouldn't we all switch over to the superior power of PostgreSQL?

      1) lack of consistent SQL support (getting better)

      2) lack of atomic commits (still??)

      3) exponential degradation of performance with simultaneous accesses

      4) multi-threading issues on multi-proc/distributed systems

      5) no graphical interface (necessary to "visualize" the table formats)

      6) no Dylan/Eiffel/Smalltalk/etc. support

      7) ???

      8) Profit? ;-)

    5. Re:Strange really.... by the_mad_poster · · Score: 3, Insightful

      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 earlier builds of Postgres jumped on MySQL because - although it makes the hard things impossible - it makes the most common tasks in a dynamic environment manageable for even the most clueless n00b. As people graduated to a more detailed understanding of things, MySQL offered them the power they needed to grow.

      Unfortunately, eventually you will outgrow MySQL and hit the things where MySQL fails miserably at. Then, you need a "real" RDBMS. Alas, most folks using MySQL didn't need to do that, so they're used to the bizarre quirks of MySQL (18 nestings of SELECT anyone?) and struggle with PostgreSQL and other "real" RDBMSs as a result.

      That's why.

      --
      Alito: A vote for Alito is a punch in the eye to put that bitch back in her place!
    6. Re:Strange really.... by Daytona955i · · Score: 2, Informative

      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. ;-)

    7. Re:Strange really.... by EvilTwinSkippy · · Score: 1
      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.

      --
      "Learning is not compulsory... neither is survival."
      --Dr.W.Edwards Deming
    8. Re:Strange really.... by Tassach · · Score: 1, Insightful

      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.

      --
      Why is it that the proponents of "one nation under God" are so eager to get rid of "liberty and justice for all"?
    9. Re:Strange really.... by tarquin_fim_bim · · Score: 1

      Why do you feel that PostgreSQL is more difficult to administer than MySQL? To use properly perhaps, but administration? There are differences, but no aditional complexity is involved.

    10. Re:Strange really.... by Tassach · · Score: 1
      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.
      --
      Why is it that the proponents of "one nation under God" are so eager to get rid of "liberty and justice for all"?
    11. Re:Strange really.... by harlows_monkeys · · Score: 1
      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.

    12. Re:Strange really.... by EvilTwinSkippy · · Score: 4, Insightful
      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.

      --
      "Learning is not compulsory... neither is survival."
      --Dr.W.Edwards Deming
    13. Re:Strange really.... by Anonymous Coward · · Score: 1, Insightful

      As far as I know, the X.Org split was mostly influenced by a desire to get away from feature stagnation and politics in the Xfree community, not just licensing.

    14. Re:Strange really.... by Anonymous Coward · · Score: 0

      Have you considered SQLite? A considerable number of MySQL web sites that require a high ratio of selects to updates without referential integrity would scream on a efficient SQLite database.

    15. Re:Strange really.... by Osty · · Score: 1

      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.

      With a moderately complex data set (ie, pretty much anything you'll do other than a "hello world" database), MySQL has little benefit over Postgres speed-wise. The only reason you trust your backend to do nothing is because MySQL's backend cannot be trusted to do anything!


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

      Others have asked how you do atomic transactions, stored procedures, and sql injection protection. I'll just say ... hahahahaha! (/me waits for replies like, "Stored procedures are pointless, and any DBA worth his salt would know that there's never any reason to use them!" or, "I can do transactions in my middle-tier code," so I can laugh again)

    16. Re:Strange really.... by tarquin_fim_bim · · Score: 1

      You mention 'transactions', isn't MySQL still a little flakey there? Also you use the word 'trust' in regard to a RDB renowned for losing data. Curiouser and curiouser. I'm not anti MySQL it's just not the thing to use when one values ones, data as you claim to.

    17. Re:Strange really.... by Jack9 · · Score: 1

      When mentioning "ease" of administration, this includes but is not limited to the potential complexities that can occur or be deliberately configured.

      Examples: the necessary steps to modify or backup SPs; debugging and repair of of SPs that are damaged/disabled.

      Simplistically speaking, for every administration tool, there is at least 1 potential problem that the tool is used to correct. How many more tools are going to be included with MySQL when SPs are introduced?

      Short answer, I prefer to use and teach ppl to use MySQL because it's harder to screw up and easy to fix when it's screwed up. I think SPs are a Bad Thing(tm) too. (the /. crowd loves em tho)

      --

      Often wrong but never in doubt.
      I am Jack9.
      Everyone knows me.
    18. Re:Strange really.... by EvilTwinSkippy · · Score: 1
      Please tell me how to implement atomic transactions and stored procedures in TCL.

      It's called object oriented programming. Nothing in the code talks directly to the database, everyone passes through an abassador class. The ambassador class handles caching, deadlock avoidance, and locking. Yes Virginia, in a multi-threaded environment there is more than one stratagy for these things.

      Stored procedures are a bad toy.

      Please tell me how you reliably guard against SQL injection attacks using TCL.

      SQL injection attacks? What, do you pass queries directly through a web form? Now that is silly.

      Our application suite implements access control lists that lock objects down to the record. You don't issue a "SELECT..." statement in SQL, you perform the RecordLoad method in the container. You don't issue "UPDATE.." or "INSERT..." statements, you call the RecordSave or RecordWrite method.

      You can perform queries. But the filter regexps for funny business before the command is run.

      --
      "Learning is not compulsory... neither is survival."
      --Dr.W.Edwards Deming
    19. Re:Strange really.... by EvilTwinSkippy · · Score: 1
      Laugh bucko.

      I'll just keep getting paid to do what I do.

      And I'll also cheerfully explain over a few drinks about the fact that when your application's cheif function is to syncronize data between several backends (not to mention SMTP, flat files, and XML), you really can't rely on any one vendor's parlor tricks.

      --
      "Learning is not compulsory... neither is survival."
      --Dr.W.Edwards Deming
    20. Re:Strange really.... by DAldredge · · Score: 2, Insightful

      Why in the hell did you write 250k line of database dependent code?

    21. Re:Strange really.... by EvilTwinSkippy · · Score: 1
      Actually I have. The problem is that sqllite doesn't behave well on NFS volumes. My application is also multi-threaded so session tables that get hit for reads and writes a lot have a tendency to trip over each other at odd spots.

      I did write my interface code in a way that I could swap out MySQL for sqlite (or postgres, MS-SQL, or Oracle) at the drop of a hat. I've actually tested it with quite a few different database engines.

      The problem you run into is breadth vs. depth. In applications that shoot for breadth, MySQL gives you a lot of performance while requiring very little customization.

      (I still have a warm spot for sqlite though.)

      --
      "Learning is not compulsory... neither is survival."
      --Dr.W.Edwards Deming
    22. Re:Strange really.... by DAldredge · · Score: 2

      WTF are you talking about? Please research the current (Last 1000 days or so) PostgreSQL before you speak on this subject again.

      Most of what you said is complete and total bullshit.

    23. Re:Strange really.... by Anonymous Coward · · Score: 0

      flatfile and perl equal to mysql?!?!? I don't think so
      Hope this helps

    24. Re:Strange really.... by nkh · · Score: 2, Insightful

      Atomic commits seems to be called transactions in PostgreSQL. More info can be found in the tutorial.
      PostgreSQL also has support for Ruby (and Python) which is sufficient to write a lot of useful scripts.

    25. Re:Strange really.... by EvilTwinSkippy · · Score: 1
      Why in the hell did you write 250k line of database dependent code?

      Let's see... I had a need, I had a volume of data...

      Actually the artitecture is portable, but a lot of the reports use mysql specific math functions, and the web content uses full-text searching.

      It would be perfectly reasonable to extend our classes to include PostGres support. There is already a module for MS-SQL, and sqlite. (Though I haven't tested them in years.)

      My indigination was over being called an idiot for deigning to design a system back when performance was important and PostGres was not-quite-ready for prime time.

      --
      "Learning is not compulsory... neither is survival."
      --Dr.W.Edwards Deming
    26. Re:Strange really.... by Anonymous Coward · · Score: 0

      Aren't we in a bad mood today? This is your second flame answer :(

    27. Re:Strange really.... by Anonymous Coward · · Score: 0

      I'm sorry, what? I failed to get any information out of your post except that you seem to have gone insane on account of my post.

      If "most" of what I said was BS, then "some" of it wasn't. Care to share with the rest of us your enlightened perspective? I'm sure you actually have facts to back up your attacks (+0 No moderation) against me (+4 Informative).

    28. Re:Strange really.... by Master+of+Transhuman · · Score: 1

      "It's called object oriented programming."

      Er, in other words, you programmed these capabilities instead of using the capabilities programmed into the database by other programmers.

      Right?

      So you're using MySQL because it's "easier"?

      What's wrong with this picture?

      --
      Richard Steven Hack - This sig is TOO GODDAMN SHORT TO DO ANYTHING USEFUL WITH! MORONS!
    29. Re:Strange really.... by EvilTwinSkippy · · Score: 1
      Rule 1: Never trust a database. Everything we do is backed up. It's backed up daily. Where possible, it's backed up in ASCII.

      Rule 2: It's not a data store. It's a non-volitile cache between the application code and the backup tape.

      Rule 3: All software sucks. You plan for it to fail. You EXPECT dropped indexes, bad sectors, and id10t db managers who "DELETE FROM $TABLE".

      --
      "Learning is not compulsory... neither is survival."
      --Dr.W.Edwards Deming
    30. Re:Strange really.... by Osty · · Score: 1

      And I'll also cheerfully explain over a few drinks about the fact that when your application's cheif function is to syncronize data between several backends (not to mention SMTP, flat files, and XML), you really can't rely on any one vendor's parlor tricks.

      So "data integrity" is now considered vendor-specific parlor tricks? That's news to me!

    31. Re:Strange really.... by DAldredge · · Score: 3, Informative

      1) lack of consistent SQL support (getting better)
      RESPONSE: What are you talking about?

      2) lack of atomic commits (still??)
      RESPONSE: They are called transactions and PSQL has had them for much longer than MySQL.

      3) exponential degradation of performance with simultaneous accesses
      RESPONSE: I have never seen this in production, any links to back this up?

      4) multi-threading issues on multi-proc/distributed systems
      RESPONSE: See #3

      5) no graphical interface (necessary to "visualize" the table formats)
      RESPONSE: PGAdmin and other tools support PSQL.

      6) no Dylan/Eiffel/Smalltalk/etc. support
      RESPONSE: Google for them. They exist.

    32. Re:Strange really.... by DAldredge · · Score: 1

      IOP the poster said he started this project over 3 years ago and postgresql, to be honest, didn't behave quite the same way back then.

      IOW, it could be a pain to use.

    33. Re:Strange really.... by kleinux · · Score: 1

      The only useful GUI tool for MySQL I have ever come across is phpMyAdmin. PostgreSQL has a very similar tool in phpPgAdmin http://sourceforge.net/projects/phppgadmin/

    34. Re:Strange really.... by EvilTwinSkippy · · Score: 1
      So you're using MySQL because it's "easier"?

      What's wrong with this picture?

      Who said anything about "easier". The key word is predictable. I really can't vouch for the quality or lack there of in any open source project.

      I can vouch for having been burned after an upgrade changes the behavior of a routine that worked happily for years.

      Really, my "atomic transaction" code is about 300 lines of incr TCL. But it works, it allows me to cache common searches, and it is performance tuned to EXACTLY what my application needs.

      --
      "Learning is not compulsory... neither is survival."
      --Dr.W.Edwards Deming
    35. Re:Strange really.... by EastCoastSurfer · · Score: 1

      In high-volume web transactions speed is everything

      I hope you're not doing banking web sites. Sure, my transaction happens quickly, but loses half my deposit.

    36. Re:Strange really.... by RedPhoenix · · Score: 2, Informative

      > 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_PRIORITY
      - No equivalent in PG

      * phpmyadmin
      - phppgadmin is nice, but still missing a few nice things (renaming table fields, or changing data types, for example)

      * mysqldiff
      - An application that takes one database structure, compares it against the current database structure, and outputs the SQL statements required to 'upgrade' the current DB structure to the 'new' DB structure.

      A few of these are enough for me to stick with MySQL at the moment, even at a reasonable price.

      If you're a little more in touch with PG than I am, and any of the above are no longer valid, please let me know!

      Red.

    37. Re:Strange really.... by Anonymous Coward · · Score: 0

      InnoDB/MySQL a fiasco? A kludge? Nonsense. Where are you getting this from?

      InnoDB is tightly integrated into MySQL -- from the user's standpoint, there is no evidence that they came from two different codebases. All the user sees are rock-solid transactions.

    38. Re:Strange really.... by EvilTwinSkippy · · Score: 1
      You don't use Postgres for banking either. You use an AS/400 (oops dating myself) an iSeries running DB2. My payroll check hopps along every other week like clockwork over a 19200 line between my work's mini and the bank's mainframe, using protocols developed in the 80s.

      Web databases, as seriously as we try to take them, are ALL toy databases.

      --
      "Learning is not compulsory... neither is survival."
      --Dr.W.Edwards Deming
    39. Re:Strange really.... by Anonymous Coward · · Score: 0

      i can't respond intelligently ala daldredge, but i can say this:

      are you fucking retarded?

      you see that thing on the left side of your window(we call it a browser, and the thing on the left is a search bar) type in pertinent words from your questions, and see that answers to your questios were provided.

      like 5 years ago.

    40. Re:Strange really.... by Anonymous Coward · · Score: 0

      dude. he's human.

      and there comes a time in your life when you realize "people are stupid"

      they are just fucking stupid. almost all of us.

      liberals, conservatives, communists, vegatarians, cigar-enthusiasts, soccer moms, nascar dads, geeks, scientists, muslims, christians, jews, wops, spics, niggers, kikes, dagoes, mics, zips, gooks, chinks, japs, canooks, frogs, krauts, beaners, redbellys, camel jockeys, ragheads, ricers....etc etc etc.

      what you'll find, after a lifetime of contemplation...that 95% of the humans on this planet are fucking stupid sheep.

      and when you see a "innocent" comment about mysql...it just sets you off.

      because the comment is just fucking stupid. what the fuck does 200,000 lines of code have to do with anything?

      answer? NOT A GODDAMN THING.

      only an idiot would write 1/20th of that amount of code that was DB dependent.

      to write en total, 200,000 lines that were absolutely tied to a specific DB? there is no insult sufficent to be applied.

      and then to spout that off like it supports your argument?

      (slaps head)

      it makes you wonder why we are here reading slashdot.

      with contributions like that.

    41. Re:Strange really.... by Saeed+al-Sahaf · · Score: 1
      ...blaw, blaw, blaw...MMORPG...blaw, blaw, blaw...

      Jesus, get out of the basement.

      --
      "Who are in control, they are not in control of anything - they don't even control themselves!" - Glen Beck
    42. Re:Strange really.... by Capt'n+Hector · · Score: 0, Flamebait

      You're right, that is flamebait. MySQL isn't a niche. The "small/medium" website = 99% of websites out there. And who cares if it "makes the hard things impossible"? By hard, you should have said obscure, because most people won't need the extra functionality of PostgreSQL, EVER. It's odd that you would call these same people "clueless n00b"s, when they prefer ease over obscure.

      --
      Quid festinatio swallonis est aetherfuga inonusti?
      Africus aut Europaeus?
    43. Re:Strange really.... by matth · · Score: 1

      I personally like MySQLCC

    44. Re:Strange really.... by Daniel+Dvorkin · · Score: 2, Insightful

      Aaargh. Can we get rid of this stupid meme, please? I've been making a living as a DBA for almost five years now. I'm 2/3 of the way to a CS Master's. I've used Oracle, Sybase, and PostgreSQL. And I prefer MySQL. The idea that the only people who use MySQL are those who don't know any better has to die.

      --
      The correlation between ignorance of statistics and using "correlation is not causation" as an argument is close to 1.
    45. Re:Strange really.... by jadavis · · Score: 1

      Your point is not clear to me.

      Either:
      (a) You're listing complaints about MySQL, in which case I recommend better wording in your future comments; or
      (b) You're listing complaints about PostgreSQL, in which case I recommend a lot of reading. PostgreSQL doesn't even use threads, it has had rock solid atomic commits for a long time, and has some of the best SQL complaince of any DB.

      --
      Social scientists are inspired by theories; scientists are humbled by facts.
    46. Re:Strange really.... by Anonymous Coward · · Score: 0

      It's all about the developer's needs. I agree SPs can be a very bad thing, the problem is when people bash them and want to exclude them in MySQL it make sense for everyone. If I'm deploying a large e-commerce site on a dedicated server with its own dedicated database server -- why not? If MySQL's owners want to target this audience, the same that might pay for their software, it makes sense to add the features. Free is not always better. Why bash MySQL just because it might not be free forever?

    47. Re:Strange really.... by pHDNgell · · Score: 1

      * 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.


      Sounds like a cursor. It's as buffered as you want it to be.

      * 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.


      When I've needed this, I've just determined the count in a more optimized way. I've done this with tens of millions of rows in such a way that returned roughly instantly. There are talks of optimizations to this, but the reason it works the way it does makes a lot of sense considering MVCC and the isolation levels it provides.

      * Insert LOW_PRIORITY
      - No equivalent in PG


      I have no idea what this could mean.

      * phpmyadmin
      - phppgadmin is nice, but still missing a few nice things (renaming table fields, or changing data types, for example)


      Have you compiled a list of what's required to make it acceptable for you?

      * mysqldiff
      - An application that takes one database structure, compares it against the current database structure, and outputs the SQL statements required to 'upgrade' the current DB structure to the 'new' DB structure.


      That sounds rather seductive, but not terribly useful. I can write my alters as I make changes, but I really can't expect a tool to generate the quereis required to migrate my data based on the semantics of the changes I made. We usually just create migration scripts as we go to deal with the schema and data at the same time. This does seem like a nice tool to get such a script started, though.

      --
      -- The world is watching America, and America is watching TV.
    48. Re:Strange really.... by Anonymous Coward · · Score: 0

      from the user's standpoint, there is no evidence that they came from two different codebases

      And that's exactly why its a kludge. When the user says BEGIN TRANSACTION, non-InnoDBs shoudl cause the server to throw an error.

    49. Re:Strange really.... by vandan · · Score: 1, Insightful

      Sure.

      That's like saying that Linux can only do a little more than you can do with an abacus and a piece of chalk.

      If you want to use Postgres, fine. Use it. But you make yourself look very small when you go out of your way to put down such a fine project as MySQL just because your Postgres can do ... what ... oh yeah - you didn't even mention.

      What I find really strange is the level of hate that Postgres users feel justified in showering on MySQL users. And then you wonder why you get it back. Personally I don't give a flying fuck what database you use, but once you say you are a Postgres user, my estimation of you automatically goes down a couple of notches because of the number of noxious posts by your clan.

    50. Re:Strange really.... by harlows_monkeys · · Score: 1
      Jesus, get out of the basement

      So because you evidently think MMORPGs aren't worthwhile, that somehow makes their database needs less demanding?

    51. Re:Strange really.... by Anonymous Coward · · Score: 0

      Yeah... it seems I remember lots of database issues early on as well.

      You know... you typically need to have better reasons for deciding that you don't need some of the features a real RDBMS has than when you decide you do need them. If you don't see the truth in this statement, you probably don't know half as much as you think you do about databases.

    52. Re:Strange really.... by Anonymous Coward · · Score: 1, Funny

      Interestingly, this gave MySQL a niche in the small/medium website market. People who couldn't justify the complexity of earlier builds of Postgres jumped on MySQL because - although it makes the hard things impossible - it makes the most common tasks in a dynamic environment manageable for even the most clueless n00b.

      Actually... it's more like folks jump on MySQL because they don't have any idea what a database does or is used for and they don't really understand their problem to begin with. They think databases are just somewhere to shove data and pull it out later. Typically, these people will poo-poo things like transactional security, referential integrity, and the like, claiming that no one needs them, when in fact, they don't understand what they are or what they're for. In the end, these people shovel out code that is potentially far worse than anything they flame on /. while still feeling superior because their code is "fast" and "that's all that matters". I imagine that these folks would attempt to use MySQL to write Banking code. I just hope I can find out what projects these people work on so I can avoid those products like the plague.

      These are the types of things that not having formal training in CS and the like get you. Some self-taught basement dweller who obviously knows all there is to know about computers because they are able to download and install Linux declares that transactions, referential integrity, stored procedures, and the like are worthless. It's hard to use something that you don't understand. Not understanding what the features of a real RDBMS gives you causes you not to use them. Ignorance isn't always bliss.

    53. Re:Strange really.... by fitten · · Score: 3, Insightful

      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, transactions, etc.)

      In fact, in most cases, we can port to a new RDBMS without recompiling our source, just by providing the appropriate stored procedures on the new system.

    54. Re:Strange really.... by salimma · · Score: 1
      5) no graphical interface (necessary to "visualize" the table formats)

      PostgreSQL Red Hat Edition has a Graphical Tools Suite. Written in Java with SWT for cross-platform goodness :)

      That settles that point, I hope.
      --
      Michel
      Fedora Project Contribut
    55. Re:Strange really.... by Anonymous Coward · · Score: 0

      Man, O man, you are one stupid, embittered Motherfucker. Shut the FUCK up!

    56. Re:Strange really.... by acebone · · Score: 1

      Check out dbDesigner4.

      They stopped development, apparently the guys doing it got jobs with MySQL.

      Somebody should pick it up, it's very good. Really makes it a breeze to design your DB.

      Link seems to be down right now....

      --
      Check out my PHP Url Validator
    57. Re:Strange really.... by RedPhoenix · · Score: 1

      >>* Unbuffered queries
      > Sounds like a cursor. It's as buffered as you want it to be.

      Sounds promising - thanks. Unfortunately, it doesn't seem as though php supports cursors yet.. Though there are indications that the 'dbx' facility in php5-cvs may make use of it. (sorry, should probably have mentioned php earlier).

      >> * MYSQL's optimised count() function.
      > When I've needed this, I've just determined the
      > count in a more optimized way.

      Any hints would be welcome. Unfortunately, I can't _easily_ maintain an internal counter anywhere (many threads adding and removing data from a table - usually a couple of thousand additions a minute, and one big removal every 24 hours.. but it varies), and I need a reasonably accurate total count.

      >> * Insert LOW_PRIORITY
      > I have no idea what this could mean.

      Internal mysql stuff that deprioritises inserts in favor of selects. Based on the fact that pg does row-level locking (as opposed to table locking), this isn't really an issue I suspect.

      >> * phpmyadmin
      > Have you compiled a list of what's required to
      > make it acceptable for you?

      Yup. It's a low priority item though - it wouldn't stop me from migrating.

      >> * mysqldiff
      > That sounds rather seductive, but not terribly
      > useful.

      We're in a situation where it's difficult to know any installations DB 'state' (ie: Whether a particular table exists or not, if it has the correct fields). Our options are to either:
      * Maintain a 'upgrade script' for each and every version released, and cycle through each of them (from installed to current), or
      * Use the script, and automagically convert the installed DB to the most recent version.

      At the moment, the second option makes things NICE and simple.

      > This does seem like a nice tool to get such a
      > script started, though.

      Absolutely. :) The actual prog is called 'sqlupdate' - Link here for those that are interested: http://bisqwit.iki.fi/source/sqlupdate.html

      Thanks,

      Red.

    58. Re:Strange really.... by Anonymous Coward · · Score: 0

      Itsy-bitsy teenie-weenie yellow polka dot penis! You tiny little adolescent twat!

    59. Re:Strange really.... by Anonymous Coward · · Score: 0

      I'd guess there's some perl one liner that will do this....

    60. Re:Strange really.... by kcbrown · · Score: 2, Informative
      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.

      Storing a result set that's gigabytes in size in RAM is probably not a good idea in any case.

      Caching a query result set is incredibly difficult to do correctly in any case, as you either have to invalidate the entire set when any changes are made to the underlying tables, or you have to run the data involved in any INSERTs, UPDATEs, and DELETEs through the search terms used for the query you're caching and modify the cached result set upon a hit. The former is easily replaced by client side caching + rules or triggers on DML (INSERTs, UPDATEs, and DELETEs) to the underlying tables, and the latter is likely to have a significant impact on your database update performance.

      * 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.

      Yes, though you can get a quick approximation by querying the PG schema tables directly:

      SELECT CAST(reltuples AS integer) FROM pg_class JOIN pg_namespace ON (pg_class.relnamespace = pg_namespace.oid) where relname = 'tablename' AND nspname = 'schemaname'

      ---

      * Insert LOW_PRIORITY - No equivalent in PG

      And no need. LOW_PRIORITY exists because MySQL does full-table locks for DML against MyISAM tables. LOW_PRIORITY ensures that DML doesn't get priority over SELECTs.

      PostgreSQL uses MVCC. This means that writers almost never block readers, and hence prioritization of readers over writers isn't necessary. This is one of PostgreSQL's biggest strengths.

      * phpmyadmin - phppgadmin is nice, but still missing a few nice things (renaming table fields, or changing data types, for example)

      Put in the feature request. Also make sure you check out the current version. PostgreSQL 8.0 will have the ability to change the data type of a column without having to go through gymnastics, but it's possible to make the change even now -- it's just more difficult.

      * mysqldiff - An application that takes one database structure, compares it against the current database structure, and outputs the SQL statements required to 'upgrade' the current DB structure to the 'new' DB structure.

      This sounds very cool, and since it's open source it may be possible to create a PostgreSQL version of it from the source.

      --
      Use 'slashdot stuff' in the subject line in any email you send me if you want to get past the spam filter.
    61. Re:Strange really.... by kcbrown · · Score: 2, Informative
      I'm 2/3 of the way to a CS Master's. I've used Oracle, Sybase, and PostgreSQL. And I prefer MySQL.

      Would you be so gracious as to say why?

      I mean, I've used MySQL, PostgreSQL, SQL Server (very much like Sybase), and Oracle, and I prefer PostgreSQL for most things. And the reason is simple: I can guarantee the integrity of my data with it much more easily than I can with MySQL, and I can afford it. :-)

      Not to mention things like the fact that the query language rarely prevents me from doing something I want to do within the database, and when combined with the many languages you can write stored procedures/functions in, there is very little indeed that can't be done with it. I've found MySQL much more limiting.

      And as a DBA, PostgreSQL for me is second to none in some situations. Namely, that DDL is transactional! Even Oracle can't make that claim (though I think SQL Server/Sybase can for some DDL, at least).

      --
      Use 'slashdot stuff' in the subject line in any email you send me if you want to get past the spam filter.
    62. Re:Strange really.... by Anonymous Coward · · Score: 0

      I think SPs are a Bad Thing(tm) too.
      and I think you're an idiot.

    63. Re:Strange really.... by catenos · · Score: 1

      ... 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, transactions, etc.)

      In fact, in most cases, we can port to a new RDBMS without recompiling our source, just by providing the appropriate stored procedures on the new system.


      So let me get that straight: You argue in favor of stored procedures in regard of ease of portability when in any discussion of stored procedures one of the main arguments against them is how they lock you in to a certain database (vendor)?

      Note that I don't have a strong opinion about that myself, because I never needed to do such a SP port myself. Just wondering about your reasoning, when the common argument seems to go contrary.

      --
      Keep an eye on which arguments are silently dropped in replies. Not always, but often times it's very telling.
    64. Re:Strange really.... by Anonymous Coward · · Score: 0

      You're an idiot. Postgres wasn't designed as a web database. It was a research database exploring ORDBMS principles.

    65. Re:Strange really.... by Anonymous Coward · · Score: 0

      You're an idiot. If your database server crashes during your TCL "transaction," you won't have data integrity anymore. I doubt you have write-ahead logging and checkpointing in your 300 lines of TCL. Go take a course on Database Management Systems at an accredited university instead of basing your work on rudimentary SQL tutorials.

    66. Re:Strange really.... by StandardDeviant · · Score: 1

      I have developed a really elegant perl script to do as you desire, but the comment box is too small and the lameness filter objected. :) </fermat>

    67. Re:Strange really.... by Anonymous Coward · · Score: 0

      Well, there's losers in every profession. Remind me never to hire you.

    68. Re:Strange really.... by hppacito · · Score: 1

      I have an app with mysql, and I programmed most of what would need stored procedures in C, not a big deal, its done, but to change to postgresql, I'd need HEAP tables... sorry, but they do not exist in pg... the idea of different types of tables, was very useful for me. besides that, "vacuum" in mysql doesn't exist, its automatic... its something this people at pg should get ride of.

    69. Re:Strange really.... by jadavis · · Score: 2, Insightful

      If stored procs are a bad thing, wouldn't the following features also be bad?:

      (1) triggers
      (2) constraint triggers
      (3) functional indexes using a user-defined function, or indexing a user-defined data type
      (4) user-defined aggregate function
      (5) user-defined data types

      Those are very difficult problems to simply work around. For #3 you just have to take the performance hit and not use the index. For #4 you have to read the entire amount of data into the application and post-process it to get the data you actually need. #1, 2, and 5 all speak for themselves, being basic principles of an RDBMS.

      And PostgreSQL 8.0.0beta1 has PITR (point in time recovery) meaning that it should be reasonably simple to revert to a previous state. Hopefully that makes it easier for you to fix it when someone screws it up.

      I'd also like to point out that a very advanced replication system, Slony-I, was developed for PostgreSQL using triggers and stored procedures (to work with the replication daemon). So I'm not speaking in abstract terms about potential usefulness, but real-world business needs. What would you do to implement such a replication engine in MySQL? Write some code in the MySQL server and recompile I suppose. Slony actually works across PostgreSQL versions and works on versions of PostgreSQL that were released before Slony was ever conceived. That's the power of stored procedures.

      I understand that these features need to be used with care. I understand that some people don't need these features (unfortunately, some people realize they are needed too late). What I don't understand is how software can be missing these features and still call itself an RDBMS. What surprises me even more is when people make a blanket statement condemning these features with absolutely no acknowledgement of their actual uses.

      --
      Social scientists are inspired by theories; scientists are humbled by facts.
    70. Re:Strange really.... by jadavis · · Score: 1

      Stored procedures are a bad toy.

      I already answered this once today:
      http://slashdot.org/comments.pl?sid=118195&cid=998 8823

      Please give some thought to the implications listed in the post above before you claim that stored procedures are bad.

      --
      Social scientists are inspired by theories; scientists are humbled by facts.
    71. Re:Strange really.... by jadavis · · Score: 1

      Then you should check out PostgreSQL 8.0.0beta1 and it's Point in Time Recovery. You can still do ASCII dumps whenever you want if it makes you feel more comfortable.

      And even if you can't trust a database, it's nice when you wake up and the database is still working and 100% consistant. Back ups are important but I'd prefer to spend my workday doing something other than recovering from catastrophe, if I have the option.

      --
      Social scientists are inspired by theories; scientists are humbled by facts.
    72. Re:Strange really.... by Jack9 · · Score: 1

      That would be an accurate assumption.

      (1) triggers
      (2) constraint triggers
      (3) functional indexes using a user-defined function, or indexing a user-defined data type
      (4) user-defined aggregate function
      (5) user-defined data types
      (6) stored-procedures

      all ways to speed up processes through database optimized work. If your dataset is small enough, your lookups are short and this is unnecessary.

      I do not use database logic when I can still comfortably recommend and setup computationally (more) powerful machines to process the logic outside the database. This is not a very realistic view because of the practical limits of OS/App transactions (funny how that works out), but the right way to do it theoretically.

      As a Commodore64 never quite did what I wanted, I didn't purchase or use one and if I find myself in a position where I cannot solve a problem using my paradigms, I am comfortable abdicating my position to someone who has, what is considered, a more progressive view. I'm a specialized kind of tool (pun) in this respect..

      --

      Often wrong but never in doubt.
      I am Jack9.
      Everyone knows me.
    73. Re:Strange really.... by Anonymous Coward · · Score: 0

      once you say you are a Postgres user, my estimation of you automatically goes down a couple of notches because of the number of noxious posts by your clan.

      Okay, you can think I am a fucking idiot because I use postgresql. I, on the other hand, think you are a fucking idiot because you generalise about somebody's attitudes based upon the software they use. Guess which one of us is being rational?

    74. Re:Strange really.... by TiggsPanther · · Score: 2, Informative
      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 use a database" info is still MySQL-centric, and you have to specifically search for PostgreSQL to find anything (and you get a third of the results from MySQL).

      It's a pain, sure. But it's a definite drawback - simple lack of mindshare. And as long as dead-tree books on PHP and/or databases mainly/only reference MySQL it's going to continue to be an issue.
      Amazon hits for MySQL: 90. Amazon hits for PostgreSQL: 15.

      So basically those who already know about PostgreSQL will make an informed choice, and anyone else will stick with MySQL either because they don't know there are alternatives or they can't find documentation.

      --
      Tiggs
      "120 chars should be enough for everyone..."
    75. Re:Strange really.... by jadavis · · Score: 1

      Unfortunately, it doesn't seem as though php supports cursors yet.

      It's just SQL, create a cursor and do a "FETCH" in place of a "SELECT".
      http://developer.postgresql.org/docs/postgres/sql- declare.html
      and
      http://developer.postgresql.org/docs/postgres/sql- fetch.html

      pgsql_exec($db,"DECLARE ...");
      $res = pgsql_exec($db,"FETCH ...");
      $foo = pg_fetch_array($res,0);

      --
      Social scientists are inspired by theories; scientists are humbled by facts.
    76. Re:Strange really.... by MrRTFM · · Score: 0, Offtopic

      Dear Sir,
      please refrain from using my patented word processing format.

      Thank You
      Doogie Howser MD

      --
      You can't expect to wield supreme executive power, just because some watery tart threw a sword at you
    77. Re:Strange really.... by the_mad_poster · · Score: 1

      By hard, you should have said obscure, because most people won't need the extra functionality of PostgreSQL, EVER. It's odd that you would call these same people "clueless n00b"s, when they prefer ease over obscure

      Obscure? Yes, I know I just *love* the "ease of use" that goes along with nesting five or six levels of SELECTs because the clueless developers over at MySQL can't figure out VIEWs. I know that *I* would certainly call ACID an "obscure feature" and that explains why it was slapped in as an afterthought long after the clueless developers over at MySQL released their "database engine" (never mind "relational", you could argue that the lack of ACID compliance prevented MySQL from being a *DBMS* for quite a long time).

      I would certainly call the tacked-on foriegn key constraints "obscure". Who would ever need something like THAT in a RDBMS? Yes, of course, stupid me. How long did it take to get stored procedures? I guess it's a "feature" that you can enter a date of "0/0/00", right?

      Oh.... and let's not forget.... transactions. The fact that you even have to defend MySQL with "it has transactions (sort of) NOW" is absolutely pathetic.

      Obscure? No. MySQL is just a piece of crap for clueless sods on cheap hosting. It's on par with Microsoft Access, but without the forms and reports that make Access a good desktop database.

      And, that wasn't flamebait. Unless recent versions of MySQL have finally started acting like a real DBMS, everyone of those points I made was absolutely true and you can verify each one yourself.

      --
      Alito: A vote for Alito is a punch in the eye to put that bitch back in her place!
    78. Re:Strange really.... by Master+of+Transhuman · · Score: 1

      "I can vouch for having been burned after an upgrade changes the behavior of a routine that worked happily for years."

      So if they change TCL like they're planning to change Perl 6 someday, and your code breaks, where are you then?

      I'll tell you. You hand-coded stuff that was already in another database, and now your hand-coded stuff has to be re-hand-coded.

      And that is not "easier" than using a better tool to begin with.

      I'm continually amazed at how many people seem to delight in using crippled tools and who can then rationalize it for all sorts of reasons.

      --
      Richard Steven Hack - This sig is TOO GODDAMN SHORT TO DO ANYTHING USEFUL WITH! MORONS!
    79. Re:Strange really.... by jschrod · · Score: 1
      You might make a living as a DBA, but not for mission-critical data of a company. Or, if you do so, that company is seriously screwed.

      But perhaps you learn something about data integrity and data format checks in the last 1/3rd of your way to a CS Master. There's always reason to hope, even with CS students.

      Btw, you know that you don't do yourself a favor for your future career? I check everybody who's applying on Google. Posts like yours make for quick decisions. (Kid, before you're flaming: The issue is not that you use MySQL; the issue is that you declared your MySQL preference without any qualifiers and with your work-as-student DBA experience as justification.)

      --

      Joachim

      People don't write Manifestos any more -- what's going on in this world? [Frank Zappa]

    80. Re:Strange really.... by Anonymous Coward · · Score: 0

      And that's exactly why its a kludge. When the user says BEGIN TRANSACTION, non-InnoDBs shoudl cause the server to throw an error.

      If your application depends on transactions, configure InnoDB as the default table type for your server, and no need to worry.

    81. Re:Strange really.... by Daniel+Dvorkin · · Score: 2, Interesting

      Would you be so gracious as to say why?

      Since yours is the only non-flame response I've received in the thread, sure, I'll be glad to. ;)

      1. Documentation. MySQL's documentation is so much better than PostgreSQL's, there's just no comparison. If there's something I want to do in MySQL that I don't know how to do (which doesn't happen very often these days; I will certainly grant that there's less to learn with MySQL than with a fuller-featured DBMS) I can almost always find out with a few minutes of searching. PostgreSQL's docs seem to have been written by people who take positive joy in making things as obscure as possible. Most commercial DBMS documentation seems to have been written by people who were getting paid by the word.

      2. I like MySQL's command-line tool better than everyone else's. [shrug] This is a matter purely of personal preference, I admit.

      3. There's no shortage of host language support for either MySQL or PostgreSQL; both have it better than most commercial systems seem to.

      4. Speed. Many, many people will tell you that MySQL isn't "really" faster than other DBMS's, and come up with elaborate justifications for why this is so. As far as I'm concerned, they're akin to those who insist that [Linux | BSD | OS X] isn't "really" more secure than Windows: real-world performance proves them wrong.

      Do the limitations of MySQL bother me? Sure; every once in a while I grit my teeth at having to write multiple queries, using temp tables and the like, to have to simulate nested queries and views. The lack of stored procedures and transactions can be dealt with in host language apps, but again, it can be a pain in the ass. But for me, the advantages I listed above outweigh all of these problems. Also, I'm willing to wait for the MySQL team to add in the missing features, one at a time, because based on past performance, I have faith that they'll do it right.

      Roughly speaking, it seems to me, MySQL and PostgreSQL have followed opposite but converging development paths. The MySQL approach was to start with a very limited feature set, make it fast and easy to use and capable of running on a wide range of systems, and then add features in one at a time, making sure nothing breaks as they go along. The PostgreSQL approach was to start with everything and the kitchen sink, and then work on problems with speed, interface, and cross-platform compatibility.

      For F/OSS projects in general, with limited resources to throw at the problem, I don't claim that either approach is better -- just different, is all. And like I said, at this point they seem to be converging ... but twenty years from now, you'll probably have /.ers hashing it out over these competing memes.

      --
      The correlation between ignorance of statistics and using "correlation is not causation" as an argument is close to 1.
    82. Re:Strange really.... by fitten · · Score: 1

      Well... some simple examples of what we did:

      In one place, we needed exclusive selection of some number of records from a table for processing. Our code calls a stored procedure that gives back a result set of the records to process. The SP for Oracle vs. MSSQL vs. whatever is different but the results are the same. The upper level code doesn't change, only the stored procedure has to.

      In another case, we have a bit of processing to do. This processing involves the creation of a number of temporary tables and data processing that must be protected by a number of transactions. In addition, it requires quite a bit of referential integrity (and many JOIN statements). The order of processing that we target with this code is an upper bound of 10,000,000 records and more typically around 100,000 to 1,000,000 records at a time. The inputs are the same, regardless of RDBMS (basically, a number of parameters to say what we are interested in extracting) and the output is basically the same (a result set of up to 10M records).

      Writing SQL isn't that much different from writing in other languages. You define the inputs and the outputs and then write the stuff. For us, we knew that the operations would all be carried out within a single database. If we had to span RDBMS to merge all that data (for example, some data was on MSSQL and the other was on Oracle), then it is a lot more complicated and you need to draw the logic up a level. However, if you are on a single RDBMS and in a single database, if you can write the SQL statements to do some task and use embedded SQL statements in your code to do it, I'd argue that you can do the same thing in stored procedures.

      In the example above with the up to 10M record result set, the Oracle SQL was almost, but not completely, unlike the MSSQL SQL that I had to write. There were lots of instances of syntax/operations specific to the RDBMS targeted, lots of optimization differences (when to create an index, what to index, etc.) In this case, we abstracted the operation into a class that basically had a "DoIt" function which, as output, returned the resultant table name which contained the processed records that were required (or returned an error if there were problems encountered during execution - which included ROLLBACKs as necessary). That "DoIt" determined which RDBMS was being used and issued the appropriate SQL statements to get the job done. However, I could have easily turned that into a stored procedure and eliminated the code fork underneath the "DoIt" function that determined which RDBMS was in use and issued the appropriate SQL statements.

      I'm not sure why folks are so against stored procedures. I look at them like just functions in my program, just written in a different language. I figure out what I need to have done and do it... more like black boxing it. I guess I might not have had as extensive problems as some folks may have, but I haven't had a situation yet where I couldn't use stored procedures if we chose to do so. Using embedded SQL seems to do the same thing, just moves all the SQL into your codebase as opposed to having it in a stored procedure. I don't see much difference between embedded SQL and SPs I guess. Anything you can do with embedded SQL, I'd argue you can do with a SP. It's not even a different language. You have to write the embedded SQL to get stuff done, then do glue and tie logic in your other language. You could just do the glue/tie logic in the SP. Maybe folks are having problems abstracting their work to that level. I dunno. I haven't had any problems in the past embedding SQL or using SP in a reasonably clean way.

      Again, when you are processing between different RDBMS, things get a lot more complicated. Maybe this is where folks are complaining about SPs... but that is a bit more difficult problem anyway.

    83. Re:Strange really.... by bucknuggets · · Score: 1

      > Aaargh. Can we get rid of this stupid meme, please? I've been making a living as a DBA for
      > almost five years now. I'm 2/3 of the way to a CS Master's. I've used Oracle, Sybase, and PostgreSQL.
      > And I prefer MySQL. The idea that the only people who use MySQL are those who don't know any better has to die.

      You're right, it should be used by people developing applications for wide dissemination across web hosting facilities - since right now it has the greatest number of hosting providers of any database.

      But aside from that? Why should we use it?
      - non-standard SQL
      - lack of common capabilities (views, etc)
      - silent failures are common
      - mysql ab has often stated that we just don't need transactions, views, subselects, etc (!)
      - concurrent write performance appears poor
      - vendor has submit no tpc benchmarks

      So, given that there are cheaper, more fully featured, more portable alternatives...I'd have to say that only people who didn't know any better would use it.

      Perhaps, as an 'experienced dba' you would be prepared to talk about how mysql administration is superior to that of other databases. Please be sure to cover innodb configuration silent errors, online backups without additional commercial licensing, and repairs of data corruption caused by silent constraint failures.

    84. Re:Strange really.... by bucknuggets · · Score: 1

      > If you want to use Postgres, fine. Use it. But you make yourself look very small when you go out of
      > your way to put down such a fine project as MySQL just because your Postgres can do ... what ... oh yeah - you didn't even mention.

      LOL, please - do yourself a favor and spend some time on the mysql pages looking at their bug reports. Pay special attention to all the 'silent failures' that can lead to data corruption.

      Then look into what MySQL AB has said about transaction, triggers, stored procedures, views, subselects, etc in the past. That you don't need them. Then consider what we've learned about databases over the past 40 years, and decide if that advise is worth anything is or just misinformation.

      Then look at the likelihood of having to pay mysql licensing feeds.

      We used to use mysql at my office. It's been abandoned in favor of postgresql for the following primary reasons:
      - porting difficult
      - licensing complexity
      - data corruption problems
      Now, note that we're primarily a db2 shop. But that we've got db2, oracle, postgresql, sql server, and mysql. I've used them all, though am most experienced with db2 (18 years of experience there). I've got no problem with us bringing aboard another database if that makes sense. But the mysql problems are serious and unique. Until they are resolved it will stay on the b-list...

    85. Re:Strange really.... by Cajal · · Score: 1

      The reason VACUUM is a seperate command in PostgreSQL is to improve transaction performance. Any multiversioning database has to clean up old versions of rows. You can either do it during each transaction, which imposes a variable-length overhead to each transaction, or you can choose to do the cleanup at a later time, such as when the DB isn't busy. PostgreSQL chose the latter option. However, there have been many improvements to the VACUUM code in 7.4 and 8.0beta which significantly lower its overhead, so you can choose to run the autovacuum daemon. This is a contributed module which monitors internal PostgreSQL statistics and automatically runs a VACUUM when needed.

    86. Re:Strange really.... by Cajal · · Score: 1

      MySQL's optimized count() function only exists for MyISAM tables. On transaction-safe tables, like InnoDB, you still have to do a full table scan.

      Also, PostgreSQL doesn't do row-level locking. It uses MultiVersion Concurrency Control to avoid locking outright.

    87. Re:Strange really.... by the_mad_poster · · Score: 1

      If your application depends on transactions, configure InnoDB as the default table type for your server, and no need to worry.

      This does not address the fact that InnoDB is a tacked on afterthought.

      --
      Alito: A vote for Alito is a punch in the eye to put that bitch back in her place!
    88. Re:Strange really.... by Jack9 · · Score: 1
      Hi I'm a techno-misfit with no social skillz and a penchant for posting uncreative and unappreciated insults for attention, is this the forum for me?
      Why yes it is, noble AC. Brought to you by bored@work.com
      --

      Often wrong but never in doubt.
      I am Jack9.
      Everyone knows me.
    89. Re:Strange really.... by Anonymous Coward · · Score: 0

      cough-stuckup-cough

    90. Re:Strange really.... by Anonymous Coward · · Score: 0

      Yes god. I agree. Cause, the huge arguments and flamewars regarding this means you are totally right in every way.

    91. Re:Strange really.... by geekwench · · Score: 1
      Personally, I'd like to know what's with the ad hominem attack pattern. Accusations that he will flame (with no evidence that he is prone to do so), calling him "kid", discounting his DBA experience as "work-as-student", et cetera.

      There's another ugly meme on Slashdot that I'd like to see dispatched with a +5 vorpal blade of reality: to wit, that anyone who expresses an opinion on software - or anything else, for that matter - differing from yours is therefore a) younger than you, b) horribly inexperienced / naive, and c) in dire need of a condescending retort in which you Reveal To Them the Error Of Their Ways from the Lofty Mountaintop Of Your Experience and Wisdom.
      In many ways, tech is like a pair of jeans: one size does not fit all, or even most. Some things just can't be done at all in Product X, therefore Package Y has to be brought into use. Some things can be done with one utility more easily or faster than another, in which the difference comes down to user preference. Personally, when it comes to keeping track of my data, I would rather have someone who knows MySQL backwards, forwards, inside, and out than someone who limps along in PostgreSQL (or one of the others), even one of the other DBMSs is the "preferred product".

      Assuming that most other things are equivalent, it isn't the DBMS that makes the difference. It's the knowledge and capability of the person using it. You had no reason to disparage the grandparent poster's abilities and knowledge, other than a difference in opinion. And that, sir, is offensive.

      --
      Doing my level best to piss off the religious right wing...
    92. Re:Strange really.... by wieck · · Score: 1

      InnoDB is as "tightly integrated" into MySQL as the next table handler NDB Cluster. That tight integration must be the reason why the transactions of both won't be ACID together, right?

      --
      It takes a real man to ride a scooter ... what are you compensating for?
    93. Re:Strange really.... by Anonymous Coward · · Score: 0

      This does not address the fact that InnoDB is a tacked on afterthought.

      Whether it was "tacked on" or not does not change the fact that it works well and solves real-world problems. MySQL with InnoDB tables gives you transactions and performance under high read/write concurrency, just like PostgreSQL. Why care when in the development process those features came about?

    94. Re:Strange really.... by vandan · · Score: 1

      I know, I know.
      The anonymous coward / Postgres fanboy is right.

      The thing about generalising is that it's only generalising up to a certain point. After that point it merely becomes commentary on everyday observations.

    95. Re:Strange really.... by jschrod · · Score: 1
      I'm 42, and have been a assistant professor in the past. I have 24 years of experience in the IT area, 22 of them related to databases. Related to me, he is a kid. Now, I'm a CEO of a mid-size IT company, and I wouldn't give a job to somebody like him. Yes, there is a difference between a DBA who is responsible for databases of automotive or banking companies -- that's those I most often work with -- and those who do the work as a student. (They would never get the job there.)

      When somebody expresses an opinion on software, he must explain it -- otherwise it remains just this: an unsubstiantiated opinion. To post such unsubstiantiated opinions is typical of kids, too. That was actually what I was attacking, not the opinion itself: That the GP did neither tell us what his grand "DBA experience" is, nor that he told us any situation where he would prefer MySQL over other DBMSs. He just announced his preference.

      And, reread my post, I gave two reasons why I dislike the GP: (1) MySQL is not the right tool for mission-critical data, and (2) he stated an opinion without any qualifiers (you said it: one size does not fit all), and added credentials that were not qualified either. (With "qualified" I don't mean his qualification, but information about type of work and type of company he's working at.)

      Your flame might be made in good faith, but is not appropriate here. I was harsh to this kid, but it was not a personal attack.

      --

      Joachim

      People don't write Manifestos any more -- what's going on in this world? [Frank Zappa]

    96. Re:Strange really.... by aztracker1 · · Score: 1

      My biggest reason for shying away from Postgre, is the poor windows support... say all you want about windows, but there are plenty of people that are aware, and okay with linux, but prefer to develop on/for windows... I've used linux for db stuff, and generally mysql, because of better windows client support.

      YMMV, but this is just my take on the subject... it may have improved a bit in the past year, but iirc the windows versions still require cygwin libraries... and don't have a good windows toolset, or mature client drivers (odbc, .net etc)

      --
      Michael J. Ryan - tracker1.info
    97. Re:Strange really.... by jadavis · · Score: 1

      Maybe you don't agree, but you completely failed to state a case. If you do decide to state a case at some point, at least consider the important things you give up by avoiding stored procedures.

      The people that developed Slony-I, a BSD licensed replication daemon, and the people that developed tsearch2, a full-text searching engine, all seem to think that stored procedures are important. I think these products are a landmark achievement in the DB world, since they add critical functionality without modifying the server code at all. These features are living proof of PostgreSQL's flexibility and modularity.

      Now, that being said, of course any sufficiently powerful feature can be misused.

      --
      Social scientists are inspired by theories; scientists are humbled by facts.
    98. Re:Strange really.... by RedPhoenix · · Score: 1

      Excellent! Much appreciated.

      Red.

  4. Please stop by ylikone · · Score: 1, Offtopic

    developing all your php apps for use with mysql... lets start seeing more postgresql projects.

    --
    Meh.
    1. Re:Please stop by Anonymous Coward · · Score: 1, Insightful

      We'll start seeing more PostGre projects when more webhosts start offering it with their services. But we won't see that until there's more demand for it. Etc, etc.

      Plus the fact that for 98% of all websites, either option is equally acceptable, are really going to inhibit development of PostGre vs MySQL.

    2. Re:Please stop by kid-noodle · · Score: 1

      Like the other guy said - I'll develop specifically for postgre, when everybody has it instead of MySQL.

      On the other hand, we could all use PEAR. Which will happen when everybody has PEAR.

      --
      fortune -o
    3. Re:Please stop by SomeOtherGuy · · Score: 1

      Put that in your beta player and smoke it....all you suckers who jumped on the VCR bandwagon.

      As soon as I get rid of all of my mp3's, gif files and any other established standard that I am so sinfully using -- I will look to recode thousand of lines of sql statements and php code to use postgres.

      In other words, if it's broke then replace it. If it's not broke than keep using it.

      --
      (+1 Funny) only if I laugh out loud.
    4. Re:Please stop by OmniVector · · Score: 4, Insightful

      i'd rather everyone stop coding strictly towards one database api, and use abstracted interfaces like PEAR, ado.net, jdbc, odbc, etc.

      --
      - tristan
    5. Re:Please stop by DAldredge · · Score: 1

      If you have to recode that many lines to change database engines then it would appear that php is broke, what are you going to replace it with? ;->

      Mod_Perl is cool.

    6. Re:Please stop by GreyGeek · · Score: 1
      I'd rather everyone stop coding strictly towards one database api, and use abstracted interfaces like PEAR, ado.net, jdbc, odbc, etc.

      Exactly. Then, only those databases that are totally ACID compliant and interface compliant would be used. So, when I write a GUI app using Python and Boa_Constructor and connect it to Oracle using ODBC on Win2K, I have to change only a couple of lines to get that app to run under Linux against PostgreSQL. BTW, in my test Python + ODBC was much faster than Java + JDBC.

    7. Re:Please stop by julesh · · Score: 1

      The problem is that with the variations of SQL syntax all over the place just using an API abstraction isn't enough. You'd pretty much need to use a standardised version of SQL that's translated by the access API to the local variant for the server in question. I don't think any of the APIs you mention do that.

      MySQL is a major contributor to this problem, but it isn't the only one... you can't use the same syntax to create a table with an automatically produced index between MS SQL and Access, even!

    8. Re:Please stop by SomeOtherGuy · · Score: 1

      What is wrong with Python? I think it is a very good choice.

      --
      (+1 Funny) only if I laugh out loud.
  5. PostgreSQL by thammoud · · Score: 4, Insightful

    People will switch to PostgreSQL faster than the MySQL folks can type GPL back into the license. They will be crazy.

    1. Re:PostgreSQL by BiggerIsBetter · · Score: 4, Insightful

      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.

      --
      Forget thrust, drag, lift and weight. Airplanes fly because of money.
    2. Re:PostgreSQL by Anonymous Coward · · Score: 0

      'course PostgreSQL isn't GPL'd either.

  6. Nothing new here. by Anonymous Coward · · Score: 5, Informative
    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.

    1. Re:Nothing new here. by Anonymous Coward · · Score: 0

      The problem isn't that they are selling a commercial license, it's that they are implying that you need to buy one under circumstances when the GPL is perfectly suitable. It's license FUD.

  7. We will just fork it by Anonymous Coward · · Score: 4, Insightful

    If they change the license, can't we just fork from the last GPL release?

    1. Re:We will just fork it by VirexEye · · Score: 5, Funny

      The classic "farewell and fork you!"

  8. Forking? by headkase · · Score: 5, Interesting

    Couldn't anyone create their own fork from the last GPL'd source?

    --
    Shh.
    1. Re:Forking? by Dwonis · · Score: 0

      Probably not. MySQL is most probably patented in the US.

    2. Re:Forking? by gl4ss · · Score: 2, Interesting

      patented as in how? and what difference would it make then, to keep using the older version, or keep it under gpl and make everyone pay to them 'for the patent'?

      really, I'd like to know.

      --
      world was created 5 seconds before this post as it is.
    3. Re:Forking? by shystershep · · Score: 1

      If you let someone use something under a license which cannot be revoked (e.g., GPL) then you cannot turn around and sue them for either patent or copyright infringment. They may or may not have a valid, enforceable patent to anything in the MySQL code, but that's not going to stop anyone forking the project under the terms of the GPL.

      --
      The bigotry of the nonbeliever is for me nearly as funny as the bigotry of the believer. - Albert Einstein
    4. Re:Forking? by Cecil · · Score: 1

      If you let someone use something under a license which cannot be revoked (e.g., GPL) then you cannot turn around and sue them for either patent or copyright infringment.

      Oh, but you can. It may not be legally valid to do so, but would you be willing to bring it all the way up to the supreme court if necessary? If you wouldn't, who would? The answer: Nobody.

    5. Re:Forking? by jdhutchins · · Score: 1

      Um, but they've released it under the GPL, which iirc, says you won't sue people for any of your patents that you put into the GPL'd code. So patents are *not* a risk with mysql.

    6. Re:Forking? by wieck · · Score: 1

      Yes, someone could fork. There are just 2 little problems.

      The fork is strictly GPL from there on, no more dual licensing. No big deal if the new team would come up fast enough with a new LGPL client library. Code from the current one can't be reused so the fork would right now lose prepared statements and such - now that was a smart license move from MySQL AB, wasn't it?

      Problem number 2 is way more of an issue. Who in this world right now could a) do any significant work in the server code and b) is not on MySQL AB's payroll? All the really interesting MySQL (tm) users today are desperately waiting for 4.1 or even 5.0. The same features promised for those releases would have to be pushed back for another 2-4 years before any pure open source GPL team could do them (I speak from experience here, I hack the Postgres backend code for about 10 years now and have implemented quite a few features for it). So before the forked ... let's call it "OurSQL" because MySQL is (tm) MySQL AB and that fork would probably not be allowed to use that trademark ... so before OurSQL could satisfy the current user demands, those users would have to either stick with MySQL (tm) for a few years and pay the license fees, or switch to any other database in the meantime.

      I have heard of a lot of successfull MySQL (tm) to PostgreSQL migrations. I have not heard of successfull PostgreSQL to MySQL (tm) migrations. This could be because I am biased, because nobody tells me anyway, because the various PostgreSQL specific gotcha's work as a perfect vendor lock in or because marketing pumps more money into success stories than into failure stories. But I am sure, a few people who stick to MySQL (tm) like chewing gum to a shoe (and in about the same comfortable position) can tell us some of them.

      Jan

      --
      It takes a real man to ride a scooter ... what are you compensating for?
    7. Re:Forking? by Anonymous Coward · · Score: 0

      You can successfully migrate from PostgreSQL to MySQL, but why in Gods name would you want to?

      The pg_dump command can produce SQL output that can be fed into MySQL with a little tweaking (Only required because MySQL wouldn't know standard SQL if it bit it on the arse)

    8. Re:Forking? by Dwonis · · Score: 1

      I didn't say the patents were held by MySQL AB.

    9. Re:Forking? by Dwonis · · Score: 1
      Who says the patents have to be held by MySQL AB? MySQL probably *already* violates a number of software patents.

      MySQL AB would be in a better position to acquire new patents and cross-license with the other patent holders than most people who would fork MySQL.

  9. Well... by joseph+schmo · · Score: 5, Insightful


    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!

    1. Re:Well... by Osty · · Score: 1

      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).

      The only thing I can say to that: About damned time! MySQL is "teh suck" compared to PostgreSQL and all of the other full-featured databases out there. It's only in such widespread use because a) it was GPLed, and b) because of that, many people started using it even though there were and are better databases with better licenses.

    2. Re:Well... by SlowMovingTarget · · Score: 4, Informative

      Well... I did read the article, and it sounded to me that some web page author got overly enthusiastic about when people ought to buy a license for MySQL. Reading anything more into it would seem to be sensationalism to drive people to the clipping (IMHO).

    3. Re:Well... by sbergman2 · · Score: 0

      It's not just here. I'm noticing a shift in allegience from MySQL to PostgreSQL everywhere.

      And as others have said. It's about time. It's been far superior to MySQL for many years.

    4. Re:Well... by Peter+McC · · Score: 1

      I don't see why. An awful lot of geeks (including dear old Slashdot) were on the MySql bandwagon before they had any kind of proper open-source license, and I can't imagine why going back to the way things were would make that many people leave.

      There's just something about MySql that makes people want to use it. It certainly isn't features. It used to be (reading) speed, but that's somewhat less relevant these days since Postgres sucks less for that now. Honestly, I think it's just that people like the simpler solution that they understand; either that, or MySql is easier to set up and get going, and people don't like to change once they've learned it.

      --
      You know what I hate? Wait, what do you like? I hate that!
    5. Re:Well... by PhotoBoy · · Score: 1

      I think you have to take the "laziness factor" into account as well. How many people will want to re-write their apps to use a different DB if they've been using MySQL for the past 2-3 years?

      I use an abstraction layer for all my database interactions (where I can) so that if we ever change DB platform all I need to do is swap out the abstraction layer rather than going through all the code to fix all the MySQL specific calls.

      That said we have a few of apps that are MySQL only a significant amount of time would be needed to "fix" them to use PostgreSQL or other DBs. I think if MySQL are genuinely planning on moving away from GPL stuff they are banking on the laziness factor to pay for it.

    6. Re:Well... by Anonymous Coward · · Score: 0
      MySQL is "teh suck" compared to PostgreSQL

      All right, you asked for it!

      Let's have a GoogleFight between PostgreSQL and MySQL!!!

  10. MYSQL will lose if they stop being Open Source! by TheCeltic · · Score: 0, Redundant

    MYSQL is my preffered lightweight database, but if they stop being open source, POSTGRESQL will immediately take it's place.

    --
    =-=-=-=-=-=-=-= - The Celtic - =-=-=-=-=-=-=-=
    1. Re:MYSQL will lose if they stop being Open Source! by Anonymous Coward · · Score: 0

      POSTGRESQL will immediately take it's place.

      "its".

  11. Good for them... by SnapShot · · Score: 5, Interesting

    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.

    --
    Waltz, nymph, for quick jigs vex Bud.
    1. Re:Good for them... by AKAImBatman · · Score: 5, Interesting

      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.

    2. Re:Good for them... by argent · · Score: 1

      I realize that this doesn't answer the question of whether the GPL itself allows this kind of dual license

      Hasn't hurt Ghostscript that I'm aware of.

    3. Re:Good for them... by flupps · · Score: 2, Informative

      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"

    4. Re:Good for them... by bareminimum · · Score: 1

      >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.

      Not if you don't redistribute your website's code.. Or am I on crack?

    5. Re:Good for them... by Anonymous Coward · · Score: 1, Informative

      You can still use the doublequote if you run with

      --sql-mode="ANSI_QUOTES"


      Note that the above is an option to pass to the SERVER. It does diddly-butkis to help tool vendors. In fact, it only serves to make tools incompatible if it's turned on. A better solution would be to either switch over to ANSI support (the way it should have been in the first place), or allow the setting to be flicked on at the connection level.

    6. Re:Good for them... by Anonymous Coward · · Score: 0

      From MySQL 4.1 onwards, you can do SET SESSION sql_mode='ANSI_QUOTES'; There are several database compatibility modes available (DB2, MAXDB, MSSQL, MYSQL323, MYSQL40, ORACLE, POSTGRESQL) as well that bring the SQL syntax slightly closed to those variants (though there are still differences that must be noted) or you can go with ANSI which applies several options to help bring MySQL into line. More information is available in the documentation on the MySQL Server SQL Mode. That said, I still prefer PostgreSQL.

    7. Re:Good for them... by LuxFX · · Score: 1

      Run a small website with the MySQL database? If all the source to that site is not GPLed, you're in violation.

      Note true -- MySQL AB only requires that a commercial license be purchased if you plan on redistributing their code. It doesn't matter if you use their code on your website. And it doesn't matter if you distribute your website by itself. They only care if your product distribution includes their code.

      Oh wait, you were saying something about MySQL AG. Maybe we're not thinking of the same thing?

      --
      Punctanym: alternate spelling of words using punctuation or numerals in place of some or all of its letters; see 'leet'
    8. Re:Good for them... by ToasterTester · · Score: 1

      Too bad they just didn't go with the BSD license from the beginning then we wouldn't be having this conversation at all.

      I don't like the GPL, I like that the BSD licence it lets you choose. When I have a choice I have freedom. I don't see the freedom in the GPL it dictates too much how GPL code HAS to be used.

    9. Re:Good for them... by Inthewire · · Score: 2, Funny

      ...am I on crack?

      No idea.
      Got modpoints?

      --


      Writers imply. Readers infer.
    10. Re:Good for them... by Tablizer · · Score: 1

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

      I always thought those back-tics looked a bit sinister.

    11. Re:Good for them... by bareminimum · · Score: 1

      Nah.

      But I can arrange SP2...

    12. Re:Good for them... by chromatic · · Score: 1
      I realize that this doesn't answer the question of whether the GPL itself allows this kind of dual license

      What possible legal claim could a license exert over the copyright holder?

    13. Re:Good for them... by chromatic · · Score: 1
      I don't see the freedom in the GPL it dictates too much how GPL code HAS to be used.

      This one time I was all like downloading this program you know and I untarred it blip blipety blip and there was this LICENSE file and I'm all checking it out and GPL this and GPL that and I'm like whatever dude 'cuz it's all YOU HAVE TO SPIN AROUND IN YOUR CHAIR THREE TIMES AND HOWL AT THE MOON and I'm like not even you don't tell me what to do Mr Program and I so deleted it but it came back and crash0r3d my box0r and it was like A. Major. Bummer.

    14. Re:Good for them... by Teancum · · Score: 1

      No, I think you got that one wrong. The GPL allows you to redistrubte their code on your own website, flea market, subway station, commercial bookstore, etc. You can even distrubute a product that includes their code, as that is legal and encouraged by the GPL. You can even sell it for substantial profits, that you can even put directly into your own pocket, like $100 or $500 per CD if you can get buyers for it. None of that has to go to MySQL AB.

      What MySQL AB is saying is that if you write software under a propritary license, and it somehow uses MySQL, you should purchase a commercial license of MySQL before you can sell that software that requires MySQL. That is why the argument regarding if the Linux kernel, which propritary software can and does link to accessing OS functions that are available only under the GPL, is brought up in comparison and the question begs to be asked at what point does MySQL AB really lose its argument with this linking requirement.

      The GPL does not really specify this "right" that MySQL AB is claiming, and it doesn't really make sense to me. If I made changes to MySQL and relabeled MySQL as my own software, that would be a violation of the GPL. If instead I am installing MySQL or OpenOffice on a CD-ROM that also happens to include some propritary commercial software that I am selling for a profit, I don't see how MySQL AB should be demanding profits via the GPL from this propritary distrubution.

      I can build a distribution of Linux and sell it for $10,000. That nobody may buy it is another story, but I can certainly try to sell it for that price, and I am not compelled to even place this distro on the internet (contrary to some people's viewpoints on the subject). You just have to make sure that all GPL'd software also includes the source code if you distribute the binaries with it.

    15. Re:Good for them... by Jearil · · Score: 1

      You are correct. You only have to distribute the source code to a GPL'd product/software/whatever to anyone who you give the binaries to. If you run the website on a server and never make the "binaries" of the website available to the public, you don't have to make the source available.

      GPL only needs the sourcecode to go to anyone using the software, not everyone in the world has the right to ask for the source code if they don't have a copy of the actual program.

    16. Re:Good for them... by julesh · · Score: 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).

      Unfortunately, they probably haven't thought about the fact that when a Java application uses JDBC it doesn't actually get linked to the JDBC driver. What happens is this:

      - The application tells the Java system the name of the class that contains the driver.
      - The Java system loads the driver and links it to internal parts of Java.
      - The application uses internal parts of Java to access the database in a way that is entirely independent of the driver in use and is achieved through indirection.

      I'd personally just distribute the Java application and tell the recipient you need a JDBC driver (any one will do) and database server. Oh, and you'll find MySQL and its JDBC driver on the same disk.

      Perfectly acceptable under the terms of the GPL.

    17. Re:Good for them... by AKAImBatman · · Score: 1

      Be careful here. The GPL does not distinguish between run-time linking and pre-linking like the LGPL does. All it says is that you don't need to GPL your software if it can be considered a "clear and separate" work. Here's the relevant passage:

      These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it.

      The difficulty is that MySQL AB has stated that they consider software a "derivative work" if it explicitly relies on MySQL. Tool vendors who make sure to support multiple DBs *may* be ok, but nothing stops MySQL from attempting to sue you in hopes that you'll settle.

      That's not to say that MySQL AB will sue, but they're certainly a very different company from the one in '98 that was just trying to make a few bucks off of a custom database they wrote.

    18. Re:Good for them... by Anonymous Coward · · Score: 0

      What MySQL AB is saying is that if you write software under a propritary license, and it somehow uses MySQL

      I think somehow uses MySQL is better said as links to MySQL's client code. MySQL wrote the client code and licensed it under the GPL. If your application links the client code, and you distribute said application, you are bound by the GPL to make your application source code available.

      If you don't like it, don't link to their client code.

    19. Re:Good for them... by Teancum · · Score: 1

      No, by reading between the lines, it is if you use functions in the database, like if you use function in the operating system to format a disk or retrieve a data file, you are technically in violation of what they consider to be "linking" to their software.

      The real question is at what point does linking stop being linking. They point out that even connections that are based on raw TCP/IP, according to MySQL AB, are in violation of the GPL. In rough technicalities, if I write some software that scrapes data from a web page that uses an Apache webserver using MySQL for content, and mind you the web page scraper is written just for that specific website, I would be technically in violation of the GPL from their viewpoint. I would have to release that scraper under the GPL from this viewpoint.

      That is where I think MySQL AB is overeaching on their reading of the GPL. In that last example, I may not even be aware of the fact that the web site is even using MySQL. It would also make using Linux or other GPL'd operating systems illegal (following this philosophy) when running propritary software. Since databases are moving into the operating system environment, this is going to be even more of an issue, although I don't thing MySQL is going to be the key component when that happens.

  12. It's MySQL by Anonymous Coward · · Score: 5, Funny
    not YourSQL.

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

    1. Re:It's MySQL by Tokerat · · Score: 4, Interesting


      You just named the fork.

      --
      CAn'T CompreHend SARcaSm?
    2. Re:It's MySQL by ejaw5 · · Score: 4, Funny

      This SQL is YourSQL
      This SQL is MySQL

      MySQL's changin' Licenses
      YourSQL's a G P L

      This SQL was made for you and me.

      --

      $cat /dev/random > Sig
    3. Re:It's MySQL by agurkan · · Score: 2, Informative

      I think I would call it OurSQL.

      --
      ato
    4. Re:It's MySQL by Tokerat · · Score: 2, Funny


      Well, sounds better than NotTheirSQL.

      --
      CAn'T CompreHend SARcaSm?
    5. Re:It's MySQL by Edward+Teach · · Score: 1

      Seriously, when is the fork gonna happen?

      --

      Setting his threshold to 5, Sparky eliminated most of the trolls on /.

    6. Re:It's MySQL by mpmansell · · Score: 1

      Of course, if you really feel upset about things, you could always call it UpYoursSQL :)

    7. Re:It's MySQL by DoctorMO · · Score: 1

      YourSQL is a Mac MySQL Client, GPL.

    8. Re:It's MySQL by Tokerat · · Score: 1


      The sad thing is, I've been looking for a free Mac MySQL client, and I've never heard of it. I'm also a devoted Mac user...I'm falling behind these days I guess (damn you, ex-girlfriend, for making my life hell!)

      --
      CAn'T CompreHend SARcaSm?
  13. Great! by The+AtomicPunk · · Score: 3, Insightful

    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!

    1. Re:Great! by MP3Chuck · · Score: 1

      I'm sure not all SQL's are created (entirely) equal, but as someone who's just getting started with databases (via MySQL) is there any reaosn I should be considering PostgreSQL over MySQL? I keep reading that Postgre is "better" and "more serious" than MySQL, but in what ways? I figured the differences between the SQL's were mostly internal...

    2. Re:Great! by rycamor · · Score: 2, Informative

      MySQL Gotchas

      MySQL doesn't feature anything remotely like ANSI-standard SQL behavior. Migrating from MySQL to any other SQL DBMS is much harder than migrating between all the other major DBMS's put together. MySQL is the odd man out, here.

    3. Re:Great! by Rydain · · Score: 1
      I don't have extremely indepth knowledge of the differences between MySQL and PostgreSQL, especially when it comes to standards compliance, but I have developed web applications that ran on both backends. With that in mind, it didn't take me long to prefer PostgreSQL to MySQL because it supports some extremely helpful features that MySQL lacks.

      In PostgreSQL, you can set up views, which are essentially predefined queries that allow you to efficiently access data without needing to know about its underlying structure. PostgreSQL uses sequences to perform the functionality given by autoincrementing fields in MySQL, which is A Good Thing(tm) because it allows for more flexibility. For example, if you have multiple tables with an ID column that you want to ensure is always unique across all of said tables, you can simply attach the same sequence to each column. This would be much more difficult (if not impossible) to accomplish in MySQL. Last I heard, the stable branch of MySQL did not support subselects, which can be run in PostgreSQL. That may have changed, but I thought it was worth a mention just in case it didn't.

  14. Who the hell is we? by Anonymous Coward · · Score: 1, Informative

    Exactly who will fork this, who is this mythical we?

    The code is so huge that only the core developers have much of a clue of what is going on. Apart from those few people, there are not many who will be able to get up to speed and take the project in a new direction.

    1. Re:Who the hell is we? by rokzy · · Score: 1

      yeah but it'll be fully commentend and documented right?

    2. Re:Who the hell is we? by Lumpy · · Score: 2, Interesting

      you know nothing about programming I see...

      The Blender community that bought the sourcecode to Blender was able to get exactly ONE developer that knew anything about it and they turned blender into a product that surpasses anything that NAN could have hoped that Blender could have become.

      programmers with an itch and are pissed off by stupid corperate tricks can outprogram the highest paid code jockeys on this planet easily.

      that's just one example, there are more out there I just can not think of them right now.

      --
      Do not look at laser with remaining good eye.
    3. Re:Who the hell is we? by mumblestheclown · · Score: 4, Funny
      Shhh! You're exposing the real cracks in the OSS model!

      Commercial Software

      a few guys then
      a few products then
      early success then
      money! then
      more guys then
      a few more products then
      more money!
      then more products (some good some bad) then
      more money! then
      more guys then..

      OSS:

      a few guys then
      a few products then
      early success then
      fame and glory for a few guys then
      more guys then
      a few more products then
      some fame for more guys then
      maybe some people will join here and there then
      a few bug fixes and patches then
      not really any fame for the new guys then
      people just stop caring because..
      it suddenly dawns the german dork who spent 3 months in his basement writing a slighly faster screen refresh algorithm for some OSS spreadsheet program that has 1% market and that is pretty much only due to some for-profit entity working to the letter but not the spirit of the GPL that a) deep down, nobody gives a damn about where their spreadsheet screen refresh algoritm comes from and b) that there is an outside, and that even chasing girls unsuccessfully is better than working for redhat/ibm/whatever without getting paid.

    4. Re:Who the hell is we? by Bastian · · Score: 1

      d00d, you totally forgot Mozilla. If you want to stick with databases, Firebird is another good example.

      Given enough eyes, all kludges are visible.

    5. Re:Who the hell is we? by Anonymous Coward · · Score: 0

      What about Mozilla? Most of the core work is still done by ex-AOLers.

    6. Re:Who the hell is we? by Red+Pointy+Tail · · Score: 1


      Heh, this *is* really quite insightful! I wonder which point the OSS is at right now...

    7. Re:Who the hell is we? by TwinkieStix · · Score: 1

      I'm not sure if you are joking or not.... The grandparent was obviously a joke. There are benifits to coding in OSS. First, the fame often leads to money. If you wrote that faster screen refresh code, you have the right to put that on your resume, and some video game company might like that. Also, many companies see that it's cheaper to use OSS software pay someone (maybe outsourced, maybe in-house) to customize that software for internal use. Many times that customized software is released back into the real version (if it's distributed it comes with OSS source). Lots of kernel code comes from the likes of Red Hat and even Linksys.

  15. "Distribute Interally" by nutznboltz · · Score: 1

    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"?

    1. Re:"Distribute Interally" by EvilTwinSkippy · · Score: 1
      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.

      --
      "Learning is not compulsory... neither is survival."
      --Dr.W.Edwards Deming
    2. Re:"Distribute Interally" by gl4ss · · Score: 1

      *At what point does a distribution system cross the line from interal to beyond?*

      just when you would expect it to, when an individual outside the 'internal' gets his hands on it.

      could you defend warezing by adding a clause "don't use this" to every warez release? of course not, such technicalities offer little in the real world, if it is out then it is out - if you did not intend it to get loose having little relevance to the fact that you couldn't secure it from doing so.

      --
      world was created 5 seconds before this post as it is.
    3. Re:"Distribute Interally" by Anonymous Coward · · Score: 1, Insightful

      There's not actually any concept of 'internal use' in the GPL, you know... there's no line to be crossed. The requirement is simply that those who receive the binary from the distributor are entitled to the corresponding source.

      As far as leaked binaries are concerned, good luck. As far as the developing company or individual is concerned, they haven't released binaries, so they've no obligation to release sources either.

      And I doubt any court would see binaries obtained illegitimately as forcing the release of source - you might well find yourself under attack for breach of copyright by possessing them.

  16. I guess this would make it... by deathcloset · · Score: 5, Funny

    TheirSQL

    *snicker snicker*

    1. Re:I guess this would make it... by borgdows · · Score: 1, Funny

      or maybe : OurSQL BelongToUs Edition

    2. Re:I guess this would make it... by user32.ExitWindowsEx · · Score: 1

      AllYourSQLAreBelongToUs

      --
      "Evil will always triumph because good is dumb." -- Dark Helmet
    3. Re:I guess this would make it... by funaho · · Score: 1

      I love MySQL but given their version of the SQL language, perhaps the fork should be :

      ICantBelieveItsNotSQL :)

    4. Re:I guess this would make it... by Big+Sean+O · · Score: 1

      If we change the name, we can change the pronunciation of SQL to go along with it...

      iSQL

      YouSQL

      WeAllSQL4IceCream

      I've had enough of the ess-que-ell vs. sequel debate, let's just call it after the pig that it is:

      Squeal.

      --
      My father is a blogger.
  17. Brings to mind a question.... by hot_Karls_bad_cavern · · Score: 2, Interesting

    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 the old code?

    This article just made me wonder a few things, someone help me (others) out here.

    1. Re:Brings to mind a question.... by Anonymous Coward · · Score: 1, Informative

      If they release under the GPL, that code stays under GPL forever. Anyone who has gotten a copy has all the rights and responsibilities to the code as laid out in the GPL.

      If no one has gotten a copy of it yet, then they can re-license the code however they want and no one would be the wiser.

      This is why the GPL is so good. It gives the authors the Freedom to choose whichever license fits their mindset. If they don't want to use the GPL, the authors are Free to choose any other license they like. The GPL has no restrictions on that!

    2. Re:Brings to mind a question.... by offpath3 · · Score: 2, Insightful
      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 they incorporate it into a newer version, they could not release it under any license other than the GPL without my approval, unless they were to remove my code. 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.

    3. Re:Brings to mind a question.... by YOU+LIKEWISE+FAIL+IT · · Score: 5, Interesting

      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
      --
      One god, one market, one truth, one consumer.
    4. Re:Brings to mind a question.... by offpath3 · · Score: 5, Informative
      If no one has gotten a copy of it yet, then they can re-license the code however they want and no one would be the wiser.

      This is actually an unfortunate misconception about the GPL. By releasing code under the GPL, you are by no means giving up your ownership over the copyright under that code. As the owner of the copyright, you're welcome to do anything you want with it, including licensing it under any other license you see fit, and MySQL does just this. They offer MySQL under two separate licenses, one GPL, one not, and you can pick which one you want to use.

    5. Re:Brings to mind a question.... by Anonymous Coward · · Score: 1, Insightful

      I'm not sure what I've misconceived here.

      A project released under the GPL stays under the GPL. No retroactive licensing may be applied to the code. This does not prevent me (the author/copyright owner) from re-licensing the code under any other license that I deem useful.

      In the situation that I released under GPL and then took the code back immediately before anyone had a chance to gain access to it, my GPL'ing of the code is essentially moot. It would be as if I had never released the code under the GPL.

    6. Re:Brings to mind a question.... by offpath3 · · Score: 1

      Sorry, I must have misunderstood what you were saying. I believe we are in agreement, then. =)

    7. Re:Brings to mind a question.... by tomhudson · · Score: 3, Funny
      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).
    8. Re:Brings to mind a question.... by DragonMagic · · Score: 1

      From what I'm aware (though IANAL), only the code they've distributed as GPL retain the GPL license. However, if they distributed the same code under GPL as, say, the PHP License, they can withdraw the GPL distribution from their own channel and keep only the PHP License version. If no one got ahold of the GPL version, then there is no more GPL version to distribute.

      However, once it is distributed under the GPL and someone gets ahold of a copy of it through the distribution chain, it stays under the GPL if it is ever distributed again.

      This is why some people, like id Software, will release code under the GPL, but still offer a non-GPL version license on the same code, in case the people who will use it do not wish to license it under the GPL.

      --

      Human nature is the same everywhere; the modes only are different. -- Earl of Chesterfield
    9. Re:Brings to mind a question.... by conradp · · Score: 4, Insightful

      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.

      --
      "To be absolutely certain about something, one must know everything or nothing about it." -- Olin Miller
    10. Re:Brings to mind a question.... by Zangief · · Score: 2, Informative

      I'm not sure what I've misconceived here.

      A project released under the GPL stays under the GPL. No retroactive licensing may be applied to the code. This does not prevent me (the author/copyright owner) from re-licensing the code under any other license that I deem useful.


      Yeah, but since the original author still retains copyright over the work, he has the right to say, from this point on, this work will be completely closed source. The older versions, are still GPLd, and someone else may take over manteinership.

      In the situation that I released under GPL and then took the code back immediately before anyone had a chance to gain access to it, my GPL'ing of the code is essentially moot. It would be as if I had never released the code under the GPL.

      In practice, yes.

    11. Re:Brings to mind a question.... by Zangief · · Score: 1

      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 they incorporate it into a newer version, they could not release it under any license other than the GPL without my approval, unless they were to remove my code.

      AFAIK, the MySQL company buys back any contribution they seem fit to integrate into the MySQL project, so it is most probable that they are the sole owners of MySQL.

      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.

      This also makes a lot of people uneasy about the FSF. I didn't heard about this, and now I am also uneasy

    12. Re:Brings to mind a question.... by Anonymous Coward · · Score: 0

      >> Where this gets dicey

      dicey for who? mysql and co, or f/oss supporters?

      be clear. or don't use ambiguous language.

      it's only dicey for them. if it's gpl, then when they make a proprietary version, it's a fork.

      then immediately you will see yoursql 4.x come out. and you will see mysql drop off the face of the planet.

    13. Re:Brings to mind a question.... by Anonymous Coward · · Score: 0

      I'm affraid not many will wait for anything good from such icon of the open source movement, which is MySQL AB!

    14. Re:Brings to mind a question.... by lspd · · Score: 5, Insightful

      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.

    15. Re:Brings to mind a question.... by joeykiller · · Score: 3, Insightful
      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?
    16. Re:Brings to mind a question.... by Anonymous Coward · · Score: 0

      I'm confused as to what you are trying to "correct" me on.

      Nothing you write contradicts nor expands upon what I wrote.

      Is there some secret code that I didn't include in my post?

    17. Re:Brings to mind a question.... by maxpublic · · Score: 2, Interesting

      No retroactive licensing may be applied to the code.

      That's true of anything copyrighted, not just computer code under the GPL. Once you release it under copyright X, you can't further restrict that release in the future - although you can relax restrctions, if you so desire.

      Unless, of course, you're Disney and can buy congress critters to grandfather whatever inane copyright schemes your lawyer-weasels have dreamed up during their luncheon crack sessions.

      Max

      --
      My god carries a hammer. Your god died nailed to a tree. Any questions?
    18. Re:Brings to mind a question.... by jrumney · · Score: 1
      the real license is still the GPL, and their "interpretation" of the GPL holds little or no legal standing.

      If they make their interpretation of the license clear, and you could reasonably be expected to know about it before you "infringed", then it could hold a lot of legal standing. Regardless of what you think you could get away with in court, you would be better off legally, ethically, and probably technically, using another database if you are not prepared to follow MySQL's interpretation of the GPL.

    19. Re:Brings to mind a question.... by julesh · · Score: 1

      If you have a clause in the license that says you may modify the license, you can probably get away with that. As long as the modifications are "reasonable" and you took "reasonable" steps to ensure all licensees were aware of the modifications.

    20. Re:Brings to mind a question.... by Phred+T.+Magnificent · · Score: 1

      FSF only asks this for software that's part of the GNU project, not for all GPL software. Their stated reason is that they don't believe they have a legal right to enforce, or even assist in enforcing, copyrights they don't own. In other words, if someone violates the GPL for non-GNU software, FSF and their lawyers can't (or won't) do anything about it. The owners of the code have to take care of it themselves.

      --
      Where is the wisdom we have lost in knowledge?
      Where is the knowledge we have lost in information?
    21. Re:Brings to mind a question.... by rmortimer · · Score: 1

      Look over on Groklaw.net there is an excellent guide to the GPL and the differences between a licence and a contract (http://www.groklaw.net/article.php?story=20031214 210634851). There is nothing wrong with a duel licence policy. The payment for the GPL is that if you extend a product you contribute the addition to the common pool. If you would rather pay money to the owner to by-pass this then OK. It is his code after all. Of course this can also form part of the protection. A project with many contributors requires all of them to agree or for the bits belonging to those that do not agree to be removed and re-written from a functional specification (reverse engineered). The GPL is not about refuseing to make money it is about making it form services while jointly maintaining a common pool of code.

    22. Re:Brings to mind a question.... by KewlPC · · Score: 2, Informative

      Actually, you can restrict future versions of software released under License X, provided that you own the copyright to all the code in the project.

      For example, let's say Company A makes Program 1.0, and releases it under the GPL. Everyone likes the program, people use the GPL'ed code to make new programs, etc. Then, the OS-friendly management gets replaced by some unscrupulous types, and they decide to make Program 1.1 closed source.

      Now, provided that they own all the copyrights to the Program 1.1 code, they can do this. They cannot, however, go back and sue the people still using the Program 1.0 source code that was released under the GPL. And, if somebody outside the company made improvements to Program 1.0 that were then rolled into the Program 1.1 code, then Company A would not own all the copyrights to the Program 1.1 code (unless the person who wrote the improvements signed over the copyright), and would therefor not be able to make Program 1.1 closed-source.

    23. Re:Brings to mind a question.... by YOU+LIKEWISE+FAIL+IT · · Score: 1
      It's a conflict of interest that consistently leads to abuses.

      Maybe, but this doesn't mean it's the best way to make money in these circumstances.

      Some of us like to code. And we like to see our software popular, out in the wild. But we want to eat as well, pay our rent on time, etc etc. I used to be like this, before I burnt out on software engineering.

      It is nice, and gratifying, when a company wants to give you some money in exchange for something nifty you wrote.

      A few years ago, a piece of software I wrote with some other people ( I won't mention the name, but it was popular with some Fluxbox users ) attracted the attention of a company who wanted to use it in a closed, handheld computing setting. I was happy to relicense my contributions to the project maintainer so that he could make a few dollars off it, and I was happy to see my creation having a possibility of a wider release. It didn't cost me anything except for time I had already given freely. I'm not sure if their project ever came to fruition.

      Now, your post decries this kind of action as a conflict of interest, but it did nothing to invalidate the free arm of the software - which continued to grow, change hands, have developers switch in and out. I can't see what the problem is.

      YLFI
      --
      One god, one market, one truth, one consumer.
    24. Re:Brings to mind a question.... by gnuLNX · · Score: 1

      "Trolltech advances the idea that software you create using the GPL version of QT can't be reused in a commercial product"

      No this is not true. Troll Tech andvances the idea that QT cannot be used in a closed source application unless a commercial license is bought....you can't release a closed source GPL app regardless any way so how does it affect the GPL developer ina bad way?

      --
      what?
    25. Re:Brings to mind a question.... by devnullify · · Score: 1

      You're missing the point.

      Once a release is licensed under a specific license, that license cannot be revoked. Program 1.0 is still GPL, and can be forked and extended, despite 1.1 being released under a non-GPL license.

    26. Re:Brings to mind a question.... by KewlPC · · Score: 1

      No, I got the point.

      In fact, I specifically said that they cannot go back and sue somebody who's using the code for Program 1.0, since it is, and will always be, GLP'ed.

  18. No great loss by nurb432 · · Score: 1

    There are others to take its place, that will never have such license issues ( like berkeleyDB, or postgresSQL )

    --
    ---- Booth was a patriot ----
  19. License of MySQL by shawn_f · · Score: 2, Insightful

    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/ 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...

    1. Re:License of MySQL by Anonymous Coward · · Score: 0

      I am sure they will loose some users

      "lose".

    2. Re:License of MySQL by datajack · · Score: 1

      When BB's license became too restrictive for me, I couldn't determine whether what we were doing with it required spending hundreds on the commercial license or not, I loosed myself ;) from my ties with BB and chose another package.

      Tis a shame really, as I hjad written several BB plugins and ran (with the author's blessing) an archive site of client binaries for various platforms.

  20. Postgres will rrule then by SQLz · · Score: 2, Informative

    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.

    1. Re:Postgres will rrule then by dmaxwell · · Score: 1

      What I got out of it wasn't that they are changing the license. It seems to me, that MySQL AB seems to confabulate linking with communicating. As others have pointed out, using ODBC to connect to a database is just like connecting to a web server with a web browser. What MySQL is apparantly up to is even worse than choosing an Evil New License. It looks like they are trying to pervert the GPL with an overly broad interpretation.

      If MySQL persists in this, software devs will have to reduce interoperability for their own good. According to them, an ODBC connector has to be GPL. The app that communicates over the connector has to be GPL. I wouldn't even be surprised if the data in the database has to be GPL as well. MySQL will exist in a Galapagos style ecosystem where no other code outside it will interoperate in anyway. Hell, the proprietary browser that connects to web app that connects through ODBC to the database would have to be GPL too. Just to be safe, mind you.

      Sarcasm aside, I have heard noise that PHP scripts that talk to MySQL would have to be GPL. As usual, it will take some nasty court battles to sort out what you really can and can't do. Hey MySQL, legal clarity is a major reason many of us use this stuff. YOU AREN'T HELPING. Nimrods.

      Up till now, I always worried about evil companies like SCO and MS trying to legally narrow the GPL for nefarious ends. Maybe that isn't the real worry. Regardless of their rhetoric, MS distributes some GPL code properly. This would seem to indicate understanding and some legal respect for what those copyright holders could do. SCO? Well, they're done. The only question is which way the carcass gets carved up. Maybe the real worry is companies like MySQL trying to push the GPL a bit farther than it is really supposed to go.

      I have little patience for GPL-is-a-virus FUD from proprietary fanboy zealots. If anything, I dislike it even more from a FOSS vendor. All the former can do is sling easily refuted mud. The latter can do real damage and give the proprietary world a lot of unintended aid and comfort in the process.

  21. It's all about $ by kennycoder · · Score: 1

    Let's see.. lot's of us make money using their DB... mostly "free" non enterprise versions. They are not getting anything with this, so they are trying to make some profit, changing their "interpretation" of GPL.

    --
    Fucking a fat girl is like riding a scooter... it's fun 'til someone sees you.
  22. Error in Logic? by Anonymous Coward · · Score: 2, Insightful

    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?

    1. Re:Error in Logic? by EvanED · · Score: 2, Insightful

      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 the GPL and not try to find loopholes.

    2. Re:Error in Logic? by Anonymous Coward · · Score: 0
      1. If your product talks to MySQL, you must release it as GPL.

      Ok, MySQL is distributed with the GPL. The GPL says that if you distribute a changed GPL product you have to GPL it. If you just want to run your code without distributing it, the GPL lets you do that.

      So if you're distributing your product that talks to MySQL then you're right. However, a *lot* of web development out there stays right where it was written, so no problem.

    3. Re:Error in Logic? by Anonymous Coward · · Score: 0

      I meant as a company. Their dual-license indicates if you're a company and you make a profit and your product talks to MySQL at all you must get a license for $450 or release your software as GPL.

  23. Devs move to Postgre by RWaye · · Score: 2, Insightful

    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.

  24. Read the article folks by ttfkam · · Score: 5, Insightful
    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!
    --

    - I don't need to go outside, my CRT tan'll do me just fine.
    1. Re:Read the article folks by Anonymous Coward · · Score: 0

      Developer3: what kind of dipshit would try and package some FOSS as their own?? are you trying to make your program look better than it is???

      Sell your App, and give the customer the other software if they do not have it already.

      only a asshat tries to sell FOSS that they did not write to begin with to a customer.

      quit being a lazy ass and sell your app and give away the others if the customer does not have it already.

    2. Re:Read the article folks by ttfkam · · Score: 1

      What part of "linking" did you not understand in the GPL. Sure, you can do it. What about the PHP guys who made your precious MySQL interface? Oops! Touched GPL. License override! And the PHP Apache module? Well if that PHP code is touched, BINGO! So's Apache.

      So how do the PHP guys distribute their code without converting (back) to GPL?

      Simple. They don't. They transfer all new effort to PostgreSQL. But wait! There's the MySQL FOSS Exception. ...and now you see why it exists.

      Or did you think everyone builds Apache and PHP from source at every installation?

      --

      - I don't need to go outside, my CRT tan'll do me just fine.
  25. Don't be such sheep by fishdan · · Score: 5, Insightful
    I'm not saying that MySQL is the greatest thing since sliced bread, but Open For Business 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.

    --
    Nothing great was ever achieved without enthusiasm
  26. Article text (currently /.ed) by Anonymous Coward · · Score: 3, Informative

    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

  27. MySQL has always been "a gray area" to me. by rolling_bits · · Score: 1

    Because of its licensing issues... I never quite understood it. But right now, I have no doubt, or your program is GPL, or you should buy a f---ing license, no matter what OS you use. I'm happy though that I'm investing some time on Firebird, which has much better licensing, and I expect to use PostgreSQL as well...

  28. Free software by Sir+Homer · · Score: 5, Informative

    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.

    1. Re:Free software by Bastian · · Score: 4, Interesting

      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.

    2. Re:Free software by Dr.+Zowie · · Score: 0
      The article states that this doesn't effect free software at all.

      Assuming that you mean "...this doesn't change anything related to free software at all", rather than "...this doesn't create any free software at all", you wanted to use "affect" here instead of "effect".

      Remember: If Bob effects chocolate cake, he is making serviceable chocolate cake. If Bob affects chocolate cake, he is causing change in the cake. (Time to check Strunk and White...)

  29. Email the FSF by Short+Circuit · · Score: 3, Informative

    Maybe you should email the FSF. They're the gurus on all legalese GPL.

  30. Recent Changes to Client License by Unknown+Relic · · Score: 4, Insightful

    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.

    1. Re:Recent Changes to Client License by rhaas · · Score: 5, Insightful

      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.

  31. Whether the GPL allows dual licensing? by ClayJar · · Score: 1

    The copyright holder for a given work (piece of code, whatever) can license it according to whatever terms they'd like. If they release a copy of the work under the GPL, then that copy can be used according to the terms of that license. Meanwhile, if they wake up with a humorous streak and license it BSD-style with the added requirement that to use the code you must paint your nose purple, that's fine, too.

    Think of releasing a work under a license as analogous to attaching a tarball to an email message. The recipient (licensee) has a copy of the work and whatever permissions you granted. You still have the tarball and can send it to another recipient and grant that recipient different permissions. (Of course, once you start getting into exclusive licenses, et al, you're out of the scope of this post.)

  32. all the better by ryane67 · · Score: 2, Insightful

    ill be happy if they change the license away from the GPL and it happens to run their marketshare to nothing.

    Honestly I never understood what people saw in mySQL other than the FREE aspect, and if that was the only thing they were looking for Postgres, Oracle (for personal use), and MSDE (MS sql server free ver) are all much better tools for the same price.

    --
    ?SYNTAX ERROR IN LINE 42
    1. Re:all the better by Anonymous Coward · · Score: 0

      I can't believe you compared MySQL to MSDE. You just about destroyed all your credibility in one sentence. Lay off the black tar heroin for a few days, okay?

    2. Re:all the better by Anonymous Coward · · Score: 0

      i know, transactions by default, stored procedures in databases i wrote years ago, two way replication - there's just no comparison

  33. Is MySQL SCOing its users? by Anonymous Coward · · Score: 0

    That's terrible...

  34. One more reason to use standard interfaces by davidwr · · Score: 5, Insightful

    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."

    --
    Knowledge is how to play a game, intelligence is how to win, wisdom is knowing what game to play.
    1. Re:One more reason to use standard interfaces by ManxStef · · Score: 1

      Surely you mean Open DataBase Connectivity (ODBC)? (Probably just a typo; I'm not actively pursuing a career as an Acronym Stickler, honest!)

      The merits of using a (R)DBMS's features or not, such as stored procedures, views, triggers, subselects, user management and security, was discussed fairly recently in the Slashdot topic Stored Procedures - Good or Bad? (though obviously it mostly concerns SPs). There are a good few interesting and insightful posts in there, and it's well worth checking out.

      My personal opinion is that if portability is not a definite requirement/design constraint then it's a waste not to use features that are designed to make your life easier. Most projects will *never* switch from the "Big Three" (Oracle, DB2, MS-SQL) once they've chosen one, so if there's no explicit *need* for DBMS portability then why expend the time & effort (and therefore money) programming it in, ignoring the features that make your life easier and improve security, data integrity, code quality, abstraction, performance, etc. striving for a base compatibility level between databases using "vendor-neutral SQL" (if that even exists?) chasing a "what if..."? Of course, every project is different and there are other ways to achieve similar effects, but the vast majority would be better off just using the features of their chosen DBMS!

      (Note that I'm not disagreeing with you as such, merely providing another, somewhat differing, opinion on application design.)
  35. Means not "to the public" as defined by case law by tepples · · Score: 1

    At what point does a distribution system cross the line from interal to beyond?

    The owner of copyright in a computer program has the exclusive rights to authorize distribution of copies of the program to the public. I would take a reasonable guess that copyright case law defines "the public."

    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"?

    Of course. See also trade secret law.

  36. IMHO They never understood L/GPL by SkoZombie · · Score: 1

    I worked on a commercial project that was Apache/PHP/MySQL on linux ... i talked to them long and hard about licencing ... even calling the US (I'm in Australia) to talk to a person (Gerald i think it was) about the licencing. They seemed quite unsure in themselves about what you could and couldn't do with MySQL (being GPLed) and the MySQL API which was (at least at the time) LGPLed.

    I think this sort of article could be a good way for MySQL AB to find out how much support they'll loose if they turn around and change the licence ... that or how long it'll take for people to fork a free version.

    If they become non-free I'll gladly move to PG ... ppl are telling me i should anyhow!

  37. Sniffles? by soloport · · Score: 1

    "everyone passes through an abassador"

    Give your cold to Contac!

  38. All your installed base are belong to MySQL by tepples · · Score: 1

    How many web hosting companies offer PostgreSQL in small-business virtual hosting packages, compared to MySQL?

    1. Re:All your installed base are belong to MySQL by __aainau5532 · · Score: 1

      You may be asking yourself what this means for web hosting companies.

  39. ODBC is not "circumvention" by justins · · Score: 4, Insightful
    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.
    --
    Now before I get modded down, I be to remind whoever might read this that what I am saying is FACT. - bogaboga
    1. Re:ODBC is not "circumvention" by Ronny+Cook · · Score: 1
      Communicating with a database via "TCP/IP or another protocol," such as ODBC, is not in any way a circumvention of the GPL.

      If it *were* a circumvention of the GPL (which it isn't)... my goodness, SCO's drunken ramblings about the GPL being viral would barely begin to cover it. Anything that talks to a GPL program having to be GPL? Within seconds half of the Internet would be GPLed. A web server talks to MySQL, so it's GPLed. My browser talks to the web server, so it's GPLed. The next site I visit is also forced into the GPL.

      The GPL is a copyright licence. Internet protocols are a matter of formatting and implementation - they could be patented, but can't affect the copyright of the software holding up either end of the connection.

      I can understand that as a commercial developer they need to get their revenue from somewhere, but "re-interpreting" the GPL is not the way to do it. If they're going to dump the GPL, they should do it. They may not be "licence police", but reputable companies will try to stick to the licence anyway - or dump MySQL.

    2. Re:ODBC is not "circumvention" by lurcher · · Score: 1

      As the "unixODBC guy" can I point out I did make that point, but I can't control what part of my comments were quoted in the article.

      My point was if you are using software via TCP/IP, ODBC or poking it with a stick, you are still using it, and if that use is for commercial purpose, I don't see how the "usage" matters.

    3. Re:ODBC is not "circumvention" by Rich0 · · Score: 1

      The GPL FAQ points out that areas like this are generally decided based on the level of communication intimacy.

      If the network communication exists solely to enable communication intended by a standard protocol across a network, then it is probably OK. When a proprietary web broswer connects to a GPL webserver it simply asks for a webpage and gets it - it doesn't use the connection to help serve webpages to other systems, offload webserver workload, perform particular functions for the webserver, etc.

      On the other hand, imagine that I want to make non-GPL linux. I could simply add hooks in a couple of major functions to open a TCP connection to a piece of proprietary software on the same machine. I'd distribute my hooks under the GPL, and now I can embrace and extend the kernel. This is essentially what kernel modules do - which is why they are troublesome from a GPL-standpoint...

    4. Re:ODBC is not "circumvention" by justins · · Score: 1
      As the "unixODBC guy" can I point out I did make that point, but I can't control what part of my comments were quoted in the article.

      My apologies. Thanks for correcting me. :)
      --
      Now before I get modded down, I be to remind whoever might read this that what I am saying is FACT. - bogaboga
    5. Re:ODBC is not "circumvention" by justins · · Score: 1
      If the network communication exists solely to enable communication intended by a standard protocol across a network, then it is probably OK. When a proprietary web broswer connects to a GPL webserver it simply asks for a webpage and gets it - it doesn't use the connection to help serve webpages to other systems, offload webserver workload, perform particular functions for the webserver, etc.

      With the proliferation of web standards and gadgets and the integration of "application server" software with the web server itself, I think you can probably find web servers that do most, if not all, of that stuff, and browser plugins for most of it. I expect that the different sorts of protocols and things that can served with today's "web server" vastly exceeds the variety of things the average database server can do conceptually. I don't know that it matters that much, though, wrt licensing under the GPL.

      The GPL FAQ points out that areas like this are generally decided based on the level of communication intimacy.

      That would work fine if you were just quantifying what level of the 7-layer model something sat at, or something. But unfortunately it ends up being more subjective, and using the same license for everything ends up being real limiting if you have specific uses you want to prevent.
      --
      Now before I get modded down, I be to remind whoever might read this that what I am saying is FACT. - bogaboga
  40. "New Offerings on the Horizon" by ttfkam · · Score: 4, Interesting
    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.
    --

    - I don't need to go outside, my CRT tan'll do me just fine.
    1. Re:"New Offerings on the Horizon" by Dr.Dubious+DDQ · · Score: 2, Interesting

      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 only support MySQL as a database server - often programs that don't NEED more than basic database support (e.g. GPSDrive's use of MySQL to store its list of waypoints and Kismet-detected WAP's...) If there were a compatibility layer for PostgreSQL such that it could "fill in" for a MySQL server without re-writing the client side program that would be handy. If MySQL continues to expand to the point where it is no longer "leaner" than more heavily-featured database servers then backwards-compatibility will be the main reason left to stick with MySQL...

    2. Re:"New Offerings on the Horizon" by danharan · · Score: 4, Insightful

      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.

      --
      Information: "I want to be anthropomorphized"
    3. Re:"New Offerings on the Horizon" by rwelty · · Score: 1

      such a mysql compatibilty mode seems extremely unlikely. i wouldn't claim that postgresql is strictly ansi, it has a number of incompatibilities, but it tries hard to be ansi and new stuff seems to be well vetted against ansi standards. "mysql compatibility" mode would be a sharp change, and in particular, there are things in mysql that you really wouldn't want to be compatible with (e.g. the behavior with respect to numeric overflows; postgresql raises exceptions while in many cases, mysql silently truncates.)

    4. Re:"New Offerings on the Horizon" by Etyenne · · Score: 1
      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.

      Who talk about "big developments" ? MySQL feature set is just fine for "small development", which happen to encompass most database deployement in use today. I am glad for you that Oracle have stored procedures and all that as you need these features, but realise most people don't.

      --
      :wq
    5. Re:"New Offerings on the Horizon" by danharan · · Score: 1

      Ok, define "small developments". I have a project for a small business owner, and there are 50+ tables in the database, done with MySQL. It's hell.

      E.g., the following was not possible:
      DELETE From table where id in (SELECT id from table1 where child_id = '3')

      WTF? It's one thing flying by the seat of your pants and not using foreign keys... it's quite another having to triple your work to do very simple operations that are fairly routine in a moderately normalized database.

      And how about transactions? Did they not assure us that they weren't needed? Maybe for most small projects, but even a small shopping cart is vulnerable to data corruption without it: you have to delete the cart, insert the order, send an email to the user, update inventory and advise the owner. They all have to succeed, or you're screwed having to manually clean up. You can play around the order of operations to make things less critical, but you can't have a situation where you can feel confident that nothing awful could happen.

      Take the kludge they proposed for getting around their lack of nested SELECTs- when creating reports for a project, that adds a lot of time to development.

      I realize those three features are in the "new and improved" MySQL, and that I was constrained to an old -but stable- version (3.23). But I'll be upgrading to PostgreSQL instead- if I'm going to have to do go through the bother of an upgrade, I might as well go with a db that is more standards compliant, and where the people developing it seem to understand my actual needs a tad better.

      The shopping cart is not a "big development" by most standards, but it is already constrained by MySQL's poor feature set. If you don't know what database normalization is, google it, learn and apply it. Now try to do anything useful with MySQL. I've seen other developers hit a brick wall after just 10 tables, because of missing issues that are standard on other RDBMSs or MySQL's "gotchas." Stored procedures aren't even something I'm necessarily interested in. It's the rest of the stuff I needed, and I resented being told they weren't important features, or that I could kludge my way around deficiencies through writing more code.

      --
      Information: "I want to be anthropomorphized"
  41. Is MySQL Planning a Change of Tune? by flacco · · Score: 1
    yes, and it's lyrics go something like this:

    "we're about to make ourselves irrellllllevannnnt..."

    --
    pr0n - keeping monitor glass spotless since 1981.
  42. Bringing it to The Nine? by OmniGeek · · Score: 1

    I suspect that someone in the Open Source world might just do it out of spite and a big legal staff...

    Of course, the more likely case is that everyone moves to PostgreSQL (which I use anyway) and MySQL withers away. That's what happens to FOSS projects when someone gets greedy; the community routes around the damage.

    Of course, if the MySQL folks try to attack PostgreSQL on patent grounds, the case is MUCH more likely to go to The Nine...

    --

    "My strength is as the strength of ten men, for I am wired to the eyeballs on espresso."
    1. Re:Bringing it to The Nine? by CJSpil · · Score: 1

      I'm not entirely convinced that MySQL has produced anything patentable anyway! (Unless monumentally slow transaction handling using inodb tables counts)

      I can't think of a single feature in MySQL that doesn't already exist (or have a near equivalent) in PostgreSQL, Ingres, Informix, Oracle, DB2, or Thunderbird. All of which have been around a *HELL* of a lot longer than MySQL and could probably be considered to be "prior art"

      --
      For people who like peace and quiet. A phoneless cord!
  43. What about the $19.5 million funding? by freelunch · · Score: 2, Informative

    Funny that the article didn't mention the $19.5 million series B round of funding received in June 2003...

    That's gotta do something...

    1. Re:What about the $19.5 million funding? by rwelty · · Score: 1
      it did happen at about the same time as the libs converted from LGPL to GPL. a positive correlation doesn't prove causality, but it is an interesting coincidence.

      the library licensing change is fairly significant, and a reason why many distributions of linux and *bsd haven't moved to mysql 4.x -- a commercial user of such a distribution might easily get into troube due to lack of awareness of the nature of mysql licensing.

      i remember the GPL/commercial software debate from more than a decade ago when i was working in a group at GE R and D; we were starting to migrate a C++ application from the AT&T C++ comnpiler to GNU, and the GPL was very much on our minds. the LGPL came into being specifically to address the library problem, and this mysql license change seems like a substantial step backwards. in other words, we've seen this movie before, only now it's running in reverse.

    2. Re:What about the $19.5 million funding? by GreyGeek · · Score: 1
      VC's and Investment Bankers DO NOT invest money in project unless they expect a return on the investment which would exceed the current interest rate. The MySQL shareholders expect the same on their investments, and they expect the corporate officers to act in ways which will insure such a return. The only way for that to happen is if MySQL shifts users away from the GPL to a commerical licen$e.

      In the end, IMO, the only way they can do that is by either misconstruing the GPL (FUDing putative users toward the commerical licen$e) or forking MySQL into a GPL version and a propriatary version. Once investors and stock holders see that such a move only caused a large drop in the user base, not an increase in revenue, they will withdraw their investments to avoid futher losses.

      Could one expect to see MySQL to file some "IP" patents sometime in the near future?

  44. PG Admin Question by mgkimsal2 · · Score: 1

    I'm a bit late to the game, but there's been more than a few postgres posts lately, so I'll ask,

    It *seems* to me (after the few pg books and articles I've read) that I need to create shell/system accounts for users to grant those users access to the postgres database. Is that correct? If so, I can see why mysql has taken off more from an administration standpoint - it has its own set of internal users separate from the system its running on.

    Am I missing something here?

    1. Re:PG Admin Question by Anonymous Coward · · Score: 0

      That's not correct. Check the documentation
      http://www.postgresql.org/docs/7.4/static/user-man ag.html

      "Every database cluster contains a set of database users. Those users are separate from the users managed by the operating system on which the server runs."

    2. Re:PG Admin Question by rwelty · · Score: 1

      this correct, but deserves to be elaborated on. postgresql users are orthoganal to OS users, and are created using either the createuser command from the shell or 'create user' from sql. however, in cases where postgresql usernames correspond to OS usernames, it is a viable authentication option to treat them as the same. it is also a perfectly viable option to ignore the similarity entirely.

    3. Re:PG Admin Question by mgkimsal2 · · Score: 1

      I've only ever seen the shell 'createuser' used, and seem(ed|s) to rely too much on the underlying OS having a good shell to do that sort of stuff with. Perception being reality and all, I wonder if that's turned off others too.

    4. Re:PG Admin Question by tgl · · Score: 1

      One further point: for most of the Postgres shell utilities (psql, pg_dump, etc) the default behavior is to try to connect using a Postgres username that is the same as your Unix login name. It is easy enough to override this --- you can specify the Postgres username to use on the command line, or set a PGUSER environment variable, for example --- but the path of least resistance is for local users to use Postgres usernames that match their Unix username. I do not really see what's wrong with that default. What other default would you want?

    5. Re:PG Admin Question by Anonymous Coward · · Score: 0

      No, you don't need to create shell accounts for each db user and users who have shell accounts don't have to have the same db user name as their *nix shell name.

      HTH

    6. Re:PG Admin Question by rwelty · · Score: 1
      nothing is wrong with that default. for small shops, it's perfectly reasonable.

      For very large shops, with serious security concerns, you probably don't want to have to create local user accounts for many of the valid database users, as they're not supposed to have access to the servers running the db at all.

    7. Re:PG Admin Question by mgkimsal2 · · Score: 1

      Thanks - that was my point. People keep wondering why postgres isn't used more. For large hosting companies, if you had to create a shell account for each db user (which I guess you don't but it seemed to me that you did, based on the books/tutorials I've read) that would be a massive headache.

      Also, when I started doing web work, the choice was mysql, msql and postgres. msql is *too* basic, postgres couldn't store more than 8k in a row. Trying to write a discussion forum with that limitation just didn't cut the mustard.

    8. Re:PG Admin Question by rwelty · · Score: 1
      those limits are pretty much gone now. postgresql has made substantial strides through 7.x on to 8.0

      i'm doing a lot of informix work at my new contract gig. informix has a reputation as one of the very best of the big commercial systems, and it is quite good, but i do find myself missing things about postgresql that i think are better and some are feature issues, and some are simply better docs.) point being that many in the postgresql community don't find the mysql comparisons interesting, they want to be benchmarked against the oracles, informixes, and db/2s of the world -- and with each passing release, this comparison becomes more and more valid.

    9. Re:PG Admin Question by GreyGeek · · Score: 1
      This is not a PostgreSQL requirement.

      All users of Linux systems must have an account, or access to an account via name and password. After you log on to your account and then do 'psql' (without a db name) PostgreSQL will assume a database name exists that is the same as the account name, or it will default to 'template1'.

      Doing 'psql somedatabasename' will allow access to a database that has a name different from the user who owns the database, assuming that the owner has been granted access rights to somedatabasename for the user who is attempting access. This security is similar to Oracle and other RDBMS.

  45. Question about the GPL by theantix · · Score: 1

    If you read closer, they are actually talking about a grey area that some people (read: me) perceive in the GPL. Let's say you develop a proprietary application that links to a GPL library. Say KDE or MySQL. If you don't _distribute_ your application you are fine, but lets say you deploy the application internally. In this case, under the terms of the GPL the employee who your app was _distributed_ to could demand the source to your application under the terms of the GPL, no?

    If not, why not? MySQL seems to be suggesting, as does QT, that this is indeed the case while on the other hand MySQL and KDE zealots insist that it's not a problem. But please explain to me why it's not the case, why an employee cannot demand their GPL-derived rights to the source when a binary is distributed to them.

    --
    501 Not Implemented
    1. Re:Question about the GPL by RollingThunder · · Score: 1

      It's not developed by an individual and distributed to another individual.

      It's developed by a company for it's own internal use. That's not distribution.

    2. Re:Question about the GPL by theantix · · Score: 1

      No, it's developed by a company and distributed to an individual. Don't think of it in the abstract, think of it in the specific. You are working at $Corp and they write an app that uses the GPL'd MySQL or KDE libraries. Why do *you* not have the right to demand the source for the binaries that your employer provides you with? You're a person (well, at I assume so), and you've been distributed a binary-only copy -- who cares that you work for the company that wrote the application.

      --
      501 Not Implemented
    3. Re:Question about the GPL by FLEB · · Score: 2, Insightful

      The counterpoint to that, though, is that the employee is working as an agent of the company, not as an agent of themselves. If they have been disallowed, as an agent of the company, from distributing the software outside the company, then the company has not "distributed" the software.

      Not that I'm a lawyer, or even have an iota of a clue about this subject (hey, this is /.), but I'd imagine that would be the most likely counterpoint.

      --
      Information wants to be free.
      Entertainment wants to be paid.
      You just want to be cheap.
    4. Re:Question about the GPL by Inthewire · · Score: 1

      Be-cause -- an -- em-ploy-ee -- is -- not -- a -- li-cen-see.
      An -- em-ploy-ee -- is -- an -- a-sset -- like -- fur-ni-ture.

      --


      Writers imply. Readers infer.
    5. Re:Question about the GPL by RollingThunder · · Score: 1

      I'm sorry, but you're incorrect.

      The COMPANY buys licenses when the programs are not open source. Their employees, as MEMBERS OF THE COMPANY, use the programs.

      The employee is not given the program personally. He cannot take it and leagally install it on his home PC instead.

      The "individual" in the sense of internal corporate rollout is the corporation. Not the employee, not the programmer.

    6. Re:Question about the GPL by mpmansell · · Score: 1

      While areas of law, like this, are difficult on an international site like /., I would say that the employee is merely an agent (or restricted proxy) for the licensee (the company) and not a licensee in their own right.

      In many places, companies are seen as legal entities in their own right and the employess merely parts of the whole. Kind of like ants.... (and rarely treated with as much respect ;) )

  46. Helllooo Pointdexter wake up by Anonymous Coward · · Score: 0

    Do you open source finatics really think a company can soley exist on giving its product away?

    Do you really think that a company with any type of overhead can exist without charging you something for its service or product?

    Time to pull your head out of the sand and wake up to reality.

    1. Re:Helllooo Pointdexter wake up by rwelty · · Score: 1

      IBM seems to think that they can make good bux on the service business in support of linux deployment. a lot of people don't get the service model, but it's looking like service may become the wave of the future, given the advances of the open source movement.

      mysql's problem is that they took $19M+ in investor money, and now they have to create a business model to support paying that investment back. in my experience, obtaining funding for a service oriented business can be pretty damned difficult. obviously their investors want them to sell licenses.

  47. PostgreSQL for Windows by sn0wflake · · Score: 1

    For those of us that use Windows there's now a Windows version of PostgreSQL available. Check it out at here and here.

    1. Re:PostgreSQL for Windows by GreyGeek · · Score: 1
      I find it much more secure, stable and affordable to install PostgreSQL 7.4 (with -i) on a Linux server (SUSE, FC2, Debian or Mandrake will do nicely) and access it from Linux or Windows clients using TCP on port 5432. That way I don't need a ton of expensive third party software to keep it stable and secure. I also don't need to pay Microsoft for each client that accesses the server on which PostgreSQL is installed.

      Further, I can administrate the database from a WinXX or Linux workstation using the approprate veersion of pgAdminIII or pgAccess.

      I can use Python + Boa_Constructor + ODBC to easily build GUI apps that are easily installed on client PCs without paying run-time fees for each client.

      As a bonus you will discover that:

      • Python + ODBC + PostgreSQL is much faster than Java + JDBC + Oracle and just as fast as HTP.P + Oracle, or Python + ODBC + Oracle
      • Much of the Oracle's code can be ported to PostgreSQL with only minor to moderate changes
      • PostgreSQL can utilize database objects via inheritance
      • PostgreSQL is more ACID and interface compliant that MySQL. (read: not nearly as many nonfunctioning SQL stubs)
  48. GPL and Commerical Licenses Impossible? by greggman · · Score: 4, Interesting

    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.

    1. Re:GPL and Commerical Licenses Impossible? by tgl · · Score: 1

      > No bug fixes from anyone outside AB? No feature additions from anyone outside AB?

      MySQL AB's approach to this is that they own your contributions, thank you very much --- see for example the intro to
      http://dev.mysql.com/doc/mysql/en/Contributors.htm l.
      I have not been through this personally but I think they require contributors of nontrivial work to sign an assignment of rights. Kinda like the FSF does, but with less benign intentions.

    2. Re:GPL and Commerical Licenses Impossible? by Teancum · · Score: 1

      I think you would be very hard pressed to find some source code in the commercial version that was "contributed" by somebody without a specific copyright waiver. I would say that MySQL is in much more sound legal water than Linux in general, specifically the Linux kernel, which obviously has some legal questions, the litigous idiots in Lindon, UT notwithstanding. Most of the code has been contributed by employees of MySQLAB.

    3. Re:GPL and Commerical Licenses Impossible? by greggman · · Score: 1

      but if the code is GPLed than contributions are GPLed. You can't force contributors to assign rights, that would be a violation of the GPL.

    4. Re:GPL and Commerical Licenses Impossible? by greggman · · Score: 1

      The issue of how much doesn't really matter. It's like you can't be 1% pregnant. Either it is legal for AB to distro GPLed contributions as commerical code or it's not and the fact that there are GPLed contributions in the code makes all of it GPLed and hence no license is ever needed and it can't be re-licensed.

    5. Re:GPL and Commerical Licenses Impossible? by tgl · · Score: 1

      Eh? FSF won't accept contributions if you don't assign rights. Feel free to argue your interpretation of the GPL with RMS ;-)

      I think that MySQL AB are misusing the assignment privilege, but your concept of "force" seems misplaced. MySQL AB control that code base and they certainly can make their own decisions about what code they accept into it. No one is "forcing" anyone to make a contribution to MySQL, and certainly no one can or should force MySQL AB to accept contributions that they do not like the licensing of.

      To put the shoe on the other foot: PostgreSQL is BSD-license, and I am on record as wanting to reject any contributions from people who want their contributions to be GPL'd. (We have accepted GPL'd contributions in past moments of thoughtlessness, and we need to do something to fix that...)

    6. Re:GPL and Commerical Licenses Impossible? by greggman · · Score: 1

      I didn't mean you couldn't assign rights. I meant you could not RE-assign them. You can't take code that is GPLed and not written by you and re-assign the rights of that code.

      I see your point though how they don't have to take any contributions that don't follow their rules. It seems funny that they would still be considered open source heros in that case though. Lots of GPL supporters like to argue that the GPL prevents corporations from exploiting your work for profit and yet AB would be doing exactly that in this case. Basically saying "give us the exclusive rights to charge money for your work or make your own fork".

      Of course I'm not personally against corps using my code which is why I BSD my stuff :-p

    7. Re:GPL and Commerical Licenses Impossible? by Teancum · · Score: 1

      No, the issue is if MySQL AB has made certain that the code being distributed under commercial license is 100% certified by the developers as having copyright clearance for that commercial distribution. I would venture to say they have done exactly that, the GPL not withstanding. That is a big task, and what you are claiming is that somebody has added software to MySQL and not given permission to MySQL AB to redistribute it commercially, even though that software is being used in their product.

      All I can say then is to "show me the money", or in this case the source code you question in their commercial distribution. $200 is paltry if it is your software, and the potential benefits including financial on your end if they are using your code would be quite substantial, just from a statutory viewpoint of somebody violating your copyright. I don't think you can find that code which is in violation.

    8. Re:GPL and Commerical Licenses Impossible? by greggman · · Score: 1

      I think you are missing my point maybe? Or maybe I am missing something.

      There is NO POINT WHAT-SO-EVER for them to make MySQL GPLed except to try to get contributions from people not at AB. If all they wanted was public code where all new code written came back to them under their terms then they wouldn't need to use the GPL they just make the MySQL license that said "you can use this code but any changes you make our ours".

      So, assuming I'm not missing something then if the point of GPLing the code was to solicit contributions then it's hard to believe that some how all those contributions have managed to not actually be GPLed themselves such that AB can distrubute them under non GPL terms.

      Is it possible? Yea. It's also possible Bill Gates has a heart of gold but both seem extremely improbable at least to me.

    9. Re:GPL and Commerical Licenses Impossible? by RogerWilco · · Score: 1

      I think the main point of the GPL version IS to solicit contributions, but for them to be included you need to waiver your rights, so they can dual licence and make a buck.

      The REAL question is: So why the GPL and not BSD or some other licence?

      Because it's makes it illegal for competitors to include MySQL code into their own software of fork MySQL. It's GPL to prevent the likes of MS or Oracle from copying the smart parts, legally at last, and still get at least some of the benefits of open source.

      --
      RogerWilco the Adventurous Janitor
    10. Re:GPL and Commerical Licenses Impossible? by wieck · · Score: 1

      There are other reasons to release the code under the GPL than to get code contributions. And unless there has been a significant mind shift in the company again, I doubt that getting contributions from a GPL based community is the main reason in this case. See the NuSphere fiasko for what I mean with the last mind shift.

      One possible reason I can think of is free ALPHA and BETA testers.

      Another reason could be to become the most popular Open Source Database, known by the students today who will be the decision makers of tomorrow.

      Whatever it really is, the fact is that all code today is Copyright MySQL AB. Probably they only suggested that and all people who made little code donations agreed that would be a good idea.

      Jan

      --
      It takes a real man to ride a scooter ... what are you compensating for?
  49. MySQL AB Comments by martenmickos · · Score: 4, Informative


    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.

    1. Re:MySQL AB Comments by Anonymous Coward · · Score: 0

      Curious. Why would the VC allow you to "sit" on 13.5 million euros? If you don't need the money, then why take it. And if you take it, why then don't you put it to use?

    2. Re:MySQL AB Comments by martenmickos · · Score: 3, Informative

      That's an interesting discussion that would warrant more than a Slashdot posting.

      Briefly:
      * we have had tremendous benefit in the enterprise market of just having the money (not using it)
      * we have got great value out of our VCs (advice, introductions, etc.)
      * any company will need cash reserves for unforeseen situations and for being able to act fast if an opportunity emerges
      * as we continue to expand, we will be making investments out of the funding we received

    3. Re:MySQL AB Comments by Hobbex · · Score: 4, Informative


      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.

    4. Re:MySQL AB Comments by martenmickos · · Score: 4, Informative


      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

      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

    5. Re:MySQL AB Comments by jadavis · · Score: 4, Interesting

      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.

      --
      Social scientists are inspired by theories; scientists are humbled by facts.
    6. Re:MySQL AB Comments by Anonymous Coward · · Score: 0

      Wow. Many thanks for your informative post; that sorts it out very nicely. Good news on the VC/shareholder front as well.

      Slashdot team, how about using one of your [updated] links for this article?

      (Note - I am not a shill, I just think this is a great post which sorts the debate out. Assuming it's actually him, but it looks like it...)

    7. Re:MySQL AB Comments by RealBorg · · Score: 1

      I am most unhappy with Fedora still shipping mysql-3.28.58 and claiming to be unable to include any later release due to licensing issues. Unfortunately the people responsible seem to favour PostgreSQL now and have yet failed to discuss this issue in depth. This is a ever recurring issue on the mailing list and I would really appreciate if you or someone else at MySQL AB could approach them.

    8. Re:MySQL AB Comments by Mohammed+Al-Sahaf · · Score: 0

      Do you intend to license your patented use of the bold font tag under the GPL as well?

      --
      Former Iraqi Information Minister Mohammed Saeed al-Sahaf
    9. Re:MySQL AB Comments by Anonymous Coward · · Score: 0
      MySQL AB is probably the world's largest company that has published all its software under the GPL licence.

      So why do you threaten to sue other companies who want to redistribute your GPL-licenced code without paying you a license fee i.e. why will you not let them redistribute under the terms of the GPL under which they have obtained your software?

    10. Re:MySQL AB Comments by pebs · · Score: 0, Offtopic

      Fuck all this confusion, I'm just going to switch to Firefox errr I mean Firebird.

      --
      #!/
    11. Re:MySQL AB Comments by martenmickos · · Score: 4, Informative


      The client libraries are licensed under GPL.

      In addition we have issued a FOSS Exception which states that you are free to mix our client libraries (under GPL) with other FOSS licensed stuff, such as PHP.

      Marten

    12. Re:MySQL AB Comments by martenmickos · · Score: 1


      Working on it!

      Marten

    13. Re:MySQL AB Comments by martenmickos · · Score: 1


      MySQL AB has never threatened to sue another company, except in the one case some years ago when WE got sued for no apparent reason.

      To your question: We have nothing against companies who want to redistribute our GPL-licensed code without paying a licence fee. On the contrary, we encourage it. The requirement we have, and which we think is nothing but fair, is that such a company must adhere to the GPL licence.

      Marten

    14. Re:MySQL AB Comments by BardicStorm · · Score: 1

      I believe you may be confused as far as PHP is concerned in that yes, they removed the bundled libraries, but it's because MySQL is built into PHP now by default. Thus the bundled library is no longer necessary.

      Please correct me if I'm wrong, but I've been using MySQL with the latest version of PHP with no problem.

    15. Re:MySQL AB Comments by Foofoobar · · Score: 1

      Don't care what anyone says, you guys are a mainstay for web developers everywhere! MySQL is practically everyones first database. I love you guys... and not just in the platonic sense either!

      --
      This is my sig. There are many like it but this one is mine.
    16. Re:MySQL AB Comments by martenmickos · · Score: 1


      Don't care what anyone says, you guys are a mainstay for web developers everywhere! MySQL is practically everyones first database. I love you guys... and not just in the platonic sense either!

      Thank you! We hope we can continue to be useful to our millions of users.

      Marten

    17. Re:MySQL AB Comments by heybo · · Score: 1

      You all have done a wonderful job with a GREAT product. Keep up the good work. Yes your company is a great example that Open Source works!

    18. Re:MySQL AB Comments by gregfortune · · Score: 1

      I remember the official stance approx 2 years ago to be that if a commercial app did not *require* MySQL to run (ie, had both MySQL and Postgres support) and MySQL was not distributed with the app, then the commercial app did not need a license. The reasoning at that time was that the *customer* was choosing which database to use and so the licensing requirements fell on the end user rather than on the original developer. As such, the end user was allowed to use the GPL MySQL database just as they would if they used Apache/MySQL to run their website.

      Is this still true or is policy changing?

      Along the same lines, does that mean that a web development shop that creates a closed source PHP app that links against a MySQL database is now in violation? If not, why not?

    19. Re:MySQL AB Comments by martenmickos · · Score: 1


      We nowadays work together with the vendors of commercial applications to enable their apps to work with MySQL and to promote their apps in the MySQL ecosystem. The policy has not changed, but the fact that the client libraries are under GPL (and not LGPL from which we changed 2 years ago when we launched version 4) gives a more clearcut situation. You are free to embed the GPL libraries in open source applications and you are welcome to embed the commercially licensed libraries under commercial terms.

      As for your GPL question, here is a brief answer. I am not a lawyer and MySQL AB is not authorised to advice anyone in legal matters, but practically this is what you need to know about the GPL: The reciprocity requirement (i.e. the requirement to make your own software available under GPL also) kicks in when you distribute derivative works. The keywords both start with a d - distribution and derivative works. If both are in force, then the reciprocity requirement kicks in. Otherwise not. Then there are debates about the exact legal interpretation of those words, but I'll leave that to experts. Hope this helps.

      Marten

    20. Re:MySQL AB Comments by Sepper · · Score: 1

      Thank you!

      Well thank YOU for answering concerns directly on Slashdot and not hiding under a rock somewhere.

      And good luck with your buisness.

      --
      I live in Soviet Canuckistan you insensitive clod!
    21. Re:MySQL AB Comments by krow · · Score: 1

      Do you distribute the application? Is your customer free to redistribute your software?

      Even though your application uses an open source language, are you licensing the application that you are giving to them under an open source license (this assumes you ship it, if you are an ASP the situation is fairly cut and dry)?

      --
      You can't grep a dead tree.
    22. Re:MySQL AB Comments by MrHim · · Score: 1
      But, again, lets remember that only a court of law can take an affirmative position on this.
      Errr... I may be misunderstanding what you are saying here, but... It's your license for your product, you can do whatever you want; you don't have to wait for a court of law to decide the details for you. If you want to say that socket communications do or do not constitute a derivitive work, then do so. It's your call.
    23. Re:MySQL AB Comments by martenmickos · · Score: 1


      This is an interesting question, with two interpretations:

      1. A software vendor must NOT present its interpretation of the GPL, because that could be deemed by others as "misrepresentation" of the GPL.

      2. A software vendor SHOULD indeed, as the owner of the source code, present its own interpretation of the GPL.

      You seem to prefer alternative 2, but most participants in this debate on Slashdot seem to prefer alternative 1. We try to stick to 1 (and most times when we go into 2, someone reacts negatively).

  50. 18 nestings of BULLSHIT anyone? by Anonymous Coward · · Score: 1, Funny

    How about mixing in some evidence or facts in your rant?

    How did this pile of shit get marked insightful too?

    1. Re:18 nestings of BULLSHIT anyone? by mabinogi · · Score: 1

      Because it's pretty much true.

      Though MySQL's support of SQL is mauch better than it used to be.

      I'm not sure exactly what the 18 nestings of SELECT is about though - it's been a long, long time since I've had to do anything real with MySQL - I've been using Oracle instead.

      --
      Advanced users are users too!
  51. What's GPL'd Stays GPL'd. by Xenographic · · Score: 2, Insightful

    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 enough of the copyright holders.

    IANAL, but I've spent a lot of time reading US copyright law and Groklaw.

  52. MySQL compatibility layer by ttfkam · · Score: 3, Insightful

    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.

    --

    - I don't need to go outside, my CRT tan'll do me just fine.
  53. It's LOSE, dammit! LOSE LOSE LOSE LOSE LOSE! by Anonymous Coward · · Score: 0

    Aaarghh!!

  54. Thank you! by mabinogi · · Score: 1

    for so clearly expressing everything that is wrong with PHP!

    Those of us using real languages (whether perl, python, Java, or whatever) just need to change the datasource, and maybe tweak an SQL statement or two.

    I think I'll run my DB App on Oracle today!
    hmm...no, now I'll use DB2.....Ok, time to try MySQL, and how about we switch to PostgreSQL on Fridays...

    --
    Advanced users are users too!
  55. Did anyone ready the article? by cluge · · Score: 4, Informative

    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 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

    --
    "Science is about ego as much as it is about discovery and truth " - I said it, so sue me.
    1. Re:Did anyone ready the article? by wagemonkey · · Score: 1
      Is this a case of the GPL being a bad thing?
      It may be a case of a company changing the API from LGPL to GPL to 'encourage' people to buy a commercial license.
      If the API/libraries were still LGPL we wouldn't be having this discussion.
    2. Re:Did anyone ready the article? by julesh · · Score: 0, Flamebait

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

      Yes. The GPL is a bad thing whenever you need to interoperate with non-GPL software. This means that as integration gets more and more common, the GPL will become more and more annoying. Soon it will become clear that there are only two acceptable outcomes: all software under the GPL, or no software under the GPL. Anything inbetween and you'll find that everything you want to do with your software is illegal.

  56. Rant from a PostgreSQL user by calsa · · Score: 1

    It's human nature that once you get something for free, you don't want to pay for it. The amount of man-hours that must have gone into writing MySQL is huge though. Just because these guys now would like to try and make a little money out of their endeavours doesn't turn them into the Evil Empire overnight. Lighten up guys.

  57. Whatever happens ... by Anonymous Coward · · Score: 0

    there is always PostgreSql, a great, free, open source RDBMS.

  58. mysql's GPL != REAL GPL by vladkrupin · · Score: 1

    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.

    True. However, mysql mas been doing something rather interesting lately. They dual-license mysq under their own license and a GPL-look-alike license. Why look-alike? Well, because it sure as heck not GPL. Let me elaborate.

    Among other things what GPL boils down to is that you are allowed to use the product in any way you want as long as you do not modify it. If you do, you need to release the cahnges under GPL. That's not all of it, but that's the part that mysql "extended". In essense, they say that not only are you not allowed to make changes without releasing the source, but ou are not allowed to USE their GPLed software in non-GPL-licensed software. Unless, of course, you buy their commercial license, which they will try to sell you at any cost.

    There's a big difference between MODIFYING and USING. Consider PHP, for example. PHP is a released under license incompatible with GPL. Yet it needs mysql as much as mysql needs php to be successful. So, PHP folks have to keep getting license exceptions, thanks to Zak Greant. It gets worse if you product relies on mysql, not merely uses it. A quick google search brought me here. There is a lot more to that, but you'd have to google on your own - somehow I am not searching for the right terms I guess. In essense, what mysql did is they said "Our software is licensed under GPL" and then turned around and said "But you can't use it as you'd use any GPL software, because we put extra restrictions in addition to GPL." Unfortunately, most people just hear the first message, develop their software so it relies on mysql and then - BOOM! - they find that "clarification" from mysql ab. Once you bite the hook and cannot go back, they can force you to get their commercial license. Either that, or release the entire source code for your whole product that relies on mysql, even if no changes whatsoever were made to mysql itself. Fun, eh?

    I am not going to argue on the merits of whether they can actually say that they are licensing a piece of software under GPL, and then add a "clarification" to that. I would be very surprised if such a thing would ever stand up in court, but I am most certainly not a lawyer, and neither do I have much faith in the judicial system. Even if it were to fail in court, the costs of acquiring a few commercial licenses are dwarfed by even the most modest court expenses, so for most people it's a no-brainer - just go and get the license. And for mysql it's the source of revenue through extortion.

    You may believe that you can use mysql in a non-GPL product, and you are fine because you comply with the REAL GPL, not the mysql's version of GPL. Maybe you even have the money to fight that claim in court and prevail. That's fine. THe thing that matters most though is that even if you are not vilating the LETTER of the law, you are still violating the SPIRIT of the license, as mysql AB has stated so clearly in their "clarification". That fact alone makes me shiver and think again about what kind of company mysql ab is, and whether it would be prudent for me to recommend their software to my clients, whether they are interested in a commercial license, or intend to use mysql in a GPL-compliant way.

    These are merely my opinions based on a fair amount of research I had to make on the subject. Not a legal advice by any means. Please, feel free to disagree with me and hire a lawyer if you need to.

    --

    Jobs? Which jobs?
    1. Re:mysql's GPL != REAL GPL by jrumney · · Score: 2, Informative
      Among other things what GPL boils down to is that you are allowed to use the product in any way you want as long as you do not modify it. If you do, you need to release the cahnges under GPL.

      That is not true. You can modify GPLed software any way you want for your own use. It is distribution (whether you modified it or not), not modification that makes your obligations under the GPL kick in.

      MySQL's opinion on what constitutes derivative work has always been stricter than most though. Most database suppliers (Free or proprietary) would consider ODBC, JDBC and other ways of connecting to the database to be a standard interface, and a clean point of separation between the database and third party software. But MySQL claims that their interface libraries are GPL, and linking to them produces a derivative work. There is also an entry in their FAQ where they state that you need to buy a commercial license if you bundle MySQL on the same CD as your non-Free software, even if your software works without it, and you have bundled it merely for users' convenience so they can use it if they want. They are entitled to their opinion on this, and I personally would steer well clear of MySQL because of it, but on this last point, I don't think they should be calling their license GPL if they are serious about it.

    2. Re:mysql's GPL != REAL GPL by Phisbut · · Score: 1
      but ou are not allowed to USE their GPLed software in non-GPL-licensed software. Unless, of course, you buy their commercial license, which they will try to sell you at any cost.

      It's not only mySQL, you simply can't build any non-GPL software on top of GPL stuff, that's the whole point of the GPL. If you make your commercial product open-source, then you don't have to buy a licence. The page you pointed at clearly states 4 situations when you need to buy a commercial licence:

      --- BEGIN QUOTE ---
      You need a commercial license under these conditions:

      * When you link a program with any GPL code from the MySQL software and don't want the resulting product to be licensed under GPL, perhaps because you want to build a commercial product or keep the added non-GPL code closed source for other reasons. When purchasing commercial licenses, you are not using the MySQL software under GPL even though it's the same code.
      * When you distribute a non-GPL application that works only with the MySQL software and ship it with the MySQL software. This type of solution is considered to be linking even if it's done over a network.
      * When you distribute copies of the MySQL software without providing the source code as required under the GPL license.
      * When you want to support the further development of the MySQL database even if you don't formally need a commercial license. Purchasing support directly from MySQL AB is another good way of contributing to the development of the MySQL software, with immediate advantages for you. See section 1.4.1 Support Offered by MySQL AB.
      --- END QUOTE ---

      These conditions are anything but abusive. 1 & 2) You make a derivative work and don't want to licence it under the GPL, you shouldn't use GPL code in the first place. 3) You simply don't respect the GPL yourself. 4) Support and donations, every GPL project needs that.

      --
      After 3 days without programming, life becomes meaningless
      - The Tao of Programming
  59. mysql, postgres... the facts please by greenail · · Score: 2, Informative

    ok the topic here should be mysql vs postgres but seeing as how it has been trolled to death I though I would add my .02 and a question.

    I've been reviewing and making infrastructure architecture recommendations for > 6 years. My experience has been that the people who can demonstrate scale and efficiency tend to choose systems that do not bottleneck the database. I have used mysql, postgres, as well as oracle. Generally people say that mysql is limited in features, but is that a bad thing? When you have a "large system" and outgrow a 24 processor sun or IBM box you start to consider things like multiple database servers, moving cpu load onto the commodity hardware in the application layer, and data partitioning. DR for large system and the cost a site failure and full restore for such a large system are also valid concern. Most sites with the characteristics of a "large system" are Financial, Telco, Data Warehousing, and batch processing fit an Oracle, or DB2 profile very well. Generally internet sites that don't grow so big (>200GB data), or get Tons(>20Mb/s) traffic tend to do fairly well with anything, even M$ SQL.

    Can someone with the deep experience (in both systems), and some spare time, please create a feature/fault matrix for both production and development versions of mysql and posgres and submit the link as a reply? It wouldn't hurt to throw in oracle/DB2 to see what repaying for your software every year gets you.

    1. Re:mysql, postgres... the facts please by pooh666 · · Score: 1

      I think this is the first totaly non emotional post I have seen so far. There is a basic phil issue that a lot of people don't get. My total non techie manager does things like stack up "features" and uses that to decide if one app is better than another. I would think the slashdot crowd would have more people who would concider things a little beyond that. What I see going on with mysql vs whatever is just going back to the question of where do you separate the database from the application?

      I have worked with DB/2 on AS/400, MS SQL, mysql, and Postgres, with a few minor fiddlings with things like Berkely DB and Innobase.

      In the case of DB/2 and friends you can end up with what is bascily a whole module/sub almost an application in one query, and of course you can also have that with a given stored procedure. To my way of thinking this can be a blessing and a curse, it is a blessing certainly because you don't have to do nearly as much work in the app to do a report, but does that logic not belong in your app anyway? In some cases it may. I also see people who have been used to doing things with these very richly featured DBs that then tend to over complicate a great number of the queries that they do. A simple join group by with a rollup becomes something much more complex.

      Anyway, I tend to look both ways at these things. It is just stupid to cut down mysql because of its users. Just as stupid as cutting down PHP users because some of them are not great programmers. In fact it was really a culture that grew out of people who were not great programmers. Now there is so much momentum behind it that many much higher end people are also using PHP.

      Postgres gets a great deal of respect from me. But in a real world situation you have to concider a great deal more than feature lists. You have to think about culture, the company behind the product(if there is one) the size of the comunity, how using that product may or may not help the reputation of your business. Certianly Oracle has benifited a LOT from that last one. "We use Oracle", is flashed like a badge of honor.

      Anyway, enough of this sensable crap. I am fucking amazed at some of the moderation that has happened here on this topic. Lots of total flamebait posts getting modded up. Shame on you people!

      Eric

    2. Re:mysql, postgres... the facts please by phobonetik · · Score: 1

      Yes, things definately have soured in the MySql camp from an ambush of Postgres Users. I find it kinda funny that no one has actually responded, much less with objective results.

      Yes, I agree, we're not going to see a bank run on MySQL. We're also not going to see a professional magazine written in Word. But Word is installed, understood, and helpful for millions of people. Ie, MySQL it has its purpose and that a rather impressive and large one at that.

      The wonderful thing, in my opinion, MySQL based applications tend to be installed very easily, on different platforms, and this includes examples that I am personally responsble for (http://www.silverstripe.com/ ). It has had windows support for a while now, which has been good for out of the office development or 'stick on your salemens laptop to power an appplication' purposes.

      I also agree with you that scaling systems requires a shift away from over utilisation of the database, for example, a content management system, no matter the database, is going to run a whole lot faster through caching html files, most likely to disk in a simple directory structure, rather than pulling content from a database. I presume this is how Slashdot holds itself up.

      Regarding feature/fault type stuff - I have only experienced faults with disk problems caused by harddisk failures, and out of space conditions. Both caused problems with both databases, and we can hardly blame the databases for corrupting on that. Both managed to come out of the problems easily enough, and with very little lost data.

    3. Re:mysql, postgres... the facts please by bucknuggets · · Score: 1

      > Yes, things definately have soured in the MySql camp from an ambush of Postgres Users.

      Maybe it could have something to do with mysql ab misinforming people for years on a variety of subjects (basic sql & transactions not needed, etc)?

      Maybe it could have something to do with the discovery that mysql just silently fails on a wide variety of errors without informing the client?

      Maybe it could have something to do with mysql ab's apparent conflict of interest over their dual licensing? Perhaps some folks are looking at the writing on the wall and seeing commercial licenses being required for most mysql use in five years.

      Maybe these users have discovered that postgresql (free), and firebird (very inexpensive) are more impressive competitors (read: built-in transactions along with ANSI SQL compatibility) with none of the licensing nonsense?

      > The wonderful thing, in my opinion, MySQL based applications tend to be installed very easily, on different platforms, and this includes examples
      > that I am personally responsble for (http://www.silverstripe.com/ ).

      Yes, this is a wonderful thing, and probably the main reason for its success. Unfortunately for mysql postgresql is about to offer the same thing on windows.

      buck

    4. Re:mysql, postgres... the facts please by bucknuggets · · Score: 2, Interesting

      > I've been reviewing and making infrastructure architecture recommendations for 6 years. My
      > experience has been that the people who can demonstrate scale and efficiency tend to choose
      > systems that do not bottleneck the database. I have used mysql, postgres, as well as oracle.
      > Generally people say that mysql is limited in
      features, but is that a bad thing?

      Well, first off I think most complaints about msyql aren't about performance. It has fine read performance, though concurrent write performance seems poor. Haven't been able to run any benchmarks to prove that, just what I'm observing and hearing. MySQL is strangely silent on TCP-Cs. But for many small apps - the performance is good enough. The real problems are licensing, silent errors, non-compatible sql, etc.

      yes it's a bad thing - since they aren't complaining about features - like a cup-holder in a car. They're complaining about features like a standard 12v electrical system in the car:
      - least portable sql of any common database
      - lack of support for basic, 20 year old database features like views
      - transactions only available thru third-party product, not seamlessly integrated in mysql, often fails to work silently (!)

      mysql ab has often stated that transactions (!), views, subselects, triggers, stored procs are unnecessary for 90% of the users out there. This is deliberate misinformation. Sure, you can live without stored procs, and sometimes triggers. But subselects? views? transactions? Heck, even a simple bowling-score hobby database should use transactions - implementing transactions in your application is *far* simpler than dealing with corrupt data!

      > Can someone with the deep experience (in both systems), and some spare time, please create a feature/fault matrix for both production and
      > development versions of mysql and posgres and submit the link as a reply? It wouldn't hurt to throw in oracle/DB2 to see what repaying for your
      > software every year gets you.

      Please, doing that for postgresql, mysql, oracle, and db2 (and for both dev & prod versions) at any level of detail would be extremely time-consuming. The ideal technique here is to score the solutions based upon very low-level critieria (support for super-groups in sql, etc) then roll it up. Since each product does some things a little differently you're looking at 200 hours to pull this off.

      This kind of task, along with performance benchmarks (tpc-c & tpc-h) are often done for very large projects. Maybe we'll see at least some benchmarks come from a hardware manufucturer one of these days. Or mysql if it felt that it was mature enough to compete with the commercial databasees - then it would spend some of that investor money to prove it.

  60. The reason why GPL alienates professionals by Anonymous Coward · · Score: 1, Insightful

    Nothing new here.

    Well you're right about that, the GPL hasn't changed. It has always taken away the ability of original developers to make money from developing original software, forcing them to either make money by offering support or by flipping burgers during the day to fund their open source coding at night. Nothing new there, it has always slanted the playing field away from original developers and in favour of redevelopers.

    What's new however is that PHBs have now discovered open source, and so companies that previously employed talented original programmers to develop new inhouse products from scratch now realize that they can hire fewer people than before because there is so much great code out there available for free. Furthermore, the quality of the people they hire can be lower because they only need to be relatively inexperienced redevelopers instead of original designers. All of this translates into paying less money for development. They love it.

    Meanwhile, professional developers are getting screwed left, right and center, their earning potential and careers going right down the pan. After all, code hackers for redevelopment are two-a-penny, and there is little extra benefit from hiring a highly educated and experienced professional when all that an inhouse project needs is some existing open sources to be hacked around a little.

    And it gets worse. Small software businesses used to be very common, able to survive the hardships of birth and early growth because software development scaled very well, ie. a small group of developers could create a novel product and sell a huge number of copies, with near-zero incremental cost per copy sold. In contrast, making money from support doesn't scale, because support requires people-time to handle every additional customer needing support, and those people require salaries --- the incremental cost is very high unless you're outsourcing support overseas. It's pretty much impossible to launch a professional software business from your garage in these circumstances, unless you abandon open source.

    The sad thing is that those professionals were the grassroots developers who helped open source spread in the first place, but who now find themselves shafted by it. It's not surprising that some are changing their views now, when faced with mounting bills and no income.

  61. The website seems to say it all by petrus4 · · Score: 1

    I shouldn't be judging a book by its cover, but if the website, is any indication, MySQL's direction re commercialism is somewhat painfully obvious. The layout to me suggests the kind of tacky, soulless "content" mentality I'd expect to see on macromedia.com or real.com, not the site of an open source project. I was also unable to locate a reference to the GPL licensed form of MySQL, whereas an advertisement of the "Pro" version was instantly apparent.

  62. stored procedures = bad by bani · · Score: 1

    they result in vendor lock-in, which is particularly bad if you're trying to write code independent of the RDBMS engine.

    a very bad design decision all around.

    1. Re:stored procedures = bad by jadavis · · Score: 1

      RDBMSs aren't a commodity. They have widely varying prices, feature sets, and behaviors.

      PostgreSQL generally tries to be standards complaint where applicable, even in their stored procedure languages (plpgsql is similar to oracle's plsql).

      Sure, if it's all the same, choose the lowest common denominator. But if you need a few basic features of an RDBMS, then you just do it the most standards-compliant way you can.

      Heck, restricting yourself to an RDBMS is "vendor lock-in" and you might as well just do flat file storage and have the app do all the consistancy checking.

      It's a balance. Use a feature if it helps more than it hurts. Stored procedures can be very valuable and you shouldn't disregard them.

      Additionally, I don't think that "vendor lock-in" has the same negative tone when I'm supposedly being locked-in to a FOSS database like PostgreSQL.

      --
      Social scientists are inspired by theories; scientists are humbled by facts.
    2. Re:stored procedures = bad by fitten · · Score: 1

      In my post above, I show how it lets us port fairly easily and we don't have vendor lockin. I can easily see where you can write code and stored procedures in such a way as to be tied too tightly to one particular RDBMS, but I'd argue that these types of problems are a result of not analyzing your problem enough to abstract it enough to prevent such tight codependency of your software and the RDBMS in question.

  63. You forgot one variation by Kjella · · Score: 1

    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.

    Many also accept contributions under a dual licence, without assigning copyright. That is in most cases preferable, as people rarely like to give up copyright to their own work.

    Kjella

    --
    Live today, because you never know what tomorrow brings
  64. It is extremely simple... by Kjella · · Score: 2, Informative

    ...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

    --
    Live today, because you never know what tomorrow brings
    1. Re:It is extremely simple... by greggman · · Score: 2, Informative

      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 obtaining it.

      The fact that the main distro (the one used by 5 million sites) is the GPLed distro would suggest that most contributions are GPLed and that it's unlikely the commerical version has keeped those GPLed contributions out. In fact I believe the are 100% the same code. The only difference is the supposed license. That means requiring a commercial license is violating the GPL.

    2. Re:It is extremely simple... by Anthony+Boyd · · Score: 2, Informative
      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 does: they require everyone who contributes code to give it to them under no license. In other words, if I contribute a patch to MySQL, they only include it in their product if I certify that I am the copyright holder of that code, and that I give them ownership. Once MySQL has full ownership, they are free to take what is now theirs and license it under any license they wish. Even dual licenses.

      Again, when I give them a patch, I don't say, "here is a patch you can use under GPL." If I do that, they reject it. Instead, I have to say, "here is a patch, I give you full ownership, and I can no longer dictate how my own code will be used. Feel free to license it however you wish." And then they do.

      Of course, I don't have to offer my patch to them. The GPL only requires that I get my patch "out there" somehow. So if I only want my code to be available under GPL, I don't have to offer it to MySQL. I can just put my patch up on my own web server, offer it only under GPL, and allow people to download it. But if I want MySQL to incorporate it into the official product, I have to give it to them on their terms. The GPL cannot prevent that. It doesn't force the owner of a product to incorporate patches. If it did, then even the FSF would be in trouble, because they do the same thing (ask that full copyright be assigned to them).

    3. Re:It is extremely simple... by greggman · · Score: 1

      So in otherwords, AB is gambling that no one will fork MySQL and make them irrelavent? Kind of like the X Windows fiasco?

    4. Re:It is extremely simple... by Anthony+Boyd · · Score: 2, Informative
      AB is gambling that no one will fork MySQL and make them irrelavent?

      That's the gamble every GPL project makes. My own phpBB Blog software is GPL, and I run the risk of a fork just like everyone else. In fact, possibly more so -- I specifically ask users to post patches and even entirely recoded pages. I guess my project lumbers from one fork to the next, integrating code as I'm allowed. The MySQL team doesn't really have much to worry about, though. They are doing right by their users for the most part, and they are better at building and extending the product than most of the users would be. The X Windows fiasco took years of unhappiness to boil over. The MySQL team doesn't have unhappiness bubbling under the surface. This entire story is just a misunderstanding, attributing malice where there is none.

      Of course, if I'm wrong about that, then I want a fork (just like I did for X Windows). But right now MySQL is doing fine by me.

    5. Re:It is extremely simple... by greggman · · Score: 1

      I guess the difference is most GPL based companies don't require you to get a commercial license. They operate hoping you'll pay them for support by otherwise they are at your mercy. AB though is not doing that, they specifically are trying to force you to pay by the way the structure the code etc.

      I guess techinically there is nothing wrong with that, a commercial solution would cost money as well. It's just seems different than most other GPLed projects. Almost deceptive as in "hey look, this thing is GPLed! Oh, not really. Well it is and it isn't. etc.".

  65. Commercial != Proprietary by Cyclops · · Score: 1

    When MySQL AB speaks "Commercial" they really mean proprietary.

    This confusion is being laid down on MySQL AB themselves for not following wise advice from the FSF.

    So put aside MySQL AB's stubborn remarks and read this:

    Of course you can make a Commercial program linked with the GNU GPL. You can make Free Software and charge for 1st sale copies. What you can't is turn a GPL'ed software into a non-GPL'ed program.

    But you can still make lots of businesses with it!

    Come to think of it, many don't follow FSF's advices and call them fanatics or worse things. The funny thing is, they never force nothing upon you, they simply advise you, give you an example, and criticize you when you go "yay proprietary".

    Maybe you should read more of what's on their site instead of relying on what your friend or idol says.

  66. Re:"Distribute Internally" by TiggsPanther · · Score: 1

    I've always wondered abotu that myself. When people talk about the GPL they only talk about releasing changes if you actually plan to distribute it, whereas the License itself seems to imply that you should always make your changes/code available. (Although I'd be the first to admit that Licenses always confuse the heck out of me)

    If I've got what you're saying right, then is Company X likes a GPL project and modifies it for internal use then they can do it without breaking the GPL as long as the source code is at least available in-house. So anyone who actually uses the software (Company X's staff) does have access to the source.
    And if I'm way off-base then I'm pretty sure that I'm not the only one who is missing the point.

    I have to admit that when it comes to things like this I'm kinda glad I suck at coding. Licenses are always written in "Legal", which is great for making them stick in court but useless for people like me who only understand "normal" English despite its ambiguities.
    So if i were any good at coding I'd still never get anything done as I'd not understand the damn licenses well enough to ever risk releasing anything.

    --
    Tiggs
    "120 chars should be enough for everyone..."
  67. I don't think so... by nsandver · · Score: 3, Informative

    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.

  68. Trust my answers. by hummassa · · Score: 2, Interesting

    I know what I'm talking about.

    1. are the old versions still under GPL?
    A. yes.

    2. is the new code still bound by the GPL?
    A. this depends on who is the copyright owner of the last GPL'd version. if the original copyright owner (the original package owner) is the SOLE copyright owner of the last GPL'd version (as in: he did not accept any outside patches, or if he accepted only copyright-releasing-by-writing-signed-and-notarize d patches [FSF-style or MySQL-style]) -- then he can do whatever he wants with the code, BECAUSE IT's its property. But if he accepted a lot of outside patches, whithout copyright weavers (linux-the-kernel style) he would need the authorization of the patch owners OR he would need to reverse all outside patches (if possible -- in the case of linux, for instance, this is not really practical), or else he would be bound by the GPL because the current work is a derivative work on the GPL'd patches.

    3. how close is too close?
    A. to be completely untainted, he would have to write down the complete spec to the work (in English, for example) and would have to get another person -- who had not seen the source code previously -- to re-write it in some programming language. this is what is called clean-room reimplementation.

    HTH,

    Massa

    --
    It's better to be the foot on the boot than the face on the pavement. ~~ tkx Kadin2048
  69. What, like QT? by Anonymous Coward · · Score: 0

    Its the same deal and its fair. If you make money from a custom client, you have to send some back to mysqlab.

    1. Re:What, like QT? by Anonymous Coward · · Score: 0

      The parent was concerned with the issues that could occur when developing code for other non-GPL FOSS licenses such as BSD, Python, Mozilla, etc. Clearly, many of the people developing code under these licenses are not doing so in a commercial setting.

  70. MySQL site, GPL and terms by tod_miller · · Score: 1

    When reading the MySQL website, they seem to have taken liberties with definitions in the GPL agreement. In fact, they have interpretted the GPL as meaning 'trial version'

    If you read their license faq you will see what I mean.

    You need a commercial license if you:

    Download this
    Copy it
    Give it to someone else
    Install it
    Install it on another machine
    Give it to someone to install it... etc etc

    I noticed that there are some grey areas of GPL, and what does it cover? It is freely licensable?

    I wish someone would write a case (using MySQL) giving examples of what you could do, and what you cannot do.

    GPL is probably the most misunderstood (except for LGPL!!) license in the world!

    --
    #hostfile 0.0.0.0 primidi.com 0.0.0.0 www.primidi.com 0.0.0.0 radio.weblogs.com
  71. What's wrong with this picture? by cardpuncher · · Score: 1

    Windows 2003 web server is quite reasonably priced, SQL Server Express seems like it's going to be free and ASP.Net is streets ahead of ASP (or indeed PHP).

    In response, MySQL is getting fussy about licensing and PHP has tunneled out of the Apache Foundation and run blinking into the Sun.

    Did I put my head on backwards this morning?

  72. MySQL License doesnt matter. by Anonymous Coward · · Score: 0

    Most people|developers out there live quite happy ignoring the new license of the DB..
    there are a lot of Paid4[Mails|Views|Shit] programs out there, where the developer dont care of the license: ">400Euros for a license? i am not going to pay this". tell them to give them their code according to the GPL and the laugh at you.
    So its up to MySQL AB to
    a) ignore that and make their license politics ridiculous and perhaps sue one of the big offenders
    b) try to enforce their license and sue some of the users. this will certainly reduce the user base to zero almost instantly.

    b) will probably never happen.

  73. Obligatory Google Cache by heffel · · Score: 1

    Site is slashdotted. Here is the obligatory Google cache link. Heffel

  74. better than fork by dAzED1 · · Score: 1

    being GPL'd, one could just take the "good stuff" from mysql and make a new project that isn't completely a fork, or just put that stuff into a different DB app. So long as they just give credit, blah etc...

  75. GPL LGPL and Databases by Britz · · Score: 2, Informative

    First of all MySQL used to be the only choice for OSS developers when it comes to stable database software that could be used in a productive environment with a lot of demand. PostgreSQL used to be more damanding on hardware and hardware (as noone should forget) used to be much slower. Now we have 2 and 3 Ghz for 200 bucks. PostgreSQL also became more stable, robust and less demanding. There are also many new choices out there: MaxDB (formerly known as SAP-DB e.g. Adabas D) is now under the GPL and Interbase became OSS under the name Firebird to name just 2 very famous examples.

    So if anyone has problems with the license for any reason they can choose among many other: BSD for PostgreSQL, GPL for MaxDB and the InterBase Public License for Firebird for the three mentioned examples.

    Other than that all code released under the GPL can be used under the terms of the GPL and anyone can do whatever they feel like with it. That means that if I choose to take the current MySQL to write my world domination program (the source code to that would certainly remain secret) with it I can do it now or whenever I choose to do that.

    Only when I want to distribute said program (what a dumb idea!) I have to make the source code available to anyone who I distribute this program to and I also have to inform that person that they can do anything they want with that code as long as they adhere to the GPL.

    The LGPL is a different beast. If I link my program to LGPL libs I can withhold the source even if I choose to distribute my program. If I link to GPL libs I have to give out the source with the program. Only if I use code LGPL itself I need to put the result under the LGPL. But agains only if I distribute it. Many companies used to develope software only for in house purposes. Those could and still can use GPL and LGPL programs and source as much as they like and don't have to give anything back to the community.

    There is absolutely no problem here, because anyone can still use existing code with the licenses they were distributed under, e.g. older or the current version of the MySQL client and even fork and patch those with appropriate security patches if necessary (the patches have to be the old license though). So if anyone created a program using the old MySQL then they don't have a problem. If they develope something new then they can choose among many OSS DB (s.a.) and their respective licenses.

    So nothing to see here, move along please.

  76. Mod Parent Up by ktulu1115 · · Score: 1

    I ran out of points but this is the clearest explaination I've read so far on the topic. Thanks.

    --
    # fuser -v /dev/attention | grep work
    #
  77. The fall of mysql? by MemoryDragon · · Score: 1

    Now that Postgres 8.0 has hit beta and this one is the first version which supports windows natively, I think if MySQL does stupid tricks people have switched to PostgresSQL faster as the can say GP(L). In the long run people will switch anyway since Postgres is more mature, has more features and is rock stable also the momentum of opensource database development switches slowly to postgres with Fujitsu as one of the major supporters of the project. The only thing which has held postgres back in the past seriously was the lack of a decent windows implementation (which is necessary to gather the masses) this limit now is solved. MySQL has a serious problem on its hands.

  78. Damnit by Anonymous Coward · · Score: 0

    I just got all cozy with PhP/MySQL now I got to go out and learn PGrease

  79. Your the first DBA I heard say that by Stone316 · · Score: 1
    What i've come to realize is that there are tons of DBA's out there but not very many 'good' ones. I've been a DBA for 8 years and worked with dozens of other DBA's. I'd have to say there are only 4-5 that have impressed me, a dozen or so competent ones and the rest fall below the mark. I don't like to make assumptions but your post doesn't say good things about you.

    It shouldn't take a masters degree to know that the Gotcha's [insert link everyone has seen before here] mysql has are pretty disturbing. But maybe your not really a DBA? I mean, most shops that use mysql, SQL Server and the like don't have fulltime DBA's.

    --
    "Thanks to the remote control I have the attention span of a gerbil."
  80. What bothers postgresql users is.... by Stone316 · · Score: 1
    that it doesn't get the recognition in the developer community that it deserves. Why it isn't popular? I have no idea... It may be because there's no 'big' company behind it like mysql marketing it.

    Watching people use mysql is like watching other people play video games. ie. If your watching someone play a video game and they aren't as good as your or absolutely pathetic, it can drive a person bonkers. I guess thats what postgresql users see when they see mysql users... people who don't know what they are doing or don't know any better.

    It doesn't take a rocket scientist to see that postgresql is a better product, just look at the Gotcha's for Mysql and compare it to the gotcha's for postresql.

    You can base you opinion of postgresql users on whatever criteria you want, but the people who know this stuff have already formed an opinion about you and its based on real criteria such as the above.

    The funny thing is, you don't even know what postgres can do. Did you even evaluate your options before you started developing or did you just jump on the mysql train?

    Call me a fanboy if you want but at least I can say I evaluated both systems.

    --
    "Thanks to the remote control I have the attention span of a gerbil."
    1. Re:What bothers postgresql users is.... by vandan · · Score: 1

      I know what it can do:
      Stored procedures, views and triggers.
      That's the main argument that the elephant fans like parading around with.

      MySQL has it's advantages. Different table types with modular engines, for example, that give you maximum performace for the feature level you want. Speed. Ease of use. And a community that doesn't have their heads up their arses.

      I've used Postgres. I even run it currently for cases where stored procedures are handy. It's a pain in the arse. It feels archaic. Only very recently has it gained proper 'alter table' support. I seem to remember only 1 year ago having to create a new table, dump my existing data into it, drop the old table, and rename the new one, just to make a small change to the table. Was it renaming a field or dropping a field? I dunno. Something stupid that I was horrified wasn't supported by a so-called enterprise-level database.

      And how about the formats of backups changing with each release? That sure is handy.

      So yeah I use Postgres. And I like the fact that it has views and stored procedures ( I also like the fact that MySQL-5.x has views and stored procedures ). But I don't kid myself. MySQL has better foundations. It's going places. Postgres has more features on the scorecard, but it really, honestly bites. And it doesn't take a rocket scientist to figure it out. So go vacuum your database and quit accusing me of being a mindless MySQL drone.

  81. A Question of Trust by Boccanegra · · Score: 1

    At the heart of this issue is one of trust - is the community of software developers and users willing to trust MySQL AB and its leadership? As a sometime member of both communities, I will say that, considering the long- and out-standing contributions that the company has made, my answer is yes.

  82. For example. . . by werdna · · Score: 1

    imagine that an individual wishes not to be bound by the viral limitations of GPL. The owner of the copyright may provide that individual with a traditional commercial license, and the individual may then create proprietary code thereunder.

    This does, in the FSF-sense, make the software less "free," in that the proprietary code made by the commercial licensee is not GPL'd. On the other hand, everybody else may continue to relate to the "rest of" the GPL code in the "old-fashioned" open source way.

  83. MySQL for filesystem? by MikeFM · · Score: 1

    I use MySQL to store a lot of meta-data about files on my computers. It's really a very useful tool to have and I'd like to see something like it made standard as a virtual filesytem.

    With Microsoft's and Apple's push for db-driven filesystems has MySQL considered doing anything in this area? It'd seem to me that MySQL has a strong position to become a cross-platform defacto standard for this type of thing.

    --
    At what price learning? At what cost wisdom? The price is a man's peace of mind, and the cost is his life.
    1. Re:MySQL for filesystem? by martenmickos · · Score: 1


      Thx for the idea. One school would say we should do it because others are doing it on other operating systems. But another school would say that we should specifically NOT do it, because the beauty of our product is that it runs on any operating system and can be easily integrated with nearly anything.

      Let me know your thoughts.

    2. Re:MySQL for filesystem? by MikeFM · · Score: 1

      I have had my little system for years so I'm less interested in copying what others are claiming to be offering someday than in having someone improve and standardize that which I've already found useful for myself.

      I think the ideal solution would be to make a backend module, that works on any OS, that ties into MySQL. Obviously there'd still be some OS-centric work that'd have to be done on a per OS basis but I think the majority of it could be in a shared code base. Then Linux, *BSD, MacOS, etc could easily add support. MySQL could provide the de facto standard for anyone willing to use it.

      I can really see this as a major area for db usage in the near future. The great thing about using MySQL as the backend is that it'd be extremely easy for so many of us programmers to write third-party tools for collecting the data and doing interesting things with it. An example being that for my system I had it so files could be marked public (or private). Public files could be browsed by anyone on my web server and they could attach comments and additional meta information from that web interface. I've also been toying with an XML-RPC based interface that'd allow machines to poll each other's file information db's.

      Maybe you could offer the basic backend for free and talk to the right people to get Linux and FreeBSD support added. Then you could sell improvements, such as support for proprietary file types and support for business-centric data, to make a profit off of the whole thing? I think many businesses would find it useful to have this kind of feature especially on something like a file server. User's could do powerful file searches using a normal file manager and no special skills. The speed and reliability of MySQL could really be useful here as it'd probably be a lot better than SQL Server based solutions.

      Maybe it'd be a good project to work on with a Linux (or your OS of choice) vendor? MySQL could provide the db-oriented logic and the Linux vendor could write the kernel code needed to produce a working virtual filesystem. Surely this could be packaged as an enterprise feature.

      --
      At what price learning? At what cost wisdom? The price is a man's peace of mind, and the cost is his life.
  84. Thanks... by davidwr · · Score: 1

    Thank you - I missed the earlier discussion.

    I think we are both agreed - use the right tool for the job.

    Oh, and yes, it was a typo. That day, my eyeballs were not up to the task of spell-checking acronyms :(.

    One more point of interest:
    The project in question was very small and had low performance requirements. Nothing of import was lost by using a "lowest common denominator" of functionality. At the same time, *in this particular case*, there's a Big Win for others who are likely to use use this tool in the future but who might not use the same DBMS I'm using. It was pretty obvious early on that ODBC was "the right tool for the job." Had the job had different requirements, I might've picked a particular DBMS to code to.

    --
    Knowledge is how to play a game, intelligence is how to win, wisdom is knowing what game to play.
  85. Pay for Commercial versions of GPL software.. by perlboy84 · · Score: 1

    Personally I think Urlocker was simply trying to point out that the the spirit of the GPL isn't about exploiting a company/developer because they release their software for free. Personally, I support GPL companies who make commercial software available. This includes both Redhat & MySQL. These companies have done the right thing by us ('us' being those who believe in the GPL) and consequently I'll gladly repay them. My philosophy on purchasing software which is otherwise released under GPL is "If you can afford it, pay for it". At least then the company who releases the software can continue working on further releases. Maybe it's just me, but I get a warm fuzzy feeling when I pay a developer for his piece of OSS/GPL software. It's like saying "You've done a brilliant job, have a beer!". Just my 2c.

  86. Re:No doubt this will get modded down... by Black.Shuck · · Score: 1

    LOL :D