Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror
×
Databases Programming Software IT

MySQL 5.0 Now Available for Production Use 359

chicagoan writes "MySQL AB today announced the general availability of MySQL 5.0, the most significant product upgrade in the company's ten-year history. The major new version delivers advanced SQL standard-compliant features such as stored procedures, triggers, views & new pluggable storage engines. Over 30 enterprise platform and tool vendors have also expressed enthusiastic support for the new release of the world's most popular open source database."
This discussion has been archived. No new comments can be posted.

MySQL 5.0 Now Available for Production Use

Comments Filter:
  • what the? (Score:2, Insightful)

    by haxhia ( 783279 )
    What's the difference about this release and the "non general" release that was announced a while back?
    • Re:what the? (Score:5, Informative)

      by b0r1s ( 170449 ) on Monday October 24, 2005 @12:29PM (#13865091) Homepage
      'General' implies usability in production systems. What you really want to read it as is this is the first non-beta release.

      We tested many of our sites (including my personal favorite, vobbo, a site for video blogs [vobbo.com]) and found some very significant speed improvements, especially in some of the math functions (SIN, COS, etc).

      • by RelliK ( 4466 ) on Monday October 24, 2005 @12:49PM (#13865248)
        Any word on when they are planning to fix this [sql-info.de]? With this careless disregard for data integrity, it's hard for me to take MySQL seriously.
        • Well, straight from the email:

          Implementing ANSI SQL standard ways of using existing MySQL features means there will be fewer unpleasant surprises ("gotchas") for those migrating to MySQL from other database systems:

          - Strict Mode: MySQL 5.0 adds a mode that complies with standard SQL in a number of areas in which earlier versions did not; we now do strict data type checking and issue errors for all invalid dates, numbers and strings as expected

        • sort of (Score:3, Interesting)

          by einhverfr ( 238914 )
          Strict Mode attempts to solve many of them. I understand that there is a new set of gotchas, but we shall see (MySQL is not my primary RDBMS).

          Strict mode is only a partial solution, however, because applications can turn it off(!) and thus circumvent the protection it affords.
          • Re:sort of (Score:3, Insightful)

            by bedessen ( 411686 )
            That, and it's not turned on by default.

            As an analogy, consider the case of PHP and its register_globals setting. Originally this defaulted to 'on' but this puts great pressure on the author of the code to take extra care not to introduce serious security bugs, and it was widely recommended that people disable this and not write scripts that depend on it.

            I guess the PHP developers got tired of being blamed for all the shoddy PHP code out there, so a few years ago they changed the stock default to 'off'. Y
  • by cerelib ( 903469 ) on Monday October 24, 2005 @12:22PM (#13865037)
    I have always been amazed thy MySQL has been able to gain the popularity it has without features like stored procs and triggers.
    • Because it's easy to deploy, easy to manage and - because not feature-bloated - easy to learn and use. Is that enough?
    • For a lot of jobs (websites), they aren't needed. MySQL is very easy to implement and integrate with your site.
      • I saw the topic of your comment, and was all ready with about 43,204 reasons why speed and simplicity just don't cut it for enterprise applications...but you're right. Views and triggers are awesome (Stored procedures are not, but they are, unfortunately, a necessary evil. Writing them is about as fun as stabbing yourself in the foot with a fork, but you'll always find statistics that speculate that 60,70,80%+ of business logic is written in stored procedures, however precise those numbers may be, they are
    • For small websites that need 1-2 dynamic features ("news" and "mailing list", for example), it's cheaper to go with MySQL, where devs are all over and damn near everyshared hosting account supports it out of the box.

    • by User 956 ( 568564 ) on Monday October 24, 2005 @12:36PM (#13865147) Homepage
      Almost every database out there impliments an ISO or similar SQL standard as it's base (SQL-92 in most cases). They then build on top of that by adding their own features, while still supporting the common SQL syntax. It's not about being a barebones implimentation of a standard, it's about supporting the standard as your base.

      PostgreSQL supports SQL-92, while adding it's own extra features (which describes most other databases like Oracle and MS SQL too), including the support of the "LIMIT" statement. MySQL doesn't support any standard base, instead existing as an arbitrary mish mash of standard and propritary SQL. It wasn't until the current version, 4, that MySQL even bothered to add support for UNION.

      With every other database you can start working safe in the knowledge that while having it's own extensions, you're working with a normal "SQL" database. MySQL, while posing as SQL, has little if anything in common (in particular see threads about optimization - getting fast code in MySQL means learning an entirely new system filled with quirks and vomit inducing workarounds to solve language faults)
      • by Anonymous Coward on Monday October 24, 2005 @01:38PM (#13865633)
        C'mon, how can you say that ?

        One of the challenges of MySQL 5 was precisely to get closer to the SQL:2003 standard. And it did.
        Consider the MySQL stored procedures for example : their syntax is probably one of the most respectful of the norm today. And that effort was also made for all the other new funcionality of MySQL 5.

        Now since you're talking about the past flaws of MySQL, you shouldn't confuse the absence of a functionality with the proprietary implementation of that functionality.
        It's true that until 2 years ago or so MySQL didn't support UNION but when it did it was in a standard-compliant way. But as far as I know MySQL has never had such a proprietary approach as the one Oracle had to outer join syntax for years for instance.

        Concerning the LIMIT statement, it is proprietary syntax because there is no equivalent for it in the SQL standard ! By the way you won't find two RDBMS that implement it the same way...

        So don't tell us MySQL is one of the less standard-respectful databases because it's just not true. It might not be the most SQL standard-compliant because it lacks standard functionality but what is implemented is fairly normative.
        And don't come arguing that MySQL should implement "all of the standard or none of it" because you know pretty well it is not possible for a young RDBMS like this...
    • Yeah, haven't really needed those feature at this company. I've temporarily inherited a MS SQL Server database, so decision time on the fate of that database is nearing (and I don't even consider myself a DBA).

      At my old company, their reservation system relied on advanced database procedures, so they used... an advanced database, namely Oracle. Imagine that. MySQL not necessarily competing with Oracle. Most blogs (small blogs, and wikis) don't need Oracle.

    • Both of these can be done in the client-side code, and in some ways are easier for a smaller system. Moving app logic out into the DB can yield some benefits, but the fact that now you have two paths of execution to consider can complicate things too much.

      We use both in our systems (and have been since 5.0 was beta), and we've had mixed results. Triggers still can be very flaky. The stored procedures are handy, though, and work pretty well.
    • Why MySQL is popular (Score:5, Interesting)

      by einhverfr ( 238914 ) <chris.traversNO@SPAMgmail.com> on Monday October 24, 2005 @12:55PM (#13865301) Homepage Journal
      I stopped using MySQL as my primary RDBMS in 2000 (I still use it when apps require it, but I almost never program for it.

      When I started using PostgreSQL 6.5, I noticed that it was *far* harder to use than MySQL. It had a *huge* learning curve and was missing obvious functionality such as alter table drop column. But it provided better data integrity checking than MySQL. So for the next two years, I would prototype databases in MySQL before moving them over to PostgreSQL.

      MySQL was good enough for simple CMS type tasks and extremely user friendly at a critical time in the market. PostgreSQL, designed for enterprise apps from the beginning, placed technological soundness ahead of ease of use. However, over the last five years, PostgreSQL has actually become the simpler RDBMS to use and program for. No questions of "I misspelled InnoDB and now it created a MyISAM table instead" or such.

      Unfortunately, it seems that by the time PostgreSQL became easy to use, MySQL already had cornered the low-end market. However, I would say that aside from light-weight CMS tasks, PostgreSQL is still far and away the better application for a number of reasons:

      1) ACID compliance is pervasive throughout the engine. Creating operations outside a transaction, while possible, requires an untrusted programming language (like C, PL/PerlU, PL/PythonU, etc).

      2) Date's Central Rule is designed into the RDBMS and cannot be circumvented by the application (which is not the case in MySQL 5.0 as strict mode can be disabled by an application).

      3) PostgreSQL, while not perfectly standards-compliant, is far more standards-compliant than MySQL. This allows for much more portable code to be written for PostgreSQL than MySQL.

      4) PostgreSQL is much more extensible than MySQL. You can add language handlers to allow you to create stored procs in whatever languages you want. PostgreSQL currnetly ships with PL/PGSQL, PL/Perl, PL/Python, PL/TCL. Other languages, such as PL/PHP, PL/Java (or PL/J), PL/SH, and PL/R are available as addons. I believe there is an attempt to make Mono available for stored procedures. Also you can add new data types without too much difficulty.

      5) PostgreSQL has better Business Intelligence capabilities than MySQL. Capabilities include table partitioning and more. Parallel queries (across nodes) are under development in a spinoff project called Bizgres.
      • by lukej ( 252598 )
        I think I am pretty agnostic about the whole Postgres/Mysql love affair. But I do find amusement in the 'personalities' of those supporting both sides.

        Point #3;I always like the standards = portable argument. Reality check:

        a> if somebody writes a huge DB app, standards compliant or not, their going to stick with their base DB
        b> if it is a small DB app, then it's trivial to rewrite if you do want to migrate DBs

        With all my Postgres and Mysql based stuff, I've never rewritten one for the other. Often
  • Innovation (Score:3, Funny)

    by chrysalis ( 50680 ) on Monday October 24, 2005 @12:23PM (#13865040) Homepage
    Wow, triggers and stored procedures. MySQL really does innovation.

    • by choas ( 102419 ) on Monday October 24, 2005 @12:27PM (#13865072)
      So there I go, looking up stored procedures on Wikipedia and it gives me this:


      Wikipedia has a problem

      Sorry! This site is experiencing technical difficulties.

      Try waiting a few minutes and reloading.

      (Can't contact the database server: Lost connection to MySQL server during query (10.0.0.101))


      Well at least I now know you're not a troll and it DOES gave something to do with MySQL ;)

      • Re:Innovation (Score:5, Informative)

        by Jamesday ( 794888 ) on Monday October 24, 2005 @02:40PM (#13866077)
        10.0.0.101 is Adler. Its uptime is currently 2017391 seconds (23 days). Adler's uptime is that short because it had a hardware repair. It was probably overload - several DB servers are dead right now and Monday is the busiest day for the site. So far the site is consistently filling to capacity all the hardware which is ordered and that shows no sign of stopping. It's now at 4500 pages per second, 400 megabits/s. For scale, the biggest Slashdotting the site saw was about 650 pages per second.

        Averages over 23 days for this one server: 1620 selects per second, 10 inserts and 3 replaces per second. That is: 140 million selects per day average. Peak rates are about double average rates, typically in the 3000-5000 qps range.

        I'm one of the roots at Wikipedia. Figures from SHOW STATUS just before typing this reply.
    • Re:Innovation (Score:3, Insightful)

      by iBod ( 534920 )
      Although these features may no longer be 'innovative' they take a lot of work to implement and MySQL is giving you that effort for free (as in beer).

      What have you innovated lately?
      • Re:Innovation (Score:5, Informative)

        by b0r1s ( 170449 ) on Monday October 24, 2005 @12:39PM (#13865170) Homepage
        Postgres was free ('as in beer') and free ('as in a real license'), and gave away these features long ago.

        Besides, for 'freedom', the BSD license used by Postgres beats the GPL hands-down.
        • True, but how does that devalue what MySQL have done - as your agressive, zealotish, tone implies that it does?

          Sorry. I just don't get the MySQL PostgreSQL hate thing. They are both good pieces of software, both good choices for given (maybe different) situations, as far as I'm concerned.

          I don't really care about who was first or what license you have.

          Was PostgreSQL the first to implement these features? Uhh, I think not!

  • Well done MySQL AB (Score:5, Insightful)

    by iBod ( 534920 ) on Monday October 24, 2005 @12:23PM (#13865041)
    It's not the fanciest, or the fastest, but it's ubiquitous and free!

    I for one have found it invaluable on many projects where a full-featured, high-capacity RDBMS would have been more trouble and expense than it was worth.

    Props to MySQL!
    • Yep, that basically sums it up. It's the AOL of databases.
    • by User 956 ( 568564 ) on Monday October 24, 2005 @12:40PM (#13865171) Homepage
      It is still lacking compared to other free databases such as PostgreSQL and Firebird, but version 5 is a real improvement. (as mentioned, now you have things like triggers, stored procedures, views and sub-queries.) If you use strict mode integrity checking will work reasonably.

      What I'm currently miss the most in the new version is that it can't handle domains and the ability add check constraints as you create tables is somewhat lacking. So, even if MySQL have done a tremendous job improving their product I would still go for PostgreSQL, or Firbird any day both for technical and legal reasons. Both Postgresql and Firebird also seam to be better at internationalization.

      The fact that Oracle just bought the company that supplies the default MySQL storage engine doesn't spell good for the future. Even though MySQL could continue to use InnoDB in the future under the GPL licence it is in Oracles power to raise the licence fees for commercial use. That would mean less incomes to MySQL AB and that could hurt their ability to develop the product further. However, afaik Oracle have not said anything about raising the prices other than that the licence deal with MySQL is going to be renegotiated in '06. To me that sounds a bit ominous.
      • I agree there are better RDBMSs, but MySQL is offered free by almost any web hosting outfit you care to name.

        For small web-based projects, this gives it an edge over the (still slighly esoteric) PostgreSQL (which I would probably use given the choice).
        • For small web-based projects, this gives it an edge over the (still slighly esoteric) PostgreSQL (which I would probably use given the choice).

          Sure, as long as money isn't involved. If strict mode is off, MySQL will happily truncate numbers for you :-) Personally I cannot believe that so many shopping carts use it.

          Where MySQL really shines is for light-weight CMS projects. I would still use it for this. For anything else, I would use PostgreSQL. If you need to integrate PostgreSQL with MySQL, there is
          • If you're worried about MySQL truncating/rounding numbers, then you should take a few database design classes and learn how to handle numbers and choose the correct data types in your schema.

            "It's a poor workman that blames his tools" - [somebody 1655].
      • The fact that Oracle just bought the company that supplies the default MySQL storage engine

        InnoDB is not the default storage engine in MySQL... MyISAM is.

      • If Oracle was thinking smart, they'd make sure InnoDB is free, or at least really cheap.

        MySQL is about the best argument out there for Oracle.

  • Well this is neat (Score:5, Insightful)

    by lewp ( 95638 ) * on Monday October 24, 2005 @12:25PM (#13865055) Journal
    No matter if you're a MySQL supporter or someone who thinks that everyone should use a "real" RDBMS, having all these new features available to MySQL developers is a good thing. There's quite a few apps, I'm sure, that don't use these features in databases where they're available simply because they're aiming for the lowest common denominator that was MySQL's feature set.

    Anyway, not trying to start an argument about the relative merits of any particular RDBMS, but this is a good thing all the way around. I look forward to taking it for a spin.
    • Now if only the remaining 80% of ISP's and other hosting providers were to move away from version 3.23.x...
    • While it's good to see more features I agree, I have specific problems with stored procedures.

      Each time I've looked at a different database, they've been implemented in an incompatible way. This means that as soon as I have to switch DBMS for the application, all the queries have to be moved in a huge, laborious job with SProcs.

      Alternatively, I've worked in a system that held its database queries separately as simple SELECTs, INSERTs etc - and, wherever the syntax or commands differed between DBMSs, it had
  • Gotchas (Score:5, Interesting)

    by Ed Avis ( 5917 ) <ed@membled.com> on Monday October 24, 2005 @12:26PM (#13865064) Homepage
    It would be cool if someone knowledgeable could check the old MySQL Gotchas [sql-info.de] list and see how many have been fixed in 5.0. My hope is, nearly all of them.
    • I would be quite surprised if any of those behaviours were changed, as they are all "working as designed" if not as an Oracle or Sql Server guru would expect.

      That said, there may be other ways to define things so that they behave more 'normally'.

      Cheers,
      Justin.
    • by Anonymous Coward
      Results of tests against MySQL 5.0.16-nightly-20051017-log (I downloaded and installed this latest snapshot today)

      1.1. NULL, or when NULL IS NOT NULL
      The behavior was not changed, but it's of no importance anyway.
      1.2. AUTO_INCREMENT
      The behavior was not changed, and I must admit that all that sounds scary. On the other hand we're using a LOT of mysql where I work and never run into a single problem caused by this particular problem.
      1.3. ENUM
  • to deliver to SCO. I wonder how much money that cost them?
  • by philovivero ( 321158 ) on Monday October 24, 2005 @12:33PM (#13865119) Homepage Journal
    I've been waiting for years for stored procedures, triggers, and... ah. Wait a minute. No, actually, I've been running multi-terabyte millions-of-transactions-per-hour database clusters with MySQL for about two years now.

    Well. Anyway. Now all the little shops that have been making excuses about why not to use MySQL can now start using it.

    (In fairness, actually, yes, the MySQL gotcha's page scares me, too)
    • >> I've been running multi-terabyte millions-of-transactions-per-hour database clusters with MySQL for about two years now.

      Are you serious, or was that just a throwaway remark, or a joke?

      I specialize in VLDBs and I'd be really interested in some details if it's actually true.

      Not that MySQL would even be on my radar for such a job, I think you would write a very interesting case study if you are doing what you claim.

      Care to provide any more info?
    • Nice to see it scaled well for you. My MySQL server is currently running around 150 queries per second (540,000 an hour) with no problems.
  • I initially started using MySQL because it was faster than PostgreSQL.
    But now with the involvement of SCO and Oracle in this little project I am looking to write future applications on PostgreSQL or SQLlite. I cannot see any good coming from Oracle's involvement with Innobase or SCO involvement with MySQL.
    I could understand Oracle becoming more involved with PostgreSQL, because I can see PostgreSQL being more of a stepping stone to Oracle.
    SCO well their just SCO, and I don't see them doing anything but
  • Do you get these features in all table types, or do you have to use the (much slower) InnoDB tables, as with transactions?
  • by dtfinch ( 661405 ) * on Monday October 24, 2005 @01:31PM (#13865574) Journal
    NASA drops the whole "shuttle" idea. Andy releases a new version of Minix. DrDOS steals from FreeDOS. And MySQL becomes a real database server.
  • Now with SAP... (Score:5, Interesting)

    by MosesJones ( 55544 ) on Monday October 24, 2005 @01:32PM (#13865577) Homepage

    The biggest thing here isn't the stored procs et al... its that SAP, you know the worlds biggest enterprise software vendor... will CERTIFY its application on MySQL (when using the old SAPdb stuff). This means that organisations that spend MILLIONS on SAP systems can get support if they run it on OSS.

    That is the big deal, not functionality its about the support. MySQL might be the poor relation to Postgres in terms of functionality, but MySQL has a MUCH big best friend who can open doors where functionality doesn't count.

    This is a real moment IMO, as a well known OSS database has a massive seal of approval from one of the most famous for reliability vendors in the market.

    Next time your boss says that OSS can't do a DB, tell him that SAP disagrees.
  • by jonfelder ( 669529 ) on Monday October 24, 2005 @01:38PM (#13865629)
    1. I love MySQL!
    2. Who cares? Postgres is and always has been better.
    3. I used to use MySQL, but now I don't.
    4. I used to not use MySQL, but now I do.
    5. If you use MySQL you are stupid.
    6. If you do not use MySQL you are stupid.
    7. Only Nazis and CowboyNeal use MySQL.
    8. Did anyone say goatse.cx?
  • Some thoughts (Score:5, Interesting)

    by ngunton ( 460215 ) on Monday October 24, 2005 @01:45PM (#13865674) Homepage
    I've been using MySQL for about six years now, and it's been working very well for me. I utilize it on my crazyguyonabike.com [crazyguyonabike.com], a bicycle tour journals website. It has about 750 journals on there, with over 60,000 pictures. I use replication to back up the database remotely, and all in all it works very well. I honestly can't understand the level of hatred towards the tool that emanates from many of the posts here.

    I have to say that I cringe every time I see a MySQL story on slashdot these days, because it just seems like there is a legion of PostgreSQL zealots just waiting for any chance to denigrate MySQL. It's the same littany every time - PostgreSQL is so much better, have they fixed the "Gotchas" yet, etc etc. Even when MySQL AB adds a feature or does fix some perceived failing, then the detractors simply ignore this and move on to some other apparent showstopper. For example, it's not enough that MySQL has transactional capabilities - no, now they simply moan that it's not the default (MyISAM still is).

    We seem to have people who have what can only be described as a religious mindset when it comes to these issues. "Religious" in the sense that their minds are closed, and no matter what new facts come to light, they will simple twist everything around to match with their existing worldview. So, in these people's minds, MySQL AB adding features is not a positive thing, it's rather a sign of how wrong Monty was in the past to suggest that most people really don't need transactions for everything. Well, at what point exactly do we have "proof" that I don't really need transactions for my website? Is six years of 24/7 use enough? If not, then how long exactly?

    Yes, I've had problems, of course I have. You will with any tool, PostgreSQL included. No matter the fact that PG has had transactions from day 1, people still got corrupted tables occasionally. But at the end of the day, the results are the same - do you still have your data? Is it intact and internally consistent? I can answer yes to that. I don't mind having some logic in my application to delete some records when some other records get deleted. It works really well, and while in theory it could cause data inconsistency, in practice this has never happened. Even if it did, a quick perl script would be sufficient to clean things up - I'm doing that kind of thing all the time anyway, as the database evolves and I need to shift stuff around or change table structures. It's no big deal, really! Some will say No, this is a Horrible Solution and you should put business logic into stored procedures... I say, get a life. That's *your* solution, it's not everybody's. You're simply moving your complexity around, you'll never really get rid of it. Some people are more comfortable with their complexity in stored procedures, I'm perfectly comfortable with it in my Perl application. So what, does it work for you? If so, then who cares.

    There *are* some things in MySQL that disturb me, but I don't know if they are common to other DBMS solutions out there. One of the big ones for me currently is that the query optimizer only uses one index in queries. I know you can have multi-column indexes, but I still see this being a problem for some of my more complex queries. Does PostgreSQL do this better? Informed opinions please, rather than fanboy noise.

    Also, speed. I hear lots of anecdotal tales about how much faster PostgreSQL is these days, especially under load from multiple connections. I'd like to hear from anybody who has actually made a transition from MySQL to PostgreSQL for a high-load Web application. Can PostgreSQL really replace MySQL now? Or is this another case of wishful thinking?

    Thanks,

    -Neil
    • Some more thoughts (Score:5, Interesting)

      by Just Some Guy ( 3352 ) <kirk+slashdot@strauser.com> on Monday October 24, 2005 @03:15PM (#13866311) Homepage Journal
      It's the same littany every time - PostgreSQL is so much better, have they fixed the "Gotchas" yet, etc etc.

      I also cringe whenever a MySQL story comes out because it seems like the conversation devolves into two opposing opinions:

      1. Database administrators who understand DB theory, have managed terrabyte servers, and know what a real database looks like. This group hates MySQL.
      2. People who used MySQL to implement a tiny pet project successfully. This group loves MySQL.

      People in the latter group don't understand why anyone would dislike it - after all, their home-written blog software renders DB-backed pages in less than five seconds.

      People in the former group can't imagine why anyone would put up with its many, many shortcomings when other faster, more capable, more Free databases are widely available. They don't understand why some people wouldn't want to use the best tool for the job when there's no legitimate reason in the world not to.

      One of the big ones for me currently is that the query optimizer only uses one index in queries. I know you can have multi-column indexes, but I still see this being a problem for some of my more complex queries. Does PostgreSQL do this better?

      I'm migrating my companies data from an old FoxPro setup to PostgreSQL. I don't have the option of normalizing the data (it would break too much legacy code, although I might look into making backward-compatible views sometime down the road), but selective indexing on columns (and functions on columns!) made 20-table joins work astoundingly well. Only one index per query? That would be completely and utterly unusable here. Yeah, PostgreSQL does that better.

      • by ngunton ( 460215 )
        You seem certain that PostgreSQL can use more than one index per query. Well, a cursory search on Google comes up with this page [redhat.com]. The "Red Hat Database" is basically PostgreSQL (I think!), and a little way down this page you can see this comment:

        "Note that a query or data manipulation commands can only use at most one index per table."

        Here's another link [postgresql.org] which seems to confirm this.

        I believe I have seen comments somewhere regarding experimental support for multiple indexes in queries in PostgreSQL, but I am
        • by rtaylor ( 70602 )
          Technically PostgreSQL 8.1 can merge two scans of single column indexes together into a single table scan. This falls somewhere between a bitmap and regular indexing -- it builds a lossy bitmap on the fly to do all of the inter-column tricks.

          With the beta's I've been taking my multi-column indexes and splitting them up to let the bitmap Index Scan deal with them instead.
  • by MarkWatson ( 189759 ) on Monday October 24, 2005 @02:53PM (#13866166) Homepage
    I have a question: if I use the older JDBC connector (from June 2002) before the connector project was absorbed by MySQL and became GPLed, is it OK to use MySQL on a leased server with a Java web application that is not GPLed?

    That is, if my web application links with the old LGPLed connector which uses a socket connection to the GPLed MySQL server, then that is fine license-wise, right?

    This is a question for all the 'Slashdot lawyers' :-)

    Seriously, from reading the licenses, I believe that the scenario that I mentioned using the older LGPLed JDBC connector is OK, while using the newer GPLed JVBC connector(s) is not.

    Also: I believe that this is not an issue with Ruby since the client MySQL connector is not GPLed.
    • According to MySQL AB and their interpretation of GPL, any sofware talking to the server using their protocol is to be considered a derived work, and thus has to be GPL'd as well (or you must buy a commercial license). Of course, such interpretation is completely brain-dead, not what GPL is about at all, and would most likely not hold in the court; but then again, IANAL. Either way, they don't want you to use it that way, even if they can't enforce it.
  • by Safety Cap ( 253500 ) on Monday October 24, 2005 @05:54PM (#13867361) Homepage Journal
    C:\>mysql -V
    mysql Ver 14.12 Distrib 5.0.15, for Win32 (ia32)

    [snip]

    mysql> show columns from foo;
    | Field .| Type . . . . . . . .| Null | Key | Default | Extra
    | id . . | bigint(20) unsigned | NO.. | PRI | NULL. . | auto_increment
    | mydate | date. . . . . . . . | NO.. | . . | . . . . |

    2 rows in set (0.02 sec)

    mysql> insert into foo (mydate) values (0);
    Query OK, 1 row affected (0.09 sec)

    mysql> select * from foo;
    | id | mydate
    | 5 | 0000-00-00 |
    1 row in set (0.00 sec)

    mysql>
    WTF is 00/00/0000, 5cr!pt K!dz Day?

    D'ooh!

A complex system that works is invariably found to have evolved from a simple system that works.

Working...