Slashdot Mirror


Major Changes To MySQL Coming Soon

Meltr writes: "This ZDNET article details some of the coming changes to the MySQL database server. In 4.0, to be released in mid-October: 'support for the Unicode character set, the SSL (Secure Sockets Layer) protocol, embedded database links and multitable updates' and in 4.1, to be released in December: 'nested queries and stored procedures'."

26 of 301 comments (clear)

  1. FULLTEXT search by Swamp · · Score: 3, Informative

    I'm just looking forward to being able to tune the FULLTEXT search function without recompiling the database server!

  2. MySQL other database comparison by Secure42 · · Score: 4, Informative

    It sounds great, MySQL it is trying to implement many features that were missed without loosing speed.
    You can have a look to these comparison between Mysql-PostgreSQL and other open source databases.

  3. Decent comparison of mysql and pgsql by Khazunga · · Score: 5, Interesting
    Does anyone know of a good comparison of both databases? Not the usual "X as feature A, while Y has not. Y is faster.". These are open-source products, so there's room for design analysis, not just the ZDNet style checklists... There's room to review the design and implementation decisions. This would ideally involve established members of both dev communities.

    What I'd like to see is a profound comparison of mysql and postgresql. I'm a happy user of both, and I currently have pgsql serving a 8 million pageviews/month site, and handling load gracefully. AFAICare, pgsql is at least fast enough. I also never had any reliability/data loss problems with mysql, despite heavy concurrent access. AFAICare, mysql is robust enough. I'd really like to find out what are the core differences in both designs to get a grasp of how fast they may evolve.

    --
    If at first you don't succeed, skydiving is not for you
    1. Re:Decent comparison of mysql and pgsql by Anonymous Coward · · Score: 3, Informative

      Ok you can have a look to these comparisons: -http://www.mysql.com/doc/M/y/MySQL-PostgreSQL_fea tures.html -http://www.geocities.com/mailsoftware42/db/ -http://www.mmlabx.ua.es/mysql-postgres.html (Spanish) -http://openacs.org/philosophy/why-not-mysql.html -http://phd.pp.ru/Software/SQL/PostgreSQL-vs-MySQL .html -http://www.mysql.com/information/crash-me.php

  4. Why MySQL ? by Anonymous Coward · · Score: 4, Insightful

    Yes, why ? Mysql is a very popular free sql database system , and I still have problems figuring out why.
    It supports almost none of the sql features I need. The solution to my needs(which includes free/opensource) is PostgreSQL,
    which do supports the features i require(subqueries, locking, stored procedures,views,triggers,other _real_ nice features..).
    One point that often comes up is that mysql is very fast, and it is fast, but atleast for my projects only silghtly faster than postgresql(2-4%),
    and in many special cases posgresql is way faster.
    Also the point of mysql beeing very fast disappears if you use the locking features of mysql, BDB/Innodb tables.
    For me, its postgres over mysql anytime.

    1. Re:Why MySQL ? by pere · · Score: 5, Insightful

      The answer is "because it does the job".

      Most small projects does not need transactions, subqueries or locking. And to really take advantages of such features you need to have some good understanding of databases.

      With mySQL you can actually make fearly decent, fearly fast and fearly stable application without using hours trying to design things optimal, (and actually without not really understanding what you are doing.)

      If you worry about +2-4 percent performance, how to handle peeks of hundreds of hits a second... then you have several good databases to choose from.

      If you should store a few thousand posts, and are hoping for a few hundred hits a day, and your web-application had deadline yesterday, and you are aout to start developing (90% of the web-application of today).... mySQL is a killer!

      (You can use it for other things as well. And it does scale fairly well (so Im told)... but then you should consider several other good databases..like PostreSQL)

    2. Re:Why MySQL ? by brunes69 · · Score: 3, Insightful

      I partialy agree wit this, but I would never base any application of mine on something as incomplete as MySQL (I too use PostgreSQL). Why do you ask? Simple. Who knows how large your project will get, or what substantial new features you will want to incorperate in the future. You may never need locking, but subqueries? C'mon, that is basic stuff. Sure you can get around needing them, but its a big pain in the butt and ends up being much moe inefficient. This is why I alays stick with the best product first, to leave my opions open, and won't have to re-do everything from scratch when I switch from MySQL (non SQL-92 standard) to any other DB.

  5. Mysql is ace by Anonymous Coward · · Score: 3, Interesting

    1. Microsoft Access is more functional, easier to use and deploy than MySQL.

    More functional? I could explain theoretically why that statement is utterly ludicrous, but I'll merley give a practical example:

    A big British financial organisation maintained internally, its publicly available financial data in Access. I wrote a system for them, using GNU/Linux, MySQL and mod_perl, which allowed web visitors do perform complex searches on this data. The internally-maintained big Access dataset was imported into the MySQL datbase via an import system I wrote for them. Now here's the interesting thing - they began to realise that the web-based system, even over an ISDN line, returned data substantially more quickly and reliably than did Access, even after they upgraded to the (ACID compliant) SQL server! Indeed, the latter constantly corrupted their data, would get into all sorts of unremovable row-locks and god knows what else in its attempt to remain beautifully ACIDic. Eventually, they ditched it and now use my system (with a content management client they've had written which accesses MySQL via myODBC). They've been using this for just under three years now, and there has not been, cumulatively, even one minute's downtime.

  6. Re:Um, transactions anyone? by Osty · · Score: 3, Informative

    To me, the fundamental feature missing is foreign key constraint, which I see is not even mentioned among the new features.

    Exactly! Take a look at http://www.mysql.com/doc/B/r/Broken_Foreign_KEY.ht ml and see why they don't have foreign key support yet. They simply say it's scheduled for inclusion in the "near future" (I'm not sure what their definition of "near" is, but that page has been up for months now, and foreign key support still isn't slated for 4.0 or 4.1). Don't hold your breath, and either switch to a real rdbms (a la pgsql), or continue to work around mysql's deficiencies on an app-by-app basis.

  7. The best opensource DBMS/R is here ... by Anonymous Coward · · Score: 5, Insightful

    I am quite frightened when i see people still using MySQL ...

    Ok, it's a nice database but it lacks from major steps :

    - fast and decent transactions
    - procedures
    - triggers
    - views ... (AFAIR there is no views)

    Why do not people user alternative database such as PostgreSQL or Interbase ?

    For instance insterbase and its sister projects (IB Phoenix : http://www.ibphoenix.org/ , FireBird: http://firebird.sourceforge.net , ...)

    The basic specs of interbase are :
    - full SQL92 compliant (entry level)
    - not fully SQL99 compliant

    For instance you have :

    - fast transactions
    - super fast blob/clob feature
    - procedure (full SQL92 here!!!)
    - trigger
    - strucutred data types
    - JDBC2.0 driver (type 4 JDBC3.0 is underway ...)
    - cool tools (admin, major crash fix and recovery stuffs ...)
    - easy data deployment (thru .gdb files)

    Under linux there are 2 architecture, the classical server and the super server (cf the docs).

    There are also cool and nice free GUI admin tools such as IBAccess:
    http://sourceforge.net/projects/ibaccess/

    All these stuffs are opensourced and free (as in beer) !

    No more hesitation ... go for a powerfull database ;-)

    1. Re:The best opensource DBMS/R is here ... by Colin · · Score: 5, Insightful

      I use MySQL for one of my web based applications, and I use Oracle for others. For the one I use MySQL for, I chose it because:

      - It's easy to run.
      I don't have to do much (if any) maintenance and management - I don't need to check if redo logs are too small, don't need to check for extents growing out of control etc.

      - It's fast.
      For my application - with simple inserts and deletes, MySQL is really quick. That saves me money - I can get away with a single processor Linux box for my database server, rather than something much more expensive.

      - I don't need the features of a larger database.
      I'm using MySQL to store and retrive information - basically a distributed file system. I don't need clever locking, transactions, views, foreign keys, triggers, stored procedures. On the applications I do need those features, I use Oracle.

      - It's cheap
      I looked at PostgreSQL, but it was going to take me a while to figure out how to get it set up - I find MySQL very easy to install and get running. Oracle was going to be very expensive - and it's not that easy to install and get running properly.
      When you add in the costs of installation, learning how the software behaves, and the management time in keeping the software running, MySQL (for me) came out as the most cost effective option.

      Colin.

    2. Re:The best opensource DBMS/R is here ... by m_ilya · · Score: 3, Insightful
      I am quite frightened when i see people still using MySQL ...

      Ok, it's a nice database but it lacks from major steps :

      - fast and decent transactions
      - procedures
      - triggers
      - views ... (AFAIR there is no views)

      First of all MySQL does has robust transactions. InnoDB's table type really rocks. Probably it is not very stable yet (there was found some problems with blobs some time ago) but it becomes better and better.

      As for procedures and triggers and all other simular stuff. I wonder if it is really important to have it. I've seen some projects with heavy usage of procedures, triggers and other stuff. All busness logic of applications was implemented by them. It was very unmaintanable. IMHO more powerfull approach is three-tear architecture where middle layer (outside database) implements all busness logic itself.

      IMHO procedures are often overused. Probably they are required sometimes but only sometimes. If you think you need them than rethink you design. Maybe all logic you are going to implement with them should be implemented in middle layer?

      --

      --
      Ilya Martynov (http://martynov.org/)

    3. Re:The best opensource DBMS/R is here ... by 21mhz · · Score: 4, Funny
      IMHO more powerfull approach is three-tear architecture

      Ah, these freudian slips...

      --
      My exception safety is -fno-exceptions.
    4. Re:The best opensource DBMS/R is here ... by Just+Some+Guy · · Score: 3, Interesting

      My company is currently trying to decide between MySQL and PostgreSQL, with the latter being the likely choose.

      We're currently using Interbase, and I have to say that it's the biggest pile of fetid horror I've ever had the displeasure of having to maintain. Why?

      • First off, you have to specify the exact path of the database file on the remote machine. That is, you can't connect to database FOO on host BAR - you have to connect to /var/databases/FOO.gdb. Heaven help you if you ever change your directory layout and run multiple applications against the same server.
      • The command line client, isql, is awful. It has no supports whatsoever for readline-esque features such as command history, or even deleting the previous character. Standard procedure is to type queries in a text editor and then paste them into the isql shell.
      • A nice feature we discovered: suspending the isql client with ^Z will lock the server until you foreground the client process again. We were NOT amused to discover this: "HEY! THE $#!*(@# SERVER IS FROZEN AGAIN! WTF?!?!?"
      • We've experienced several (!!!) cases of database corruption where we were completely unable to recover any data inserted into a database after that point.
      • AFAIK, no equivalent of mysqldump exists for Interbase. At least, I was unable to find one when I critically needed it (see previous point). I eventually hacked one up in Perl that works OK for our needs, but that still rather surprised me. AFAIK (yes, twice in one post! :), you can only back up the binary database to another binary file. BTW, my boss gave me permission to release my backup tool under the GPL. Email me if interested.


      The only reason that we're using the much-despised database server is that our rather largish apps are written against it, and it will take a bit of effort to change. Also, given the lack of the SQL dump utility (other than the hack job I put together), getting information from Interbase to anything else is non-trivial.

      It may be good in theory, and I'm sure that some people like it. For us, however, Interbase is completely undependable and just barely usable for routine tasks.

      --
      Dewey, what part of this looks like authorities should be involved?
  8. Re:Which front-end are you using for your MySQL-Pg by Galois · · Score: 3, Informative
    --
    - daniel
    Turn off your computer and go outside
  9. Not a troll by brunes69 · · Score: 3, Informative

    Have to say I 100% agree with this guy. PostgreSQL is light years ahread of MySQL, and is 100% open source. The GPL'ed version of MySQL isn't even free software! (The GPL version i always a subverions or two behind, I believe.) Why people continue to use it when PostgeSQL is out there defies all logic IMHO.

  10. great to see progress! by Lumpy · · Score: 4, Insightful

    This is great! When I forayed into the SQL land 3 years ago I dried postgreSQL first because it was a "pure" SQL that was a true GPL and free.. but honestly, MySQL is tons easier to set up and use and program for. So that is what I settled on, it just added a step for me, I had to show a client how to download and install it to meet the license requirement at that time.. (Shoulder driving, click there, click ok, now type rpm -i *.rpm.. cool I can take over now!) I use it extensively today, and the documentation seems to be greated for MySQL than postgreSQL. Is that a fact though? is there sources for postgreSQL for dummies? or nice comprehensive manuals? or 3rd party books?

    --
    Do not look at laser with remaining good eye.
  11. Re:More vapourware by mosch · · Score: 3, Flamebait
    A man that speaks the TRUTH! MySQL is a toy, no referential integrity, no CHECK constraints, no stored procedures. It's fast, but so is a JATO rocket attached to a bicycle. Only a fool would use MySQL for something where the data actually matters.

    For a good example of MySQL's performance under load, look at crash^Wslashdot, which probably averages two crashes a day or so, with 5 or 10 minutes down for each crash. As a man much smarter than me has said, slashdot does a wonderful job evangalizing Microsoft products.

  12. Re:More vapourware by OblongPlatypus · · Score: 5, Insightful

    What you're forgetting is that in many web-based applications, the data *doesn't matter* (not more than nightly backups will take care of, anyway). MySQL is perfect for a whole range of web-related work, and these new additions will make it even more useful.

    And in reply to the parent of the parent of this post, I really don't see how the term vaporware fits here. Sure, MySQL is a different class of database than (for example) Postgres, but that doesn't make it a useless product. Besides, at the rate MySQL is going these days, I wouldn't be surprised if they could be considered up to par with Postgres in a few years. If they can keep the speed up there while adding new features, the competition will have a hard time... well, competing.

    --
    -- If no truths are spoken then no lies can hide --
  13. Why people use MySQL by ACK!! · · Score: 5, Insightful

    It goes a little like this:

    1. Someone needs a small easy to install database quick.
    2. Sysadmin knows PostGres is superior but also knows that MySQL is dead easy to set-up quickly. He has set up MySQL before since someone told him how easy it was. He uses that.
    3. People are so impressed in the organization that he got the thing up quickly they start suggesting MySQL for larger projects where it falls flat.
    4. The organization gets turned off to Open-Source databases and chooses Oracle or DB2 instead totally bypassing PostGres which is sad.

    In the end PostGres gets completely bypassed. Lots of people cut their teeth on MySQL so when someone needs a small database set up really quick they choose it. If more people used PostGres initially I think they would never look back. However, I understand immediately why MySQL is used so often.

    --
    ACK /ak/ interj. 2. [from the comic strip "Bloom County"] An exclamation of surprised disgust, esp. i
  14. Ahhh...a MySQL post.... by bozone · · Score: 4, Funny
    1. Search Slashdot for old articles on MySQL
    2. Set filter to 3
    3. Cut'n Paste a rant about MSSQL/Oracle/DB2/PostgresQL being superior
    4. Cut'n Paste a list of features that MySQL needs to be a real RDBMS
    5. Make it known to the world that I will never use MySQL until it has the above features
    6. Watch my karma grow
    ...my work here is done...
    --
    "Hatred is the coward's revenge for being intimidated" ...George Bernard Shaw
  15. Re:Foreign keys by Nugget94M · · Score: 3, Interesting

    You're missing the point. The start of this thread was puzzlement over why, exactly, mysql is so popular in this community when more complete and more robust alternatives exist (like postgresql).

    There is no strong motivation to bring mysql's featureset up to the accepted standards for a sql server when we can all just run postgresql and have those features now, in a more mature and well-tested form.

    I'm constantly puzzled by the enthusiasm and support shown for mysql and simultaneous aversion to postgresql because both attitudes are clearly not based on technical merit. And, to make matters even more confounding, mysql's popular support and user community rallied behind it long before it was actually capital-F "Free" in the religious sense. So, we can't even settle on mysql's popularity being dogmatic which would be an understandable reason.
    I haven't seen anyone in this thread complain that mysql lacks features. I'm just seeing people wondering why we should be motivated to use a deficient product when better alternatives exist.

  16. Re:More vapourware by GooberToo · · Score: 3, Informative

    What you're forgetting is that in many web-based applications, the data *doesn't matter* (not more than nightly backups will take care of, anyway). MySQL is perfect for a whole range of web-related work, and these new additions will make it even more useful.

    Except that you are forgetting that multiple recently published scores indicate that MySQL really stinks for this type of work too unless it's ALL read only access. Once you start throwing writes into the mix, MySQL falls far behind. On top of that, MySQL also has concurrent access load issues too. This means it's not going to scale very well when lots of connections are asking for lots of differing types of data from lots of different tables. Yes, it's VERY fast for one or two people (or even a small handful) doing read only access, however, use it in an environment where there are even some writes in a highly loaded system, PstgreSQL is going to beat it, not just with a stick but a full blown Loui Slugger. Once you get into the world of having a large number of writes, MySQL becomes an utter joke as PostgreSQL has lots of optimizations to take advantage of this while MySQL just rolls into a ball and cries. Of course, I've also read lots stating the PostgreSQL's query optimizer is much more advanced, so once you start doing non-trivial queries, PostgreSQL is going to win again. This will be come significantly important once (if) MySQL starts supporting sub-queries.

    The point being, MySQL really isn't a great DB system after all. It may get there one day but the number of situations that it truely works well in and MySQL can address are actually very limited and nitche areas.

  17. Re:This is a lie. by swillden · · Score: 3, Insightful

    Nobody stores critical data in Access.

    Ahh, the naivete of the young...

    People frequently do insane things like storing business-breaking data in access. And they absolutely refuse to listen to the $200 per hour consultant that tells them they're doing a very risky thing.

    --
    Note to ACs: I usually delete AC replies without reading them. If you want to talk to me, log in.
  18. Re:PosgreSQL by Michael+Widenius · · Score: 3, Interesting

    Hi! I agree that PostgreSQL has some fetatures that MySQL also has, but it's also true that MySQL has a lot of features that PostgreSQL doesn't have.
    To not have to repeat myself over and over again, I have collected some information about this topic here

    Speedwise I haven't seen any indication that PostgreSQL 7.1 would generally be faster than MySQL. All the tests I have myself run shows that it there is no big speed improvment between earlier PostgreSQL version and 7.1, if you run both with flushing of data disabled. (We will soon publish the results on our benchmark page)

    For many applications, MySQL is in practice at least 3 times faster than PostgreSQL 7.1. If you applications needs the extra speed MySQL can give, PostgreSQL is not an option.

    According to what I know, the InnoDB transaction handling engine in MySQL is at least as good as the PostgreSQL transaction engine. (I would argue that is even better, as you never have to run a 'vacuum' on InnoDB!)

    My simple message is that both MySQL and PostgreSQL has a place. One can't generally say which is better, in the same way you can't say if a hammer or a screw driver is the right tool, if you don't know what it should be used for. For a lot of real world applications, MySQL is simple the best choice. The same is true for PostgreSQL.

    Regards, Monty
    CTO of MySQL AB

  19. You have to laugh by ErikZ · · Score: 3, Informative

    I keep on seeing the same statement, over and over, saying:

    "I don't understand why MySQL is so popular, the only thing it has going for it is tha it's easier to install!"

    Answer...staring...right...at...you.

    --
    Democrats or Republicans. They are both taking us to the same place and they are not afraid of us anymore.