Slashdot Mirror


Oracle Releases MySQL 5.5

darthcamaro writes "Two years after Sun released MySQL 5.1, Oracle has picked up the ball with the official release of MySQL 5.5. New features include semi-synchronous replication, InnoDB by default and new SIGNAL/RESIGNAL support for exception handling. Above all, Oracle stressed that they are committed to further MySQL open source development and that they see it as a complementary technology to their proprietary Oracle database."

32 of 263 comments (clear)

  1. You have nothing to fear. by tautog · · Score: 5, Insightful

    You can trust us. Honest.

    1. Re:You have nothing to fear. by erroneus · · Score: 4, Interesting

      I am simply not so optimistic. I am extremely wary of what Oracle will do. Sun was a positive. Oracle is a negative. I think by now, they are feeling the backlash of their previous missteps but that does not mean they have learned their lesson. If there's one thing I know about this type of business and that type of businessman is that once they set their mind on something, they are going to do it whether or not it is in their best interests. What they will do is back off, slow down or approach the end result from another direction. In the end, it will be the same.

      OpenOffice.org will become something we don't want. MySQL will be used as a tool until it manages to kill the competition and it will get dropped. Java is already getting screwed up and over. VirtualBox? I'm afraid to even think about it... I love VirtualBox. I used to pirate VMWare Workstation, but I simply like VB better. I don't want to switch back.

      I don't like Oracle. I never did. It will take some REALLY surprising things for Oracle to change my mind about them and I seriously doubt they are interested in what I think of them.

    2. Re:You have nothing to fear. by davecb · · Score: 4, Insightful

      MySQL is a way to take market share away from MS Sql, and Access. It will be valuable to Oracle until MS dies.

      --dave

      --
      davecb@spamcop.net
    3. Re:You have nothing to fear. by tepples · · Score: 5, Informative

      Postgres.

      Any other questions you have?

      Here's one: how to adapt LAMP applications that depend on behaviors of MySQL.

    4. Re:You have nothing to fear. by tepples · · Score: 4, Insightful

      MySQL is a way to take market share away from MS Sql, and Access.

      Microsoft Access is more than just Jet or MSDE; it is also a scriptable GUI framework for accessing databases. What is the direct counterpart of Access that uses MySQL?

    5. Re:You have nothing to fear. by Anonymous Coward · · Score: 5, Insightful

      While I don't think Oracle views Postgres as threat in any definition of the term, they could hamper OS db field very easily, actually:

      1. Over two or three years, Oracle can merge mysql into their Express edition. That'll basically require adding a mysql API onto it. They can probably do that over a few weeks, but why hurry?

      When most users can download a compatible binary from Oracle, who'll care about the genuine "mysql", really? Especially given that mysql technologies are controlled by the same Oracle.

      2. Over the same period, they can gradually kill the mysql trademark in favor of OracleSomething. Puff, mysql is gone.

      3. You'll end up with a product that is mysql compatible, has Oracle features, and is usable "for free". By virtue of being an Oracle, it will compete well against Pg as well. Unlike Pg, it will also provide smooth migration path towards the slaughterhouse with all bells and whistles.

      That may move some less ideological Pg users away, hurting Pg's acceptance and development long term.

      So, the db landscape is left without mysql, and weakened Pg.

      Not a compleat "kill", but close.

    6. Re:You have nothing to fear. by should_be_linear · · Score: 4, Funny

      Only counterpart to Access I can think of would be if Fisher-Price and BP created DB engine together.

      --
      839*929
    7. Re:You have nothing to fear. by jimicus · · Score: 5, Insightful

      What is the direct counterpart of Access that uses MySQL?

      You've had a number of replies so far. AFAICT, most have missed the point so thoroughly that they can't possibly have seen Access used in a business. So I'm going to explain Access.

      Yes, Access gives you a database engine (and not a particularly good one at that). The other thing it gives you is a GUI-driven desktop application which makes it an absolute doddle to design tables, queries, forms and reports without having to write a single line of code.

      The end result is frequently badly designed, with little or no attention paid to normalisation or data integrity, but it broadly works.

      Now, you might very well turn around and say "Tough. You'll just have to get used to writing code." - you're talking to the wrong people. The people who are using Access in businesses are the middle managers who have never in their life written code and aren't about to start now. So many businesses pushed Access to the desktop years ago when they bought Office, and have since discovered that the reason the IT department hasn't heard from lots of parts of the business is because some manager decided that rather than to-and-fro with the IT department (which would cost a lot of money out of his budget - larger businesses just love shuffling money between departments), he'd cobble together a little application in Access to run his department. It's invariably a mess, but it's a mess that's so ingrained it isn't going anywhere.

      Anyhow, these guys have no idea what SQL is and are only vaguely aware that a database stores everything in tables. You can no more ask them to do everything in PHP from now on than you can ask them to lick their own testicles.

    8. Re:You have nothing to fear. by BigDogCH · · Score: 4, Insightful

      This is exactly correct! It seems like every 3rd department has some access database that they use.....IT doesn't find out about it until someone broke it or deleted it. In the end, we ends up supporting it. Here is how it works.

      1. A single user creats a simple access database for their own use.
      2. That user shares this with their most trusted sidekick.
      3. The sidekick takes over when the original user dies from intestinal parasites.
      4. The entire department now uses this tool, and is fully reliant on it.
      5. Requests now come into IT from other departments asking for access to the tool.
      6. IT says "oh man, this sucks".

    9. Re:You have nothing to fear. by jimicus · · Score: 3, Interesting

      That's only the half of it.

      You also have the people who took one look at Access and thought "Eeks, that's scary". They decided to work in Excel instead. Since that day, they have encompassed the business logic of an entire department in a spreadsheet (and almost certainly put in so much effort to understanding Excel that it would actually have been easier to learn a proper programming language, but that's not the point. They're not a programmer and they don't want to be one!)

      Anyone who's been in IT support/management for any length of time has at least one Access/Excel related war story.

    10. Re:You have nothing to fear. by GooberToo · · Score: 3, Insightful

      Delusional much?

      While I don't think Oracle views Postgres as threat in any definition of the term, they could hamper OS db field very easily, actually:

      Wrong. Oracle is on record as stating PostgreSQL is one of their largest open source threats. PostgreSQL is one of the few open source competitors which offers comparable features, tunability, and can actually beat them in performance even up to the high end. Scalability is something PostgreSQL and Oracle share. Oracle still trumps them on the ultra high end and warehousing, but even that's eroding because of companies like EnterpriseDB (hint, its PostgreSQL).

      When most users can download a compatible binary from Oracle, who'll care about the genuine "mysql", really? Especially given that mysql technologies are controlled by the same Oracle.

      People don't care about MySQL. They care that its brain dead easy to start using and is pretty fast, especially for light loads, with hardly any tuning. Its basically the antithesis of Oracle. So suggesting that a binary compatible polar opposite of MySQL will magically grab mind share is stupidity at best.

      3. You'll end up with a product that is mysql compatible, has Oracle features, and is usable "for free". By virtue of being an Oracle, it will compete well against Pg as well. Unlike Pg, it will also provide smooth migration path towards the slaughterhouse with all bells and whistles.

      So you end up with a product that nobody wants and still can't compete with PostgreSQL.

      MySQL fills a niche which Oracle doesn't otherwise provide a solution. Slapping a binary compatibility layer on top of a product which doesn't begin to address the niche, doesn't address the niche. Anything else is simply delusion and fueling an exodus to PostgreSQL.

    11. Re:You have nothing to fear. by bored · · Score: 3, Insightful

      rather than to-and-fro with the IT department

      I've been around long enough to see this. You really have to ask what is wrong with the IT departments. If a middle manager who doesn't know anything about programming can use a tool to solve his problem in a fairly short period of time, why can't the IT department do it quicker with better maintainability using a similar tool. Personally I believe its the same mindset that results in the IT department spending two weeks fscking around with Samba patches and config files to solve some obscure problem, when a crappy windows server doesn't have the problem. Its a serious case of "we know better, this is how it should be done" and an unwillingness to admit that maybe instead of building the golden gate bridge all we need is a couple of cinder blocks in the middle of the creek. This totally applies to access, I rarely meet someone who's job is IT/Programming who would stoop to using access to solve a problem. Instead its got to be done using Java (which still doesn't have a decent RAD environment), or PHP or any one of a number of other languages which can be used to build fairly large complex systems, but fail miserably when tasked with creating a functional UI to manipulate a couple database tables, in a hour or two. It still amazes me how hard it is in many languages to just display a table to the user complete with column sorting and searching, and similar functionality to what can be achieved with Access (VB, Delphi, etc) in a manner of minutes, often without any actual programming.

      Fifteen years ago I had a job where I spent 50% of my time doing C++ for back-end processing, and 50% of my time in Access creating a UI to access/update data being handled by the back-end system. It taught me a very important lesson about picking the right tool for the job. Years later I'm still working on spit systems, only now its a PHP/Javascript/HTML front-end and C++ backend, and every day I think, this was easier 10 years ago. Back then, C++ was the heavyweight language with a lot of code to get anything done. Now the situation has reversed, and the C++ code is small and lean (100k or so), while the UI is approaching 3x that. Plus writing it with a web UI has actually made the job of concurrent access to the system harder for my particular circumstance, because the management aspect is far more complex than just selecting a couple of values and submitting a form.

    12. Re:You have nothing to fear. by raddan · · Score: 4, Interesting

      Actually, as someone who has spent the better part of the last decade writing database applications (mostly on MySQL and Postgres), I've come around to Access. Why, you might ask? Because it allows my more technical end-users to collaborate, and it allows you to build functional mockups extremely quickly.

      Anyone with experience building enterprise applications can tell you that the hard part is NOT the writing of the code. Most database-driven applications work similarly. The hard part is gathering requirements from non-technical people. What you'll find in any sizeable business is that the knowledge of the business process is distributed among many people. You have to become the expert. I like to model the activity on paper, and then interview people to walk through their jobs with them. The hardest part is trying to decide what parts of the business process are wasteful traditions, and which parts are essential. You may find many subtleties in people's work, the importance of which is not discovered until much later. Good notes are essential.

      Anyway, back to Access-- with Access, I can literally have someone sit next to me as I mockup a WORKING demo. When they see it working the way they want, and they walk out, I can rip it apart and do things the right way. On a recent project, I did this, and it finally got the software off the ground. The problem was that the requirements were changing too fast. The original developer had written something in PHP, but every time he was asked to change something, the result was weeks of agonizing bugfixes. We switched the frontend to Access, keeping the data in MySQL (we used the MySQL ODBC connector). Now that the software has matured, and the pace of changes has slowed, developers can replace Access with something like Rails. Access is a great tool if you want to rapidly beta-test your application. I've tried other rapid development frameworks (Rails, CakePHP, and .NET stuff), and they simply aren't as fast, although in the end, you should plan to switch to one of them.

      Microsoft put a lot of thought into the GUI design features of Access. I have yet to find something that works as well, or as quickly. You're right, it's not a "real" database, but it can be *attached* to a real database. Microsoft gets a lot of crap (rightly) for their software that sucks, but Access is not in that category.

  2. From the article.... by Pharmboy · · Score: 4, Insightful

    From the article: There were concerns about how the open source database would fare under Oracle's leadership, but those concerns are now being put to rest by Oracle with the release of MySQL 5.5

    Um, no, not all concerns are put to rest. This was a pretty fluffy piece of journalism, just quotes and feel good words. I'm glad that MySQL has moved up a notch, but I'm still looking really hard at PostgreSQL as a possibility in the long run.

    --
    Tequila: It's not just for breakfast anymore!
    1. Re:From the article.... by tomhudson · · Score: 3, Interesting
      As I pointed out, this is something that is so OBVIOUS in retrospect that it's a wonder other database products haven't gotten around to implementing it.

      I know it's fashionable to rag on Oracle nowadays, but we've seen this with Sun as well - where one hand doesn't know exactly what the other is doing, or parts act in conflict.

      MySQL has the features I want, including ON DUPLICATE KEY. When pgsql has it, I'll certainly look at it, but unless things change, why bother?

      -- Barbie

    2. Re:From the article.... by tomhudson · · Score: 3, Insightful

      that's because it isn't needed, the equivalent operations can be done in any SQL compliant database (or for that matter in ISAM and VSAM systems too)

      you're wanting to use a less robust dbms because of your laziness.

      Don't be silly. Sure, there are other ways to do it, but why should I when it "just works" and is easy to explain to others?

      I don't need 100% sql compliance. I need something that does certain things well. Sorry, but postgresql lags in that area.

      You can try to turn this into another vi vs emacs war, but I'm just not interested. I'll continue to use the right too for the job, based on the features *I* need, not some ideological nonsense.

      -- Barbie

    3. Re:From the article.... by tomhudson · · Score: 3, Funny

      If I absolutely needed 100% data integrity, I'd write my own server. And I certainly wouldn't use SQL.

    4. Re:From the article.... by nxtw · · Score: 5, Funny

      When's the last time you lost data with mysql that was directly attributable to the database, and not to a messed-up query or a hardware or network problem?

      On 0000-00-00 00:00:00, of course.

    5. Re:From the article.... by tomhudson · · Score: 3, Interesting

      If I absolutely needed 100% data integrity, I'd write my own server. And I certainly wouldn't use SQL.

      You think you're smarter than the people working on PostgreSQL, Oracle DB, and other databases (SQL relational or otherwise) known for their ACID properties?

      You think writing your own server will provide 100% data integrity?

      First, if I wouldn't need to implement all the features - just the ones I want, the job would be a lot simpler.

      And yes, I *have* written multi-threaded servers - in c - and they run for months at a time without losing one byte of memory, and without having to kill off threads to reclaim memory lost from leaks.

      So yes, if I had to, and someone was willing to pay for it, I could write a server to do a specific job, which is not the same as writing a general-purpose rdbms.

      But that's neither here nor there - mysql is good enough for many tasks, so I use it.

    6. Re:From the article.... by Bacon+Bits · · Score: 3, Interesting

      The ANSI SQL standard way to do this is to create "INSTEAD OF" triggers, which means you're permanently modifying how INSERT works on a given table. ON DUPLICATE KEY means the behavior of the DB ("On INSERT do I error or UPDATE?") is dictated by the query and not the DB schema. That's sloppy. If Bob writes an application that uses the same database as Alice, now he has to use ON DUPLICATE KEY in order to ensure consistent behavior. That's awful.

      --
      The road to tyranny has always been paved with claims of necessity.
    7. Re:From the article.... by Anonymous Coward · · Score: 5, Funny

      Hey, I've written multithreaded servers that have run for months without leaking as well. That's got fuck-all to do with data integrity as a general concept, but I was hoping we could jerk each other off for a little while since you seem to be in a self-congratulatory mood.

    8. Re:From the article.... by Sxooter · · Score: 4, Interesting

      No, the ANSI SQL way to do this is to use MERGE. Unfortunately, pgsql doesn't support that yet. It's on the todo list so I'm sure if someone got out their checkbook and wrote the pg developers a check we'd see it soon enough.

      --

      --- It is not the things we do which we regret the most, but the things which we don't do.
    9. Re:From the article.... by shish · · Score: 3, Informative

      When's the last time you lost data with mysql that was directly attributable to the database

      A couple of years ago (the last time I used mysql), I was running it on a tiny VM, where I found it hit the memory and disk limits quite frequently -- and in each case, the server would crash and leave corrupt tables which required 20-30 mins of fixing. Running postgres in the same situation, out of memory causes a single worker process to die (but you can then reconnect, it's not the whole server that's down), out of disk causes "error, out of disk space" (and you can still make read-only queries).

      Also, running a pretty high load website (>1000 queries/sec) on not-that-great hardware, it seems mysql would randomly drop table indexes when it couldn't keep up with inserts, thus bringing the whole site grinding to a halt. Since switching that site to postgres, it's been a lot more reliable (it's also been faster, since postgres' indexes are better, and it runs straightforward queries better, where I was always contorting queries to avoid mysql performace gotchas, but those aren't really data loss)

      --
      I mod down anyone who says "I will be modded down for this", regardless of the rest of their comment
  3. Yeah right. by Arancaytar · · Score: 4, Funny

    Oracle is absolutely and steadfastly committed to Open Source, as seen from their admirable interaction with the OpenOffice.org and Java communities.

  4. Why not Firebird? by spynode · · Score: 4, Insightful

    Nobody seems to mention Firebird which is supposedly on hell of a RDBMS. I wonder why it is so unpopular while it offers so much.

    1. Re:Why not Firebird? by Bacon+Bits · · Score: 4, Interesting

      Pretty easy really.

      1) It was originally an embedded or server-less DBMS. That instantly makes devs think "Oh Lord, it's Access!"
      2) It had a large number of security problems at one point (pre v2 era) in the past that went un-addressed for entirely too long.
      3) It uses Interbase Public License (a modified Mozilla Public License) that is not compatible with the GPL... that's really, really bad for an Open Source embedded-style DB.

      It's gotten leaps and bounds better since early versions, but it's never really beaten the early reputation, IMO.

      --
      The road to tyranny has always been paved with claims of necessity.
  5. Re:The thing is, Oracle still owns it. by gman003 · · Score: 4

    MySQL is still just as good as it was under Sun. If you don't like whatever changes Oracle makes, fork it. Make your own. Call it LibreSQL if you wish. Until I hear of Oracle actually doing something bad to MySQL, I'm going to keep using it.

  6. Re:The thing is, Oracle still owns it. by h4rr4r · · Score: 4, Insightful

    I would suggest planning ahead, based on their track record it sure seems like you might one day need to go some place else.

  7. Re:Possible to emulate via temporary tables by nxtw · · Score: 3, Insightful

    Yes, Oracle has done some stupid things. If you have forgotten, so had Sun. It's amazing how selective our memories have become - Sun is now seen as a candidate for canonization. Sheesh!

    The comment you replied to criticized MySQL purely on technical grounds, not because they were owned by Oracle... Indeed, the technical complaints made against MySQL mostly do not apply to Oracle DB.

  8. Windows kernel-mode code signing by tepples · · Score: 5, Informative

    VirtualBox? I'm afraid to even think about it... I love VirtualBox.

    At ever step of the way it still be open source. If you don't like what they're doing and want to change it, make a fork.

    Some virtualization features, such as USB forwarding, require kernel-mode device drivers. On 64-bit Windows Vista and 64-bit Windows 7 operating systems, all kernel-mode device drivers must be digitally signed with a timestamp from a commmercial certificate authority recognized by Microsoft. If you add your own self-signed CA, you get the always-on-top notice "Test Mode" in all four corners of the screen. Unless you are forking on behalf of an established organization that already has a kernel-mode code signing certificate, the advantage of the official version over your fork is that the end user doesn't have to throw his computer into "Test Mode". The only way out that I can see is to run GNU/Linux on the bare hardware, and that brings hardware compatibility issues that I don't feel like bringing up yet again.

  9. Re:Its a trap by Bill,+Shooter+of+Bul · · Score: 3, Insightful

    Its GPL. You can't link to one of its libraries and satisfy the GPL without releasing your source code. If you do release your code under the GPL,then you may charge what ever fee you would like without Oracle's interference.

    Now, if you don't link against it any other GPL'd code and just provide a standard way of connecting to a database like ODBC and have the configuration as part of the program's setup, you're in the clear.

    --
    Well.. maybe. Or Maybe not. But Definitely not sort of.
  10. Re:The thing is, Oracle still owns it. by icebraining · · Score: 3, Informative

    They are getting rid of GNU autotools, because autotools is a mess of applications being layered on top of each other through the years. CMake accomplishes the same stuff, including most parameters you need, in a much cleaner way.

    If you want to change the prefix, you just need to override CMAKE_INSTALL_PREFIX with "cmake -DCMAKE_INSTALL_PREFIX=/new/path ."