Slashdot Mirror


MySQL Moves to Prime Time

MagLev writes "MySQL, especially version 5.0, is popping up on the radar screens of database gurus who built their reputations and book sales using other SQL databases. Ken North, who did those ODBC performance benchmarks for Oracle, Sybase, and DB2, wrote a recent article about MySQL 5.0. The article profiles mission critical database software and discusses how well MySQL 5.0 fits the profile. It gives good marks to MySQL, except for Java and XML integration."

18 of 261 comments (clear)

  1. Slowly But Surely by oirtemed · · Score: 4, Interesting

    OSS can compete with commercial offerings, it just usually takes more time to mature. Now, I'd expect to see a burgeoning market for MySQL support companies or companies offering database services and supports based on customized OSS MySQL sources. I use MySQL for websites and such, it's a great little database but I had no idea how much it scaled: MySQL has a demonstrated capacity for managing very large databases. Mytrix, Inc. maintains an extensive collection of Internet statistics in a one terabyte (1 TB) data warehouse that contains 20 billion rows of data. Sabre Holdings runs the oldest and largest online travel reservation system. It replicates 10-60 gigabytes per day from its master database to a MySQL server farm. The MySQL databases are used to support a shopping application that can accommodate a million fare changes per day.

    1. Re:Slowly But Surely by Anonymous Coward · · Score: 1, Interesting

      When I worked on Sabre front and back ends over 5 yrs ago they had Oracle under the hood. They may have changed now but I can't see going from Oracle to mySQL for a company who's core business is the data.

  2. Apparently not by Anonymous Coward · · Score: 3, Interesting

    'prime time' enough for Sun.

  3. Yay for MySQL by Sliptwixt · · Score: 2, Interesting

    As a developer who went from Open Source (5 years) to .NET programming, the only thing I *really* missed was working with MySQL. Fast, light, stable, and easy to work with. With all the new version 5 features, plus the help of adapters like ByteFX , MySQL is now part of a valid enterprise solution to .NET developers (IMHO).

    1. Re:Yay for MySQL by The+Bungi · · Score: 2, Interesting
      The ByteFX provider has been discontinued since early last year. MySQL hired the guy and he abandoned his original work to do the MySQL adapter, which like all of their stuff is 'free-licensed' under the GPL, so you're screwed if you want to do anything other than commercial and you happen to dislike having the GPL forced on your (equally free but not released under a viral license) code.

      I started using the ByteFX provider, reporting bugs on sf.net and whatnot because it was licensed under the LGPL. Then all of the sudden it's MySQL or the highway babeee!

      Heck, if he had continued working on the LGPL version I would have 'bought' a license from him or I'd have found some other way to throw some decent money his way. But MySQL? I wouldn't touch them. They've changed their licensing scheme once and they can do it again.

      (actually, I would buy their provider if it wasn't written in managed code. it's too slow and consumes too much memory)

      'Vendor lock-in' also means having a company do a 180 on the license and abandoning your branch of the product when you don't have time or expertise or interest to go in and fix someone else's code. I don't want code, I want a binary black box that works and support to go along. I don't want/need free. I don't want that social movement bullshit either. It's software. Sell it to me and support it. So far the two open source vendors (MySQL and RHN) we've worked with at that level suck much more than Microsoft, IBM or Sybase (IBM is especially great with their 3-year 'we won't support it anymore even for money' product cycles).

      Anyway, rant over =)

  4. MySQL != SQL by SharpFang · · Score: 4, Interesting

    One thing you must remember about, when considering MySQL. It's a relational database, all right, but it doesn't really support SQL.
    It supports most of SQL syntax, so SQL gurus will find it easy to learn. Most of basic SQL stuff works. But more advanced constructs like nested queries are either unsupported or terribly unoptimal, and some SQL features are there just for compatiblity sake but shouldn't be used at all. Instead you should learn and use a bunch of MySQLisms that aren't found anywhere else and do the same thing, much better (faster, safer, bug-free). So if you have a database app and ponder what database to integrate it with, choosing MySQL means more than plain tweaks. It may mean deep hacks. MySQL is devilishly fast when it comes to simple queries. Few databases can beat it in this domain. But it comes with a cost, shortcuts taken prolonging/breaking many other tasks. So choosing MySQL is a dangerous choice - it's a lock-in.

    --
    45 5F E1 04 22 CA 29 C4 93 3F 95 05 2B 79 2A B2
  5. We chose Postgresql by Ritz_Just_Ritz · · Score: 5, Interesting

    I'm mostly just the digital plumber in my firm, but about a year and a half ago we were in a situation where it was time to migrate our production servers off of SQL Server 7 to "something else." The "something else" needed to be Linux friendly since we were phasing out M$ in our production environment in general. So we hired 2 former Oracle employees and expected them to tell us that Oracle was the answer. After about a month of nosing through our existing code, we were given a menu of options with their preference being postgresql. Mysql didn't make the cut because it lacked "important features" and wasn't "sql compliant", lacked "triggers", and something about "locking" which escapes me at the moment. I don't know a database from a hole in the ground, but that was our experience. We've been using Postgresql with RHEL 3 and RHEL 4 without incident. Very good for us...not so good for Mr. Ellison and Mr. Gates. Cheers,

    1. Re:We chose Postgresql by Penguin · · Score: 2, Interesting

      You would experience that in several row level locking engines, e.g. InnoDB and Oracle (thought I might be on thin ice here regarding Oracle)

      InnoDB has the same behaviour:
      http://dev.mysql.com/doc/mysql/en/innodb-restricti ons.html
      "InnoDB does not keep an internal count of rows in a table. (This would actually be somewhat complicated because of multi-versioning.) To process a SELECT COUNT(*) FROM t statement, InnoDB must scan an index of the table, which takes some time if the index is not entirely in the buffer pool."

      Row level locking has a bunch of advantages, but in a bunch of web applications (where COUNT(*) seems to be used a lot) table level locking could result in quicker queries.

      You can read more about different kinds of locking:
      http://dev.mysql.com/doc/mysql/en/table-locking.ht ml

      --
      - Peter Brodersen; professional nerd
  6. new feature... Hot Copy ? by layer3switch · · Score: 2, Interesting

    So the perl tool come with MySQL 4.x, mysqlhotcopy isn't "hot copy"? What's so "hot" about the new "hot copy"?

    --
    "Don't let fools fool you. They are the clever ones."
  7. innodb and fulltext? by allanw · · Score: 4, Interesting

    Can you use transactions, and have referential integrity and fulltext indexing on the same table yet?

  8. Liked it, but don't use it anymore by nighty5 · · Score: 4, Interesting

    I used to love MySQL back in the hayday, but then they changed their license model, thus it was "good night sweet prince".

    Most other decent databases use something similar to LGPL for use of their libraries, thus there is no need to disclose your source code in an application that uses the database. This is rather a critical feature identified by almost all database vendors. Even Microsoft SQL has an LGPL-like license that doesnt mean you have to share your code.

    Once MySQL was reaching critical mass, they decided to change the rules and restrict the license. PHP and others revolted and dumped MySQL for SQLite as the default database for PHP 5. Some could argue it was due to library mixup hell, with multiple versions of libraries on the system, but we all know the main reason was behind the license.

    MySQL got a bit scared and made this silly license exception to the top 20 FOSS projects (don't quote me on that, recalled from memory) so they could be LPGL.

    In the process I moved all my code to PostgreSQL and havent looked back.

  9. Hi Ken! That's for the spam. by Anonymous Coward · · Score: 1, Interesting

    MySQL, especially version 5.0, is popping up on the radar screens of database gurus who built their reputations and book sales using other SQL databases. Ken North, who did those ODBC performance benchmarks for Oracle, Sybase, and DB2, wrote a recent article about MySQL 5.0.

    Jesus, dude, if you're going to submit your own stuff at least try to hide it a bit better. This is over the top obvious to anyone with half-a-brain or more, and who's tried to spam Slashdot.

  10. FULL TEXT search still sub-standard in mysql by Anonymous Coward · · Score: 1, Interesting

    I love mysql, but it is lacking many fulltext searching features found in oracle such as stemming and word proximity just to mention a couple. Oracle is far more advanced than MySQL when it comes to fulltext searching. In addtion the InnoDB engine does not have any fulltext searching capabilities at all.

    This is my only gripe about MySQL. Otherwise I love it.

  11. Re:Gosh by Anonymous Coward · · Score: 1, Interesting

    Let's take these one at a time...

    Server environment variables: WTF are you talking about? Why on earth would a comment be stored in them, and how could the environment from one request corrupt data in another request? Remember we're talking Apache 1.3 here - no threads in sight.

    Connection pooling: the only possibility I can see apart from what I said.

    Session variables: why on earth would a comment be stored in the session? It has one purpose and one purpose only - to get stored in the database. Furthermore, why would somebody else's session data end up in my session?

    mod_perl: again, we aren't talking about a threaded environment, my request is executed in a different process to other requests.

  12. I think not by vandan · · Score: 3, Interesting
    MySQL are finally bringing stored procedures, views and triggers to their database server. Cool. I've been using MySQL for 6 years now, and I've very happy with the version I'm currently running ( 4.0.25 ).

    Having said that, anyone who says that MySQL are ready for 'prime time' are clearly deluded. You can have a database server with unbelievable speed, features, security and stability, and it doesn't mean a damned thing if you don't have client libraries ready.

    MySQL's client libraries are appauling. MyODBC, their ODBC connector, has been one big fuckup after another for the past 2 years. It's a minefield of:
    don't use this with that, and certainly don't download this one - we don't know what we were smoking when we released that

    Rock up to a MySQL mailing list, and the most common questions is about client libraries and the 'new' authentication system. The problem is that this authentication system is no longer new - it's old. It's many years old. Why haven't the client libraries been updated? The error message suggests that users "upgrade their client libraries", but upgrade to WHAT? Perhaps the error should read:
    You are using client libraries from last century. Perhaps you should match them with a server product from last century. Please don't use our newer server products until we have managed to release some client libraries to match

    I for one would prefer to see some actual client-side support for 4.1.x before people start declaring 5.0.x 'ready for prime time'. You can't use 5.0.x features with 4.0.x libraries.

    Has anyone checked out the GUI admin tools? These are also a long chain of distasters. MySQL seem to spend 18 months getting a GUI looking promising, if a little buggy, and then abandon the project. What happened to mysqlcc? What's happening with Administrator / Query Browser? Critical bugs reported months ago have gone completely untouched. For example, you can't edit tables with a primary key, because Administrator doesn't recognise the primary key, and strips it out of the table when you click 'apply'. Cool! Sounds ready for prime time to me! When will MySQL add support for primary keys to their products?

    Yes, I'm stirring here. But none of the above is in the slightest untrue. MySQL have lost their focus. With so much attention being paid to a 5.0.x release, everything else is suffering badly.
  13. From personal expereince... by g_lightyear · · Score: 4, Interesting

    26 million rows = broken MySQL system.

    It just doesn't cope. It's fine if you've got no data to speak of; it's great when the sizes of what it's working with is small.

    IT TAKES 24 HOURS OF UNWRITABILITY TO MAKE A DAMN BACKUP, FOLKS.

    MySQL was the biggest mistake I ever made. I had the option of choosing Postgres on an older version of the software, or MySQL on the latest, and I've been regretting it ever since.

    The fact is this: I've used it for stuff when the amounts of data are small, and it's brilliant - but if you need to keep a lot of information, you're screwed - run, don't walk, to the nearest vendor and get something decent, because MySQL just can't cut it. It's missing too much in too many places.

    Now, I haven't used 5. I'll have to, because 4 sucks, and 5 can't be worse - I can only hope that 5 gets rid of the worst of my problems; it will probably stay slow and unresponsive, and continue to take an hour to generate a report, but I can at least pray that perhaps, if I'm lucky, I can get a backup out of it without taking down the system.

    No matter how good you think it is; no matter how fast you think it might be... don't pretend it scales up to the kinds of loads the commercial vendors can handle. There's a reason the big boys cost big money, and despite popular opinion, it's not all just leeching money out of your pocket. MySQL doesn't do big well.

    --
    -- A mind is a terrible thing.
  14. Re:propaganda by mattcasters · · Score: 5, Interesting

    Sure, how about comparing MySQL to other free & open-source databases.
    PostgreSQL, Firebird, MaxDB and Ingres all handle the milions of rows *a lot* better.
    Especially PostgreSQL seems to stay on par with Oracle, even offering (primitive) support for table partitioning, bitmap indexes etc.

    If I would try to do data warehousing on an open source database, it's probably going to be PostgreSQL.

    --
    News about the Kettle Open Source project: on my blog
  15. History repeats itself:1st linux, now mysql by Anonymous Coward · · Score: 1, Interesting

    I remember the days of Slackware and Linux version 1.x kernels, everyone said it was a joke and I thought it was a great learning tool. Then came version 2.0,2.2 kernels and everyone said it was a toy and not a real Unix. I felt it needed multitasking and a better filesystem. But in 2000, it was almost ready for primetime. Now its everywhere.

    I remember the blah blah blah arguments regarding SGI workstation graphic superiority, and Solaris server reliability.

    Now Mysql is still not primetime, but guess what, someone in college can learn it for free and use it for free.

    And I always felt that Linux wasn't that big a cost savings over commercial Unix. But Oracle costs big $$$ compared to Mysql. I would definitly use mysql and php for an application one stop below Enterprise level software development. And the tide is rising.

    WhatMeWorry