Slashdot Mirror


MySQL A Threat To The Big Database Vendors?

geekinexile writes: "Bloomberg is running a story on the growth of MySQL as an alternative to the big commercial database systems." The story mentions PostgreSQL as well, and presents a generally positive view of both.

194 of 469 comments (clear)

  1. LAMP by EricBoyd · · Score: 2, Redundant

    Linux + Apache + MySQL + PHP

    It's the ultimate Free Software combo... and it powers StumbleUpon just fine, thank you!

    --
    augment your senses: http://sensebridge.net/
    1. Re:LAMP by defile · · Score: 2

      P less commonly means Perl and Python.

      And L can sometimes mean FreeBSD.

      But otherwise, Sun has J2EE, Microsoft has .NET, we've got LAMP.

    2. Re:LAMP by gimpboy · · Score: 2

      yeah i prefer LAPP

      linux, apache, postgresql, and perl :)

      but that's just me..

      --
      -- john
  2. right. by r00tarded · · Score: 2

    sourceforge just bailed on opensource databases and ill bet ya all bloomberg's money that story came out of an oracle or sql server db.
    mysql/postgres have their place, but oracle is not running scared just yet.

    1. Re:right. by foonf · · Score: 2

      Apache superceded another open-source program, NCSA httpd, which was the first serious http server (it began as a patch against the ncsa daemon, hence "a patchy" webserver). Paraphrasing your comment, you could say that the subsequent growth of commercial web servers like IIS, Zeus and Sun iPlanet make Oracle and MS SQL server look more promising.

      --

      "(Man) tries to live his own life as if he were telling a story. But you have to choose: live or tell." --Sartre
  3. Why don't they use dBase IV... by Anonymous Coward · · Score: 2, Insightful

    PostgreSQL is a serious competitor, but MySQL is not. Everytime someone slobbers off about how MySQL is the greatest thing since sliced bread, what they really are doing is yelling "I AM IGNORANT! I AM A FOLLOWER!". I'm not kidding. The basic database functionality missing from MySQL (though always "coming soon") absolutely KILL it in any credible comparison.

    This is a dumb article, because what they're really saying is "These morons could have gotten by with Windows 95 and the ODBC dBase IV driver as their, err, relational database driver, so they used that instead of Oracle".

    1. Re:Why don't they use dBase IV... by shoppa · · Score: 2
      This is a dumb article, because what they're really saying is "These morons could have gotten by with Windows 95 and the ODBC dBase IV driver as their, err, relational database driver, so they used that instead of Oracle".

      Most applications don't need relational abilities at all. Simple key-value databases like BerkeleyDB meet the needs of probably 99% of applications.

    2. Re:Why don't they use dBase IV... by letxa2000 · · Score: 4, Insightful
      Everytime someone slobbers off about how MySQL is the greatest thing since sliced bread, what they really are doing is yelling "I AM IGNORANT! I AM A FOLLOWER!". I'm not kidding.

      You might not be kidding, but you also don't know what you're talking about.

      MySQL is the greatest thing since sliced bread for those that find that it DOES THE JOB. MySQL has done everything I need it to for my applications and does it fast. I run several websites using MySQL and it works great. I wouldn't even THINK of using SQL Server, Oracle, or any commercial software instead. In fact, the MyPhpAdmin intetrace is much BETTER than what I had to deal with when I worked with SQL Server 6.5--the last version of SQL Server I've had the misfortune to use.

      Many of the features that make the big commercial databases are bloat for many of us. I prefer not to use stored procedures--keep the data in the database and the program in the program. I don't like triggers, especially during the development process. I'd rather have a subroutine that does everything that needs to be done rather than rely on a database (and tie myself to it) to trigger certain actions. I'm not fond of database-enforced relationship constraints. I'd rather my code insert the right data than have the databse reject a transaction with an error because something went wrong.

      Sure, if you are Citibank and have a dozen offices around the country that all write their own scripts that modify the same data underneath then you might need stored procedures, triggers, and constraints to make sure no-one messes up the data. But for 95% of the database applications, stored procedures, triggers, and even constraints are bloat. If I can SELECT, INSERT, DELETE, and UPDATE, MySQL serves my needs.

      You also seem to be missing the point. The U.S. Government is already using MySQL successfully. It has never crashed (in the case cited by the article). Yahoo is already using it and is thinking about migrating the rest of the site to it. Last I checked, Yahoo is one of the highest-traffic site on the web. I don't think they'd make a decision like this without some real investigation. If MySQL is good enough to even be considered by Yahoo, it's definitely good enough for 99.9% of the websites out there--despite your well-informed, expert opinion. I personally believe Yahoo's decision has a little more weight than soem rant by an anonymous coward on Slashdot.

      Oracle and SQL Server might have their place on 0.1% of the databse applications out there. But, believe me, they aren't going to be able to run a profitable business on that 0.1% of the database market. And the rest of the market CAN consider MySQL. Or, in the case of your relgion, PostgreSQL.

    3. Re:Why don't they use dBase IV... by bungo · · Score: 2

      MySQL is the greatest thing since sliced bread for those that find that it DOES THE JOB. MySQL has done everything I need it to for my applications and does it fast

      And perl too is fantastic, and I probably couldn't live without php, but what you're missing is that the one thing that MySQL, perl, php all have in common is that they are NOT enterprise level database management systems.

      Look, I'm not trying to flame you, and if you really want to understand more, then I'll be willing to answer your questions. It does appear that you're exactly like the person in the parent post to which you are replying.

      for 95% of the database applications, stored procedures, triggers, and even constraints are bloat. If I can SELECT, INSERT, DELETE, and UPDATE, MySQL serves my needs.

      to even be considered by Yahoo, it's definitely good enough for 99.9% of the websites out there--despite your well-informed, expert opinion


      I think I see the problem. You see, the majority of databases have existed before the web came to be. It may well be true that for web-based databases that MySQL if perfect, but it is not any good for critical data storage, which most web sites do not need.

      All of the things you think are bloat are realy needed to keep enterprise-level system running.

      Let me give you an idea of how it is used. Sitting just above me is a group of 200 programmers, they have been working one a single application for over 3 years. This also happens to have a web-interface for some elements, but mainly does batch processing on big IBM iron on DB2 databases. Now, with 200 programmers, there are quite a few different teams, and there is not a single person who knows exactly what everything does. The only way to maintain integrity of the system is to enforce some rules inside the database itself, so everytime an update or request for data is performed, certain checks are made. For exmaple, a person entering data using a web-based screen does not need to enter all of the same data and something coming in via a batch process, but the system has to make sure that the data from both sources are compatiable. This is where primary/foreign key constraints and thing like database triggers can be used. You make sure that all of the required data exists, and maybe perform some updates to automatically create something which is needed. Now, remember, the team developing the web interface probably don't even know who the people creating the batch processing interface even are.

      Oracle and SQL Server might have their place on 0.1% of the databse applications

      Do you really think that companies which need even 50 programmers for a project are going to be bothered about the cost of Oracle? People are far more expensive that the cost of the Oracle licenses.

      If you're interested, I can tell you more, but I hope you get the idea.

      cheers,

      --
      "The best part? I became an ordained minister while not wearing pants." -- CleverNickName
  4. GPL of MySQL 4 is big obstacle for non-OSS dev by News+for+nerds · · Score: 5, Insightful

    1.4.3.1 Using the MySQL Software Under a Commercial License
    (snip)
    When you link a program with code from the MySQL software or from GPL
    released clients and don't want the resulting product to be GPL, maybe because
    you want to build a commercial product or keep the added non-GPL code closed
    source for other reasons. When purchasing commercial licenses, you are not
    using the MySQL software under GPL even though it's the same code.

    -----

    This means you can't use libmysql in your closed source code.

    1. Re:GPL of MySQL 4 is big obstacle for non-OSS dev by coene · · Score: 2

      To clarify, this is talking about using MySQL as a part of your program. If I make an executable, which links against MySQL's libraries (using MySQL4's new ability to become an "embedded" component in another executable), my program now must be GPL, that is unless I pay MySQL (company) to give me a different license.

  5. Not yet. by MissMyNewton · · Score: 3, Insightful

    If you have a need for the scalability, reliability, high-availability in Oracle (or similar), then MySQL isn't even a consideration.

    Maybe someday. But not today.

    --

    ---

    Information wants...you to shut your pie hole.

    1. Re:Not yet. by curunir · · Score: 5, Insightful

      The irony here is that your very post is being stored in a MySQL database on a site that is pretty famous for its high-availability/reliability. /. has about a half million user accounts and is known for overwhelming other sites by simply linking to them. It seems to be working pretty well on this site.

      You might have had a point if you'd mentioned that Oracle was more flexible than MySQL. MySQL doesn't have all the features that Oracle has. But if MySQL has the features that are needed for a given project/implementation, then it is a valid option.

      --
      "Don't blame me, I voted for Kodos!"
  6. hasn't crashed yet by Alien54 · · Score: 3, Interesting
    The U.S. Census Bureau opted for MySQL two years ago to run its MapStats Web site, which allows people to look up data such as population, income and crime rates for different states and counties. Instead of spending $80,000 on database software and support, the agency used MySQL for free, said Rachael LaPorte Taylor, a computer engineer at the Census Bureau.

    ``We've spoken with other agencies about our open-source projects,'' she said. ``People first get interested after hearing about the budget savings.''

    MapStats hasn't crashed since it was created, she said.

    not bad for a low end peace of fluff.

    --
    "It is a greater offense to steal men's labor, than their clothes"
    1. Re:hasn't crashed yet by TheTomcat · · Score: 3, Insightful

      Mind you, feeding a bunch of data into a read only system to be queried in a high deterministic way is hardly a real demanding task for a database system

      Maybe it's not "demanding" from a RDBMS point of view, but that's what almost all sites do -- read data from a database, and MySQL fits this niche perfectly.

      S

    2. Re:hasn't crashed yet by miratrix · · Score: 4, Insightful

      You have to remember that this is the kind of thing that MySQL is designed for. Lots and lots of SELECTs, almost no INSERT or UPDATEs.

    3. Re:hasn't crashed yet by Malcontent · · Score: 2

      What the hell is INN?

      --

      War is necrophilia.

    4. Re:hasn't crashed yet by FattMattP · · Score: 2
      You have to remember that this is the kind of thing that MySQL is designed for. Lots and lots of SELECTs, almost no INSERT or UPDATEs.
      Isn't that what LDAP is for? Databases that are ready often but seldom written to?
      --
      Prevent email address forgery. Publish SPF records for y
  7. Tomorrow's top story on MSNBC by inkswamp · · Score: 2, Flamebait

    "MySQL: The Communist Threat."

    --
    --Rick "If it isn't broken, take it apart and find out why."
    1. Re:Tomorrow's top story on MSNBC by bankman · · Score: 2, Funny

      Come on, get out of the fifties and sixties: They are called terrorists now.

      --
      I feel so sig.
  8. Still couple of years away... by miratrix · · Score: 2, Insightful

    As the report says, it will take couple of more years before the database vendors will be fearful of MySQL or PostgreSQL.

    MySQL, in particular, is missing quite a bit of essential functionality like views and stored procedures that - this is the key - makes it more difficult for other applications to use it as one of the data sources. A lot of enterprise products supports one or more of these expensive databases, and unless those enterprise software are changed to use PostgreSQL or MySQL as the database for it, the big db companies will still have years of guaranteed revenue.

    They may be able to take away some of the lower end market, but until the time when likes of SAP and OpenText supports MySQL and PostgreSQL as well as Oracle and DB2, I don't think the db companies will seriously be challenged.

    1. Re:Still couple of years away... by Jack9 · · Score: 2, Insightful

      Stored procedures and views have been added to databases and marketed as part of them but are not really functions of a pure database. IMHO, views and stored procedures amount to short scripts, and were added to companies making databases at the right time (pre-boom) to make a new class of database that was term'd Enterprise but realy just meant hybrid DB engines with scripting support. MySQL does lack features that any database should have but citing stored procedures and views is a smack in the face of databases in general. If you are going to be worried about making sure everyone uses terms correctly (hacker/cracker/whatever) at least have a concensus on what an ideal database is before we can adequately compare the utility of MySQL versus Oracle (as an example).

      --

      Often wrong but never in doubt.
      I am Jack9.
      Everyone knows me.
    2. Re:Still couple of years away... by ergo98 · · Score: 4, Interesting

      IMHO, views and stored procedures amount to short scripts, and were added to companies making databases at the right time (pre-boom) to make a new class of database that was term'd Enterprise but realy just meant hybrid DB engines with scripting support.


      Well, we are talking about relational database management systems, not a "database file". An RDBMS is the middleware between you and the database file, and facilitates crazy, insane features like concurrency control, transactional control, and most importantly security. Both views and stored procedures are very important facets of security in any modern RDBMS as they allow you to hide the internals of your database, and to only provide applications the ability to have certain constrained "I/O windows" into your database (hell, my normal design norm is to only allow interactions with stored procs, which themselves only operate through constrained views). There is nothing gimmicky about these features, and they are crucial for an "enterprise" system.

    3. Re:Still couple of years away... by johnnyb · · Score: 3, Interesting

      I don't see why more people don't list SAP-DB with MySQL and PostgreSQL. It _is_ GPL, as well, it supports the SAP applications. It's a pretty good DB system. It's strange that it doesn't get the coverage it deservers.

    4. Re:Still couple of years away... by ergo98 · · Score: 2, Insightful

      Security and stored procedures should never be used in the same sentence, especially when used in web based applications

      I could not disagree with this more.

      If anyone gets into hat DB even as a user, they can toast your DB by running your SP's.

      Yet, ironically, most "component middleware" security advocates have to basically completely open up their database, and then they implement hacked in security systems in the middleware. Of course this means that the database, by design, is completely open to every developer (which is a huge no-no in real team development), and is open for giant faults when each individual developer misinterprets, or creates an adhoc SQL string appended user supplied criteria, etc.

      For example in PHP you can check both the referring URL and the script name and a global var in the calling script before allowing any DB access to occur. That gives you three additional layers of security above that of the DB and webserver security

      Sure, that's fine and dandy, and of course because that's the domain of that area, then it makes sense (just as it makes sense for a firewall to be responsible for barring non-HTTP). However, having said that, the only security that should be in a component is ancillary security: Any well designed database should be entirely accessible to the end user without them being able to do ANYTHING they can't do via the web interface anyways.

    5. Re:Still couple of years away... by Tony-A · · Score: 3, Insightful

      Methinks you're onto something with the idea of circular dependence. Views can ameliorate the effects of bad database design. Whether or not this is a good idea depends. Hiding implementation details can be good, but. Hiding soil conditions from architects does not make for good skyscrapers. IMNSHO MySQL does an excellent job of picking the right point of abstracting. Solving business logic within the database seems like it could get counterproductive in a hurry.

  9. Still Some Roads to Conquer by Scotch+Game · · Score: 5, Insightful

    I love MySQL, love the speed, the accessibility, the ease of deployment and its suitability for small and medium-sized projects. I'm an advocate.

    But -- it can be a tough sell to the big fish.

    I was hired by a Fortune 500 financial services and real estate company to do an internal project that really was not challenging development. Essentially, the requirements boiled down to a very hobbled version of Slashcode. I bid the project at X dollars, spec-ing PHP and MySQL, figuring that I was going a bit high for the actual hours involved and that I would make a nice roll of dough if they accepted. But I still knew that given the sheer size of the company, that my bid would be considered a bargain, if not a lowball.

    What threw it? MySQL and PHP. What are they? (WHAT ARE THEY?!?!?!) Well, we're going to have to get through Standards and Compliance, issue an exception, and well, we'll see, we just don't know. Okay, said I, I'll do it for four times the cost and implement it entirely from scratch using ASP and SQL Server.

    Great! Sold. Damn. And you have to understand I really TRIED. I wrote two papers, directed them to a bunch of links ... Nope. ASP and SQL Server. I cried my way to the bank.

    I believe inroads will continue to be made for open source. I have faith. But I think there's still some time and a lot of tireless advocacy to come ...

    1. Re:Still Some Roads to Conquer by decefett · · Score: 2

      If transactions are all that's holding you back you really need to checkout PostgreSQL.

      Nowhere near as many fanboys as MySQL but it has transactions and a whole lot more.

      --
      Australian? Join EFA
    2. Re:Still Some Roads to Conquer by Malcontent · · Score: 2

      Yes but apache, php, mysql all run on windows too. That's the cool thing about using open source they try real hard not to lock you into an operating system. Choose an MS solution and you are stuck with MS and windows.

      --

      War is necrophilia.

    3. Re:Still Some Roads to Conquer by loz · · Score: 2, Insightful
      which was a wise decision by that company. I hope you learned to LISTEN en be EMPATHETIC to your customer. you should've known upfront they would never go for the PHP and MySQL solution.


      had they gone with your solution they'd most probably have to permanently hire one person to support the MySQL database, and maybe permanently hire one person to support the PHP stuff.


      and that's probably ten times the cost than the cost they've now made.



      loz

    4. Re:Still Some Roads to Conquer by Chanc_Gorkon · · Score: 2

      Yes..and their ports are bad. Wait wait before you flame me, hear me out. I have an app that can run on windows and UNIX (AIX in particular, but it can run on any UNIX). It started on UNIX. I run the main server now on UNIX and I access it via a GUI client. That GUI client is a bitch and a half if you don't have any experience with it. It does not act like any windows app I have ever used. Why? It started on UNIX. They pretty much chose their own way of having it act (since there's not much in standards with GUI on UNIX...unless you count CDE). The way they chose is so not Windows like it's hard to believe your running it on Windows. This is the main problem with saying that you can run some of this stuff like windows. Sure, some folks like Mozilla get it right (Windows install package, nothing too strange in interface). Some are weird. Some, like the cygwin tools you just decompress into a folder. If it's one like cygwin, you can just delete the folder. Others dump crap all over the place. My point, if your doing a port, there is nothing wrong making some things the same. But for gods sake make the thing act like a Windows app.

      Personally, I realize Open Source is not a panacea. Someone has to support it after you take your money and run. If it's not well documented, and well known stuff(by more then open source folks), then it's not going to happen. That company is going to have to hire a consultant to fix things if they need to add things to it and there are more people who know Oracle, SQL and DB2 then MySQL. PLus it's not always about how the app acts either. Backing things up is important. If there's no database module for TSM, or whatever other backup stuff you use, well, it can be difficult. That's why this guys client did not choose that solution. Not that they possibly did not know about it, it maybe that they don't trust it yet. Trust is a good thing, even if it sound illogical to you, the geek.

      --

      Gorkman

    5. Re:Still Some Roads to Conquer by samael · · Score: 3, Insightful

      And choose PHP+MySQL, and who is going to look after it when you go?

      If I already have 5 SQL databases, I can deal with it with one admin. Add a MySQL database and a PostgreSQL database and an Oralce database and suddenly you need a specialist in each one.

    6. Re:Still Some Roads to Conquer by joshv · · Score: 2

      What threw it? MySQL and PHP. What are they? (WHAT ARE THEY?!?!?!) Well, we're going to have to get through Standards and Compliance, issue an exception, and well, we'll see, we just don't know. Okay, said I, I'll do it for four times the cost and implement it entirely from scratch using ASP and SQL Server.

      Why the hell would using MySQL and ASP cost you anything more? Typically most large corporations have site licenses for the Microsoft products already, so using ASP/SQL server is not going to cost you anything extra. And ASP/SQL Server are not more complex to use than PHP/MySQL - especially for a simple site, the amount of development work involved should be roughly equivalent.

      -josh

    7. Re:Still Some Roads to Conquer by thing12 · · Score: 2
      Why the hell would using MySQL (you meant SQL Server right?) and ASP cost you anything more?

      It's likely that he would have save huge amounts of time by using the immense open source codebase available for a MySQL/PHP solution. If all he wants is a hobbled version of Slashcode, then he would only have had to take PHPNuke and strip it down.

      SQL Server/ASP would mean writing everything from scratch, like he said. So it's probably not the cost of the tools -- just the time to implement.

    8. Re:Still Some Roads to Conquer by Tablizer · · Score: 2

      This is kinda the same mentality that alot of the newsmagazine style shows promote. Journalist: "So, can you explain to me why the hammers used on board the new navy ships cost on average $1500 a piece?" Response: "Well, you see we had to invent it, from scratch, to float in the case of flood, not to make a metallic sound when pounding a nail, to be extremely strong. and also to double as other tools in a pinch.. it took years and lots of hardwo..." Journalist: "But, it looks just like a hammer I can buy for $15 at the local store! You are wasting tax money, arent you? Who stole the money, where is it??"

      Everytime I hear this story it changes. It used to be that the hammers could be ran over by a tank without bending and could survive explosions.

    9. Re:Still Some Roads to Conquer by samael · · Score: 2

      Oh, I'm sure that some skills are transferrable from SQL Server admin to MySQL admin, but it's still a lot easier to manage 5 servers of one kind than it is to manage 2 servers of different kind.

    10. Re:Still Some Roads to Conquer by Malcontent · · Score: 3, Interesting

      " Yes..and their ports are bad. "

      Pure unadultrated bullshit. Maybe next time you won't have to rely on lying to make a point. The ports of apache, php and mysql on windows are fantastic.

      "If it's not well documented, and well known stuff(by more then open source folks), then it's not going to happen."

      The apache, php, and mysql documentation is top notch. What do you find so objectionable about them? The php documentation is particularly awsome. As for well known let me present you with a few facts.

      PHP is more popular then ASP. More people know php then ASP. It is also easier to learn then VB.

      Apache is more popular then IIS. More people know apache then IIS.

      Mysql is one of the most widely used databases in the world. The primary reason for that is the ease of use and maintenance. More people know mysql administration then MS sql or oracle. On top of that any DBA worth two cents can pick up mysql in a day.

      "That company is going to have to hire a consultant to fix things if they need to add things to it "

      I suppose when things break in oracle or ms sql the programs automatically fix themselves.

      " Backing things up is important."

      Both mysql and postgres offer live backup and replication.

      --

      War is necrophilia.

    11. Re:Still Some Roads to Conquer by Chanc_Gorkon · · Score: 2

      Pure unadultrated bullshit. Maybe next time you won't have to rely on lying to make a point. The ports of apache, php and mysql on windows are fantastic.

      Fantastic to who? A Windows guy is not going to think Apache is fantastic. Are there Windows dialogs to configure things? Is it a Windows application? Does it follow Windows standards of interface? I didn't think so. Interface IS important. Maybe this is why MySQL isn't as popular for database(for things other then a website)? Also, PHP more popular then ASP? Possibly. But name anyone who makes money running a huge website (Slashdot excluded, they don't make money) with MySQL. There may be some, but anyone who is doing serious business isn't going to be using MySQL. Fantastic is such a subjective word. Let's just say they are good.

      The apache, php, and mysql documentation is top notch. What do you find so objectionable about them? The php documentation is particularly awsome. As for well known let me present you with a few facts.

      Again, top notch as to who?? If someone trying to learn Apache, MySQL and PHP are trying to learn it using just the documentation, well, good luck. I could understand it, but I have been doing it for a while. If it was so good, well, how come there are a ton of books on those subjects? I know, there are alot of books on Oracle too. Well, that's because ever Oracle docment I have ever read has sucked.

      HOW MANY websites use PHP? HOW MANY WEBSITES use MySQL? Also websites are a small part of everything there is to do in a company. You aren't going to install a new database just to run a website when you already have one.

      I suppose when things break in oracle or ms sql the programs automatically fix themselves.

      No they don't. But there ARE alot of people who know Oracle. Probably more then know MySQL. I am sorry, but Oracle has been around a while....a lot longer then 1995! I like open source, but only cuz I am a cheap bastard. If I can afford the best tools, THATS WHAT I USE! The best tool for the best job. Sure....we may not need all of the features of Oracle. Someday we will.

      The big thing that I feel is hurting Open Source more than anything is that people ASSUME that the reader of the documentation already has either used it or something similar. This isn't always true. Good documentation should make it not near as necessary to go buy a book first. Look I am not saying write documentation that idiots can understand, but at least make them understandable to mear mortals. Don't you remember what it was first like for you to learn these things? I guess you were just born self knowledgeable in everything dealing with computers. If Open Source wants to succed, they should concentrate on creating users from people who have never learned Windows. It's harder to change people then to teach them about it from the start.

      --

      Gorkman

    12. Re:Still Some Roads to Conquer by Electrum · · Score: 3, Insightful

      Maybe this is why MySQL isn't as popular for database(for things other then a website)?

      If you are a real DBA, then having to use a SQL console or command line tools to administrate a database shouldn't be a problem. If you need to point and click to make a backup or create tables because SQL is too hard, then there is no way you can be a DBA. Besides, there is a good web based GUI, phpMyAdmin, that lets you do most things without knowing everything about SQL. There are also GUI interfaces to MySQL.

      Also, PHP more popular then ASP? Possibly. But name anyone who makes money running a huge website (Slashdot excluded, they don't make money) with MySQL. There may be some, but anyone who is doing serious business isn't going to be using MySQL.

      That's complete FUD. Say, do you work for Microsoft or Oracle? I can say first hand that directNIC.com uses MySQL for everything. They are a very popular domain registrar (sold over half a million domains) and are certainly making money. Many other companies use MySQL and not just for running websites. You should rethink your myths.

      Fantastic is such a subjective word. Let's just say they are good.

      Apache is obviously not fantastic (see my previous posts for why I think that), but it works well for many people. PHP is a good and I personally really enjoy using it, but I certainly wouldn't call it fantastic, mainly due to its quirks and because the developers refuse to fix certain bugs. MySQL is fantastic. It is easy to use and does what it is designed to do very well.
    13. Re:Still Some Roads to Conquer by Malcontent · · Score: 2

      "A Windows guy is not going to think Apache is fantastic"

      It's true that most windows users are idiots. Windows is written for idiots and appeals to idiots. Most people who run web sites however are smarter then your average windows idiot luser. For them it's just as easy to open up a text file and type something. That goes double for developing a database backed web site using a programming language.

      "But name anyone who makes money running a huge website (Slashdot excluded, they don't make money) with MySQL. There may be some, but anyone who is doing serious business isn't going to be using MySQL."

      This is where you could not be more wrong. There are a ton of web sites running php and mysql but most of the time it's impossible to tell which database is being used behind the php web site. Just last week I ordered something from insight.com (a massive php site) and while I was looking for IDS systems I noticed that the people who make realsecure are running php. COnsidering that insight makes a ton of money and that realsecure costs over $90,000.00 They are probably making some money too.

      "If someone trying to learn Apache, MySQL and PHP are trying to learn it using just the documentation, well, good luck. I could understand it, but I have been doing it for a while. If it was so good, well, how come there are a ton of books on those subjects?"

      If you can not learn how to use php from their documentation then you are simply too stupid to live. It's clearly written, it is generously annotated and explained and contains lots of examples. Same with apache and mysql. As for the books you are grasping at straws there I am afraid. Go to Barnes and noble and count the number of books on VB or C# or ASP and compare that number with books on php.

      "No they don't. But there ARE alot of people who know Oracle. Probably more then know MySQL."

      THis is also a big fat lie. The reason Oracle DBAs cost a lot of money is because they are rare and oracle is extrememly difficult to install, configure and run. I bet the ratio of people who can install, configure and run mysql to oracle DBAs is at least ten to one. I can go download a windows installer for mysql and download mysql front and be up and running in an hour. Do that with oracle!

      --

      War is necrophilia.

    14. Re:Still Some Roads to Conquer by sql*kitten · · Score: 2

      It's true that most windows users are idiots. Windows is written for idiots and appeals to idiots. Most people who run web sites however are smarter then your average windows idiot luser.

      Ah, you are making the classical geek mistake of assuming that people who don't share your particular narrow technical specialty are idiots.

      Let me give you an example. You ever watch TV? Are you an idiot because you don't know at least one of: UHF electronics, electricity generation, orbital mechanics, injection moulding, copper mining or driving a forklift truck in a warehouse? Because all of those skills are needed before you can watch TV.

      No, I'd say it is far more idiotic to adopt a Linux-uber-alles attitude and not consider that there are many, many things that modern Windows does very well indeed.

      The reason Oracle DBAs cost a lot of money is because they are rare and oracle is extrememly difficult to install, configure and run.

      The reason we are expensive is because we can do things that MySQL admins can't even imagine.

    15. Re:Still Some Roads to Conquer by samael · · Score: 2

      Oh, absolutely. I'm not saying "Standardise on the big boys", I'm just saying that standardising has definite advantages.

    16. Re:Still Some Roads to Conquer by babbage · · Score: 2
      But name anyone who makes money running a huge website (Slashdot excluded, they don't make money) with MySQL

      At Boston.com, MySQL and other open source technologies are used extensively, both for our live site and for back end infrastructure. I, for one, am not worried about the company going out of business any time soon. In addition, we run third party software, both open source & proprietary, that is able to effectively use MySQL as a storage mechanism (in addition to Oracle, which we'd rather not shell out that much money for thankyouverymuch). And in the future we'll be making use of Zope -- open source, Python based content management software -- for much or all public web content.

      I mean, you're kinda right to point out that a lot of people like pointy clicky Windows-ness in their software, and that's fine. But there are other ways to go about this, and those other ways can be *much* cheaper and *much* more trustworthy, if not being beholden to vendor control of buggy source code is an issue to you (and it should be). Even paying support contracts to some of the organizations supporting open source software you can still come out way ahead in your business expenses, *and* you have more control over what the software is doing, which itself is priceless.

      You aren't going to install a new database just to run a website when you already have one.

      Well that depends, doesn't it? What if the security risk of exposing your corporate database is a higher cost than you'd rather bear? Wouldn't it make more sense to have a deployment tier of cheap, expendable LAMP [ Linux / Apache / Mysql/PostgreSQL / Perl/Python/PHP ] servers sitting between your safe little intranet and the big, scary world out there? What if your big expensive mainframe database systems were set up a decade or more before it occurred to anyone that this stuff ought to be globally accessible over thw web? Again, wouldn't it be easier & safer to put up a cheap proxy tier that is designed to work well over the web rather than screwing around with the old internal system?

      Again, I don't want to seem like I'm just trying to shoot down your argument. Your concerns are valid -- open source is not a panacea. But at the same time, it can play a very effective role, either as part of the overall picture [putting LAMP machines in front of the big Oracle / mainframe] or, if you're brave enough, as the whole of the overall picture. Such a decision isn't necessarily corporate suicide. If you've got the expertise -- and hey, any interested college or high school kid can start playing around with the professional quality open source stuff for free if they want to, so the pool of experience developers is big & growing fast -- then licensing costs and often-dangerous code obscurity falls out of the picture. It's doubleplus good :)

    17. Re:Still Some Roads to Conquer by Malcontent · · Score: 2

      "Ah, you are making the classical geek mistake of assuming that people who don't share your particular narrow technical specialty are idiots. "

      No I am making the assumption that people who can not open up a text file and edit it are idiots. I'd say that was a reasonable assumption. Windows is written for idiots and ms is proud of that. Idiots love windows.

      "The reason we are expensive is because we can do things that MySQL admins can't even imagine."

      I just want you to go ahead and lie for real instead of playing these stupid word games. Please say the following sentence.

      "there are more people who can install, configure, and maintain oracle then there are people who can install, configure, and maintain mysql"

      That was your original point and I want you to repeat it so I can call you a liar again.

      --

      War is necrophilia.

    18. Re:Still Some Roads to Conquer by sql*kitten · · Score: 2

      No I am making the assumption that people who can not open up a text file and edit it are idiots. I'd say that was a reasonable assumption

      Doctor: anyone who can't set a broken bone is an idiot!
      Mechanic: anyone who can't replace their own gearbox is an idiot!
      Musician: anyone who can't play the violin is an idiot!

      See where I'm going with this? Geeks simply happen to have a few technical skills, that's all. Guess what, so do a lot of other people. Plenty of very, very smart people can't do so-called simple things on their computers, because to the vast majority of the population, computers are just a tool.

      Perfect examples of this are found in the engineering fields. People who can use very sophisticated design software might not know how to, say, create a new user, something that a sysadmin would take for granted. But, see, in an engineering company, sysadmins are a cost center and engineers actually generate revenue. In almost any company in fact, sysadmins simply look after the technology so the real workers can get their jobs done. Remember that.

      That was your original point and I want you to repeat it so I can call you a liar again.

      There are more people who can ride a pushbike than can fly an F22. What's your point?

    19. Re:Still Some Roads to Conquer by Malcontent · · Score: 2

      "Doctor: anyone who can't set a broken bone is an idiot!"

      I would hardly call opening up a text file and editing it a skill that compares to setting a bone. If you want to run a web site I would think that at some time you might have to open up a file with an editor and make some changes to it. In fact the file you would be working on might look somewhat like th apache configuration file.

      So I'll stick with my original point. Anybody who can not open up a text file and make some changes to it is an idiot of the highest degree. This goes double for people running web sites.

      "There are more people who can ride a pushbike than can fly an F22. What's your point?"

      My point is that you are liar. You were lying when you said there are more people who know oracle then mysql. In fact you to emphasize the point that you are a liar you have rephrased my own post when I was talking about how insanely complex oracle was to setup, install and run. Thanks.

      --

      War is necrophilia.

    20. Re:Still Some Roads to Conquer by sql*kitten · · Score: 2

      My point is that you are liar. You were lying when you said there are more people who know oracle then mysql.

      I didn't say it; Chanc_Gorkon did. Go back and read the original parent.

  10. Really Good Advertising by cperciva · · Score: 2

    A few months ago, ESR gave a talk at the local computing department and told us that Big Unix died because it was closed source. When asked how he explained Microsoft's 20 years of success, he replied "Really good advertising?".

    The same explains why MySQL is popular -- if you have good enough advertising, it doesn't matter what sort of crap you put out or how many better alternatives there are.

    1. Re:Really Good Advertising by TheAncientHacker · · Score: 3, Insightful

      Which says a lot more about ESR than it does about Big Unix, Linux or Microsoft...

  11. MySQL A threat, hah, tell me another one... by essdodson · · Score: 2, Informative
    MySQL might become a threat when it
    1. Supports subselects
    2. Supports views
    3. Supports triggers
    4. Supports stored procs
    5. Does most the things that everyone takes for granted with a decent db server


    Now I know everyone's going to jump down my throat with "Hey, that's going to be in 4.x.y" blah blah... these things have been in use since the stone ages, too little too late and the support still isn't on par with Sybase, MsSQL, Oracle, etc..
    --
    scott
    1. Re:MySQL A threat, hah, tell me another one... by Verizon+Guy · · Score: 3, Funny

      Now I know everyone's going to jump down my throat with "Hey, that's going to be in 4.x.y" blah blah... these things have been in use since the stone ages, too little too late and the support still isn't on par with Sybase, MsSQL, Oracle, etc..
      --scott


      Hey scott, is your last name "tiger"? :-)

      --

      Aw, fuck it. Let's go bowling. - The Big Lebowski

    2. Re: MySQL A threat, hah, tell me another one... by fireproof · · Score: 2, Interesting

      Transactions would also be nice . . . and I've seen very few people mention them.

      I've done a number of smaller projects on MySQL w/ Perl or PHP, and MySQL is perfect for those projects. But, my last project was a rather complex db-driven site, and the client wanted to use MySQL and PHP (partially because their previous contractor had begun to build the site on that platform and they didn't want to completely ditch what they had before), and by the time I got done I was wishing for transactions (and views, triggers, and stored procedures).

      And I'm with you on the "gonne ba in 4.whatever" thing . . . it's nice that they are in the works, but until they show up in a production version, they're useless to me.

      --

      /* "A fool does not delight in understanding, but only in revealing his own mind." */

    3. Re:MySQL A threat, hah, tell me another one... by germania · · Score: 5, Informative

      well, maybe not MySql, but PostgreSql do


      • Supports subselects
      • Supports views
      • Supports triggers
      • Supports stored procs
      and does most the things that everyone takes for granted with a decent db server, because PostgreSql is a decent db server.
    4. Re:MySQL A threat, hah, tell me another one... by Ian+Bicking · · Score: 2
      This database pretentiousness is kind of tiring. Whenever anyone brings up MySQL in any way, someone goes, "without subselects it's not even worthy of the term RDBMS" or somesuch.

      Well, sorry, but it is worthy. It's not a "full" database like you'd like for your work, but it's more than enough for a huge number of problems. It's too bad it doesn't work for you, or it doesn't work for one particular domain of problems you deal with. Just because it doesn't work for you doesn't mean it doesn't work well for lots of other people. There are a ton of small database projects (often websites) where MySQL not only is sufficient, but is superior to Oracle. And websites aren't the only potential domain -- Oracle, for instance, would be absurd to embed in an application (and there are a ton of crappy applications based around MS's JET database engine, and MySQL kicks JET's ass).

      And yes, MySQL is a competitor. It's not a drop-in replacement for every Oracle installation, but there's a lot of new projects where MySQL is used where Oracle or another database may have been necessary otherwise. It's a pretty decent structured store for read-only data.

      This is quite common when people suggest some free software may be a threat to some proprietary software, and then twenty people say, "X won't be a real competitor to Office (or Solaris, or Photoshop, etc) until it has feature Y", where Y is whatever feature they use. As though the world (or, rather, the marketplace) revolves solely around them, or as if the free software developers have a duty to seek that person's approval.

    5. Re:MySQL A threat, hah, tell me another one... by kpharmer · · Score: 2, Informative

      Wrong on two accounts:

      1. It isn't just subselects - the list of *basic* stuff includes views, stored procedures, foreign keys, etc, etc. Note that we're not even getting close to the advanced features like parallelism, bitmap indexes, solid replication, etc, etc.

      2. Product & tool selection is driven by a variety of factors - including internal consistency, vendor relationships, staff skill sets, etc. So, while it is true that there are projects simple enough for MySQL (especially embedded databases) - it is also true that most *custom* database applications deserve something better than what we were doing twenty years ago. And at the point in which you have Oracle, MySQL, and then need to install Postgresql - you will be regretting the time to learn a slightly different product, obstacles to reuse, and administrative complexity of having MySQL in the mix.

      And lastly - the simplicity of MySQL is largely an illusion - since without transactions, subselects, views, etc you've simply moved the complexity from the database to the application layer. And while sometimes that is fine, the typical result is that simple tasks that could be done in a few lines of code or a few minutes in SQL instead take hours and hundreds of lines of application code.

    6. Re:MySQL A threat, hah, tell me another one... by hpavc · · Score: 2, Funny

      I just cannot get enough of this simplicity:

      "MySQL Server does parse the FOREIGN KEY syntax in CREATE TABLE commands, but without further action being taken." (taken from
      http://www.mysql.com/doc/en/ANSI_diff_Foreign_Ke ys .html )

      --
      members are seeing something, your seeing an ad
    7. Re:MySQL A threat, hah, tell me another one... by Ian+Bicking · · Score: 2
      What definition of RDBMS are you using? I couldn't find my text book from my college days, and unfortunately I don't know an authoritative definition nor an authoritative location of CS definitions... this was the best I found. If you have a better definition, please post it.

      This definition mentions such concepts as tables, relations between those columns, joins, etc. RDBMS is not an elitist term, as far as I can see -- it's a description of a class of databases. Other kinds of database exist: bdb (file-based hash), ZODB (an object store), hierarchical databases, and others. MySQL isn't one of those -- it is a relational database. It has tables, it has joins (even if integrity isn't ensured), it has a query language (that is not imperative)... it isn't a terribly featureful example, it does not pass the ACID test, but it is a relational database. A lot of the features given aren't even part of the original concept of an RDBMS (stored procedures in particular).

      If MySQL is not relational, then what is it?

    8. Re:MySQL A threat, hah, tell me another one... by Ian+Bicking · · Score: 2
      And lastly - the simplicity of MySQL is largely an illusion - since without transactions, subselects, views, etc you've simply moved the complexity from the database to the application layer.
      A large part of the simplicity of MySQL is not in its implementation but its administration. That's why something like Firebird (AKA InterBase) is not that popular, even though it's a full RDBMS. I feel like the mature development of packaging is not a well-appreciated part of open source projects. MySQL is easy to install, easy to set up, easy to back up, etc. -- and this isn't because it's less featureful, but because it hasn't been managed by professional database managers through its development life.

      MS SQL is probably about as easy to set up as MySQL -- MS deserves credit for packaging software for the masses -- but few other commercial offerings seem to come close. In an environment where professionals are born of amateurs (as opposed to specialized training), these shrink-wrapped databases will have a strong advantage. I don't think it's certain that this environment will come to pass (far from certain, really) -- but if it does, then Oracle does have something to worry about. Because then it's not just if MySQL is good enough now, but if it gets better fast enough to grow with the skills and responsibilities of those who have started out with it (again, it hasn't kept up so far, but when it does it will be before it actually matches Oracle feature-for-feature).

    9. Re:MySQL A threat, hah, tell me another one... by Malcontent · · Score: 2

      In fact postgres has many features commercial databases don't have like an awsome rule subsystem and user definable types, operators and aggregate functions. In fact it has so many extremely neat features it's an ideal database geek toy. I prefer it vastly to MS sql server.

      --

      War is necrophilia.

    10. Re:MySQL A threat, hah, tell me another one... by angel'o'sphere · · Score: 2

      As long as you have either static data with not much updates or you vacuum the data base regulary.

      PostgreSql is NOT a decent DB server. Its a decent SQL database for playing around, fast enough, mature enough in features but not in reliability and scaleability.

      angel'o'sphere

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
    11. Re:MySQL A threat, hah, tell me another one... by bwt · · Score: 2

      No, that's obviously his cat's name.

  12. fast, but what about transactions? by tstoneman · · Score: 2, Interesting

    We tested porting our company's software to Linux and MySQL.... we kept the Linux port but we couldn't use MySQL because our application does a lot of reading and writing, and from what I understand vanilla MySQL does not support transactions but instead locks the entire table. I think there are some mods to MySQL that support transactions but without it fully supporting transactions I just don't think that major companies will ever move to it. It is perfect for Web sites where the ratio between reading and writing is heavily skewed towards reading, but for applications that need to do both, I don't think MySQL is an option... yet. Some people in the company, however, swear by MySQL and say it is heads-and-tails faster than all the "enterprise" dbs like Oracle. Certainly it is not a resource hog like Oracle.

  13. risk of "feature beast" by Tablizer · · Score: 2

    I personally would like to see 3 kinds of database engines that allow one to scale the gammut with little or no application rewrites along the way to fit the different syntax and conventions.

    1. Small, lite-duty engine mostly for embedded or small-footprint apps. Subset of lanugage of #2.

    2. Full language, but lacking performance tuning. Mostly for development and smaller shops.

    3. "Big-iron" version that has full language and performance tuning features.

    I realize that one can use Postgre if they out-grow mySQL, but it is a different language and conventions. You have to rewrite some of your application software.

    I am afraid that as mySQL becomes more popular, it will become a "feature beast". I would rather see a split between #2 and #3 rather then live with a feature beast.

    1. Re:risk of "feature beast" by sql*kitten · · Score: 2

      1. Small, lite-duty engine mostly for embedded or small-footprint apps. Subset of lanugage of #2.

      Oracle Lite.

      2. Full language, but lacking performance tuning. Mostly for development and smaller shops.

      Oracle Workgroup Edition.

      3. "Big-iron" version that has full language and performance tuning features.

      Oracle Enterprise Edition.

  14. dirty secret of big databases by g4dget · · Score: 5, Insightful

    The dirty secret of big databases is that most people don't know how to program them, how to configure them, and don't need most of the features. And even if they get everything right, they still end up with a very costly and complex solution, a solution that likely doesn't perform very well and needs a special DBA to keep it all running. That's why MySQL is successful.

    1. Re:dirty secret of big databases by Tablizer · · Score: 2

      However, our management says that we MUST use Oracle. Why? Because they have their heads up their butts? (We would like to think that, wouldn't we?) No. Because our customers (we process medical claims) won't do business with us unless we can say we have a top-of-the-line, secure system.

      Just stick an "Oracle Inside" sticker on the box and use mySQL. My Corolla had a BMW emblem on it and I still got laid. Then again, their parts were phony also.

    2. Re:dirty secret of big databases by MattRog · · Score: 2

      Sybase IQ and ASE have all those features as well (if you're again looking for Oracle features at a MUCH LESS cost).

      Sybase IQ recently employed the largest data warehouse on record of something like 75TB of data and peformed faster than Oracle with 1TB.

      --

      Thanks,
      --
      Matt
    3. Re:dirty secret of big databases by nzkoz · · Score: 2

      IQ's a datawarehousing solution. If you suggest they use it for OLTP I will come to your house and hurt you :).

      IQ is hideously inefficient for INSERT UPDATE and transactions. However it's so damned fast for SELECTS that warehousing projects (such as all the ones I'm on) can't live without it.

      --
      Cheers Koz
    4. Re:dirty secret of big databases by Tablizer · · Score: 2

      Naw, actually they knew it was a joke. They told me after showing me their fake t*ts.

    5. Re:dirty secret of big databases by hey! · · Score: 2
      Because our customers (we process medical claims) won't do business with us unless we can say we have a top-of-the-line, secure system.


      Sounds like you have smart customers.


      Seriously, though, this is just like the whining that Linux cost more to operate because you have to hire clue-ful admins.


      If you have truly enterprise critical systems, Oracle is a great choice, provided you invest what it takes in getting a frist class dba. Postgres may or may not be there; it wasn't when I last evaluated it about two or three years ago, but I've heard they've made great progress since then. I applaud them, but I still wouldn't go with pgsql until it had a track record of several years and demonstrated scalability and reliabilty.


      But -- you're entirely right that if you just throw the more or less default install on and don't even have a dba (much less a competent one), then it doesn't much matter what you install.

      --
      Post may contain irony: discontinue use if experiencing mood swings, nausea or elevated blood pressure.
  15. In other news: Vi still no threat to MS Word by wirefarm · · Score: 4, Insightful

    They are two different products with two different uses.
    MySql came along and took away the appeal of using text files as data stores for web applications and such - it gave perl scripters a simple, easy-to-understand database that works pretty darn well.

    MySQL is a great product, but only for the things it does well. If you try to make it do things that it can't, of course you're gonna get burned.
    If you actually *like* databases, you'll probably like PostGres better anyway - don't bother with MySql.

    MySql has found its niche. Linux, Apache, Perl/PHP and MySQL are powering thousands of websites right now. I have a few myself and they work well - There is absolutely no need for me to change the database - it just works.

    I wouldn't want American Express to start using it today though - they actually *need* the features that Oracle offers.

    Not all databases need the kind of bomb-proofing that you can do with Oracle - some applications just need to be able to pull data quickly from simple tables.

    The thing that I don't understand though, is why MySql has so much more popular appeal than PostGres - It seemed that one day, everybody just seemed to be using it. Why was that?

    Cheers,
    Jim

    --
    -- My Weblog.
    1. Re:In other news: Vi still no threat to MS Word by gmack · · Score: 2

      The answer is simple: I'ts pure raw speed for simple tasks. I doubt most websites even need anything more complicated that what it does.

    2. Re:In other news: Vi still no threat to MS Word by wirefarm · · Score: 2

      We're both using it as a database. Right now, in fact...
      Everyone reading Slashdot is. A half-million users and I don't see it failing.

      As I said before, why use a truck when a bicycle will do the job?

      --
      -- My Weblog.
    3. Re:In other news: Vi still no threat to MS Word by ajs · · Score: 5, Interesting

      Back in the day (about 2-3 years ago) MySQL was a bit of a pain to configure correctly under Linux and a bit moreso under other UNIXen. PostgreSQL was insane. I tried to get it to work on my box, and I'm a C programmer with many years of experience in understanding other people's code and installation systems.

      I finally gave up. I got it installed and mostly working, but I just had better things to do and I wasn't at all happy with the number of hand-tweeks that were required. I slapped MySQL in place and never turned back.

      I think a lot of folks were in the same boat, but had even less patience for PostgreSQL's difficult installation.

      Now, I understand the two are about the same, and both are available with the major Linux distributions. However, now PostgreSQL has to work its way out of the hole its in. Admins like me will be loath to give up the DB we know best in favor of one that burned us, even if it was long ago.

    4. Re:In other news: Vi still no threat to MS Word by wirefarm · · Score: 2

      Some things about MySQL are inconvenient, like lack of multi-table updates or sub-selects. But, every time I've ever done a database app, it's always been three tiered, so I just work around these limitations in the middle tier.

      That's a good way to go about it - I would guess that it will help if you go to change databases at some point - you get wider compatability.

      Same thing for people who basically recreate triggers and stored procs as PHP functions - they can re-use them with most any database, even if the new database supports those features.

      Maybe in a few years there will be a shift away from including a lot of features in the db engine and towards small size and speed. I'm not holding my breath though...

      Cheers,
      Jim

      --
      -- My Weblog.
    5. Re:In other news: Vi still no threat to MS Word by SmittyTheBold · · Score: 2

      That's a generic fallback - and exactly what you should see with the way /. operates. Any time a dynamic page can't be generated, for whatever reason, you get the static page.

      Granted, maybe it could work a bit differently, produce an error, and be a bit more user-friendly. But then think to yourself, "what target market does /. cater to?" They cater to geeks, the kind of people that say "screw user-friendliness, give me features!" The static front page is invariably more useful than an error page would be, so that's what you get when there's a problem.

      --
      ± 29 dB
    6. Re:In other news: Vi still no threat to MS Word by Chanc_Gorkon · · Score: 2

      Well, you'd be wrong there. Say your a big company and you want to web enable your stuff. It would just be easier to use Oracle or whatever is used since you have people that know it and it can easily interface with the DB's that your general ledger stuff is on. Remember, those web sales have to have entry's made into the companies ledger or you don't get credit for them as a company. Retraining for MySQL or some other solution is a bitch. Ask the programmers I work with who are switching to Oracle from Datacom (I know what the hell is that! :) ).

      --

      Gorkman

    7. Re:In other news: Vi still no threat to MS Word by gimpboy · · Score: 2

      back in 1998 i had just started grad school. i was looking for a hobby and decided that it would be fun to tinker with database driven web sites.

      so i started looking around. i read about different programming languages and about rdbm's. not being too concerned with running applications in the console i decided to go with php (php didnt run in the console at the time) and mysql-on linux with apache of course. why? everything i ready said the combination was great. then i stumbled on a posting comparing postgresql to mysql.

      the post basically said the same thing people are saying today. mysql lacks x, y, and z. postgresql has these things even though it might be a little slower. at the time i didnt understand what all of those features were, but i did understand a few of them. one of interest was transactions. i could see a definate use for them so i decided to go with postgresql. i've since switched to perl for cpan, and i havent been happier.

      so what was this ramble all about? had mysql installed and was ready to go within about a day. i was ready to go with it when i read about postgres. it took me about 2 or 3 days to get postgres up and running. this is significant because i'm a chemical engineer. at the time i had only taken one class in computer programming - we used fortran.

      i just dont see how hard this could be for someone who has been doing unix programming for many years. granted i dont know about your situation, and it may be that you were trying to get it working on an old irix box. if this or something similar is the case, i dont think you should really complain about postgres given the conditions.

      --
      -- john
    8. Re:In other news: Vi still no threat to MS Word by gmack · · Score: 2

      Unlike Oracle Mysql is easy to use and admin. It also costs a fraction of the cost and for the diffrence in just yearly fees on a single server your now half way to the cost of a DBA just for MYSQL! Lets also not forget the rather extreme diffrence in CPU and RAM comsumption.

      For some tasks Oracle is simply the only option for the rest of them I prefer using something smaller.

  16. Re:challenge? by gmack · · Score: 3, Insightful

    Yahoo is using it for exactly what it's good at: Running websites. Why does it worry you they run their fintantial site? I cam't imagine why that needs something high end. Data comes in one way and gets read many times and that's the sort of use MySQL's raw speed will blow both postgres and oarcle away at.

    If it was on something that needed replication, or writes were the common case I could see a problem. But I doubt either is true in this case. Instead it looks like it's being used for an application tht it will handle well.

    Yahoo is only being smart; the high end databases
    comsume a lot of resources and shouldn't be used where they aren't needed. It would be foolish to run the entire company on a single vendor's software.

  17. To be fair... by Pseudonym · · Score: 5, Insightful

    ...most people don't need Oracle.

    Oracle has been used for a lot of projects where it doesn't really need to be used, usually because the company already had a licence, but sometimes because the project was way over-spec'd.

    Don't get me wrong, MySQL doesn't even come close to challenging the benefits of Oracle or DB2 in replication, scalability and so on. However, in applications where you don't need them, MySQL is perfect, especially because it requires no monetary investment. (It requires other kinds of investment, of course, but everything does.)


    --
    sub f{($f)=@_;print"$f(q{$f});";}f(q{sub f{($f)=@_;print"$f(q{$f});";}f});
    1. Re:To be fair... by Chanc_Gorkon · · Score: 2

      True enough! Plus it's well known how to get stuff out of Oracle too. Oracle also has a nice forms editor for producing letters, reports and whatnot. MySQL you have to figure out a way to do it since there's not built in or addon that comes from them. Sure there are some apps there, but Oracle has the entire widget. Sure, you may not need all of the features of it, but how many offices need the all of the features of MsOffice? You see? :)

      --

      Gorkman

    2. Re:To be fair... by sql*kitten · · Score: 2

      Oracle has been used for a lot of projects where it doesn't really need to be used, usually because the company already had a licence, but sometimes because the project was way over-spec'd

      When you've got a bit more experience you'll realize that software is often extended well beyond its original spec, and it pays to make sure that you aren't locked into a limited technology that will require starting again from scratch if you need more. That's why people start on Oracle before they need all its features.

    3. Re:To be fair... by Pseudonym · · Score: 2

      Software is often extended beyond its original spec, this is true. In this era we have some quite large systems. However, this is also the era of small throwaway code. I've worked on all sizes of application, large, medium and small. In my experience, large applications are extended but for small applications, it's often cheaper to throw them away and rewrite them (cutting and pasting from the old system as required).

      Here's an example: I used to work for a group which did drug trials. The software to collate the results of a study often wouldn't last beyond the life of the study, except in "cut and paste" form, because the requirements were so different. These sorts of projects involved a lot of data which needed to be accessed and reported on quickly, but even so, they never needed the full power of an Oracle or DB2. The data was only used on one site, and if we ever were to lose a disk it would still be cheaper to restore from backup and re-enter the lost day's worth than to buy an Oracle licence. If they did find they ever needed a high-end DBMS, it won't cost very much at all to migrate.

      BTW, the number one reason why databases like Oracle are used on small applications is and probably will always be that there is already an Oracle licence and a bunch of DBAs in house, and it's less expensive in terms of resources to get them do it than to get something new. I don't have an argument with this, since despite the usual hammer/nail metaphor, the most appropriate tool is often the one that you already know and have.


      --
      sub f{($f)=@_;print"$f(q{$f});";}f(q{sub f{($f)=@_;print"$f(q{$f});";}f});
  18. Postgres already replacing Ora*le by famazza · · Score: 5, Interesting

    I work for Conectiva (Brazil), involved in a project where a minor telecom company is replacing most of their Ora*le databases to PostgreSQL. Mostly due to cost reduction (should be for a more noble cause, but...)

    Note, this is the first step of a big project involving migration to free plataforms everywhere it is possible inside the company.

    IMHO it's a good idea, but they must keep in mind that there already are some limitations that I'm sure it'll be solved ASAP. Of course that a little of investment in the FreeSoftware/OpenSource comunity will help a lot too, but this is subject for another project ;o)

    --

    -=-=-=-=
    I know life isn't fair, but why can't it ever be un-fair in MY favor!?
    1. Re:Postgres already replacing Ora*le by tlk+nnr · · Score: 2

      What about the forgotton opensource database?
      Have you considered SapDB?
      They claim that they have an Oracle 7 compatible mode.
      If yes, why have you choosen PostgreSQL?

    2. Re:Postgres already replacing Ora*le by zmooc · · Score: 2

      Don't consider SapDB. Worst documentation ever, all the tools crash and a week ago some db we had just disappeared. We've been using it on production servers for 2 major applications for about a year now and I really would't make the sapdb-choice ever again. O and the source is totally unreadable..

      --
      0x or or snor perron?!
    3. Re:Postgres already replacing Ora*le by ortholattice · · Score: 2
      Why are you putting a * in Oracle? It's supposed to be a C.

      Because he would get his pants sued off if he compared Oracle to another product, in violation of the EULA.

    4. Re:Postgres already replacing Ora*le by famazza · · Score: 2

      I'm not sure exactly why Postgres was chosen, I have arrived the process a month ago, after it has already started, but I can guess.

      Postgres has lately shown the largest and most active FreeSoftware/OpenSource database project. This is good because garantee us code support for a longer time.

      We also have excelent technitians involved in the project from dbExperts, with big know-how in Postgres, since they are the ones who ported Postgres to Windows plataform (see them here.

      Another point is the project projection among the FreeSoftware/OpenSource community, which give us a large amount of information about the software and bigger and better diversity of support software.

      All this added to the technical features, and the compatibility with Ora*le (not saying that Postgres is 100% compatible with Ora*le) probably made Postgres the best choice. (remember, I arrived the process only a month ago)

      --

      -=-=-=-=
      I know life isn't fair, but why can't it ever be un-fair in MY favor!?
  19. Sure, in the low end by drinkypoo · · Score: 2, Insightful
    mysql is really chewing up the low end of the area where you need an RDBMS. Most things can still be done with flat files or berkeley db or what have you, you don't actually need an RDBMS, nor does it buy you much. When you start storing a lot of data, it starts to become a good idea, although hierarchical directories make even most uses today unnecessary.

    The best part is that mysql is integrated well with other free technologies like php and perl, which have been gaining a lot of acceptance. So when you turn to an open-source web solution you're freed from the need (hey, that-- oh you know) to run expensive oracle or sybase (or DB2, I guess I should be fair) RDBMSes. This is especially easy because websites tend to be redundant these days, so they're pretty robust by default.

    Anyway, the plan is to add stored procedures and triggers in mysql 5.0. It already does replication, which one expects to improve. It's one-way now. Once these things happen, mysql will just need to undergo some serious testing and possibly some serious bugfixing to ensure stability even under really terrible conditions, and maybe provide a better management GUI, and bango! The big guys will be running scared. At that point, mysql will be able to take over all but the largest installations.

    So go mysql! We're counting on you. Oracle costs too much.

    --
    "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
  20. Criticize MySQL and get modded down by kpharmer · · Score: 5, Insightful

    It's sad how all criticisms of MySQL on slashdot are consistently modded down. Although MySQL is a fine product with a lot going for it - there is plenty to be *legitimately* critical about.

    Is it that the MySQL supporters on slashdot are only familar with application programming interfaces to relational databases - and so don't understand the differences between a modern relational database and MySQL? Or are they simply pushing the product that they are most familiar with?

    I've been involved in purchases of millions of dollars in relational database software over the last sixteen years; been a DBA on Oracle, Informix, and DB2; and developed on those as well as Sybase, SQL Server, Adabas (SAP-DB), Dbase IV, and Access. And I can say that there are plenty of traditional IT applications that I would try Postgresql out on - just about everything in the OLTP arena that doesn't require massive scalability. And unfortunately, there are far fewer traditional IT database applications that I would recommend MySQL for - it simply lacks too many features that are already available in postgresql, and that in the RealWorld(tm) save your bacon.

    Ok, you can mod me down now.

    1. Re:Criticize MySQL and get modded down by neuroticia · · Score: 3, Interesting

      Most of the criticisms of MySQL that get modded down are modded down for a reason. Either they re-state something said half a dozen times before, or they take on a vehement bashing attitude.

      When I bash Apple (and I love to bash Apple) I get modded down accordingly. When I say that I have legitimate complaints about Apple, I don't get modded down. If you say something like "MySQL lacks certain functionalities such as a, b, c, and d and for certain uses of databases such as scenario X, it just doesn't cut the cake. In comparision, Database Y really does the job well" You're not gonna get modded down. You'll probably get modded up as informative, and inspire some interesting conversations about "Well, yes. MySQL doesn't do that, you're right. But I don't see how the scenario you described requires that functionality".

      If something's informative and deserves modding up, it gets modded up. If something bashes a program with little more than "It's evil because I say it's evil" or "It doesn't have half a bazillion functionalities" and then just assume those functionalities are completely wide-spread knowledge (in which case you're being terribly redundant...) then it's really not worth slugging through, and should be modded down accordingly.

      -Sara

    2. Re:Criticize MySQL and get modded down by mgv · · Score: 3, Insightful

      If something's informative and deserves modding up, it gets modded up

      Yes, it usually does. However, uninformative M$ bashing often gets modded up on slashdot too. (Not to say that the multitude of M$ problems shouldn't be mentioned, just that ignorant slanging doesn't add to the cause much at all)

      Well, yes. MySQL doesn't do that, you're right

      Yes, MySQL has problems. The biggest issue is often scalability - just because it will work fine on a small project doesn't mean that its going to scale to the enterprise level. A similar comment could be made of the M$ Access & the Jet DB - perfectly fine for a single user app, doesn't scale well at all.

      In fact, while I think that MS Access provides a nice RAD environment for (very) small projects, I have no doubt that the future for MySQL and PostgreSQL is much brighter because of their open source nature. There are no artificial constraints on their functionality, in stark contrast to M$, who want you to upgrade to (& pay for) SQL Server as soon as possible. So I can see both MySQL and PostgreSQL improving over time much faster than M$, who want to tie improvements in functionality with a similarly improving revenue model.

      Of course, when it comes to databases, really there is no competition bewteen Oracle and PostgreSQL. If you want the most frequently used small database program in the world, look no further than Microsoft Excel. :-)

      (Technically I think that last paragraph is a high level troll - but I'm sure alot of DB people would see the humour)

      Michael

      --
      There is no cryptographic solution to the problem where the intended receiver and the attacker are the same entity.
    3. Re:Criticize MySQL and get modded down by IIRCAFAIKIANAL · · Score: 2

      Goddamn Excel -
      We had a financial controller at my workplace that must have loved Excel - he basically built a financial reporting tool using it. Around 40+ spreadsheets (not counting there are actually twelve of some of those) - all interdependant, all hardcoded, all undocumented... guess who has to help sort out this mess and turn it into a proper ORACLE based reporting system.

      Ugh, at least I have job security :)

      (That last line should get me modded down, let alone I am OT)

      --
      Robots are everywhere, and they eat old people's medicine for fuel.
    4. Re:Criticize MySQL and get modded down by Eric+Damron · · Score: 2

      "It's sad how all criticisms of MySQL on slashdot are consistently modded down."

      Some moron modded my post down (and I posted without my extra +1) as "overrated." I'm not sure why. Could have been the fact that I mentioned that although MySQL is a very good choice as long as you don't need advanced abilities and Postgres is a good choice if you do.

      Or maybe he/she didn't like the fact that I mentioned that MySQL has a Windows version which would allow a person to program using a RAD tool like Borland's Kylix and port to Windows using Delphi.

      There was nothing bad about MySQL in my post, just the facts.

      Maybe he/she is just a jerk.

      --
      The race isn't always to the swift... but that's the way to bet!
  21. Re:challenge? by Tablizer · · Score: 3, Insightful

    (* Having said that, I think that is absolutely ludicrous. PostgreSQL is a serious database system, but, regardless of future potential, mySQL is not. Reading about it running the Yahoo Financial site says more about the quality of the Yahoo Financial site than it does about the quality to the mySQL DBMS. *)

    You don't even know what their requirements are! Don't bash something until you see the requirements and environment it will be in. mySQL tends to favor read-intensive activities but is a little weak on write-intensive and transaction stuff.

    Perhaps their needs are mostly reading. Maybe some other system dumps the data into mySQL once every midnight, and people query on it all day with little writing.

    The point is that you are prematurely dismissing something without looking into specifics.

    It is rarely X is always bad and Y is always good. Things have various strong points and weakpoints.

    You are acting like a PHB.

  22. Pick A DB That Suits Your Needs by Not+The+Real+Me · · Score: 5, Insightful

    You need to pick a database that suits your needs. For some people MySQL is all that they will ever need. For others, referential integrity, transactions, stored procedures and triggers are a requirement not an option.

    I've seen instances where an app was done in Oracle when it should've been done in something like FoxPro v2.6 for DOS, and I've seen apps done in M$ Access97 that should've been done in PostGres/Oracle/Sybase/SQL Server.

    Each has its place and should be chosen to fit a business model. Picking a database just because it has the most features is not always the correct solution. Picking a database because it has the least initial cost is also not always the correct solution.

  23. The DBASE III of its time? by Greyfox · · Score: 4, Insightful

    Sure, MySQL is simple. Sure it doesn't do everything Oracle can do. But there are a huge number of small businesses, Churches, scools, etc which don't have huge budgets, have to work with a very limited IT department (In some cases volunteer labor) and need some sort of database capability. Used to be DBase III (And I've seen some HUGE apps implemented in DBASE.) MySQL provides the right combination of features, stability and price to compete really well in that arena.

    --

    I'm trying to teach myself to set people on fire with my mind... Is it hot in here?

  24. Next in Slashdot by Lord+Sauron · · Score: 2, Funny

    Next in Slashdot:

    Linux: A Threat To The Big Operating Systems Vendors ?

    and

    Apache: A Threat to Commercial HTTP servers ?

  25. Not for a while. by Twillerror · · Score: 4, Insightful

    I wish TPC www.tpc.org would do some MySQL tests and show just how it really perfoms when compared, to DB2, Oracle, and MS SQL Server.

    Why can we not put an end to this debate. I wish slashdot would just refuse to repost this crap that people keep saying to see their words be pubilshed.

    It is simple, MySQL is a simple db system well suited to web-sites and application where it doesn't really fucking matter. Suppose if slashdot lost a couple of days worth of stories. Is the world going to end, NO, people will be, well whatever that feeling is when you loose data, but life will go on.

    If I lost 5 minutes worth of production data, I'd probably have to find another job. People would not get their orders, we might loose a client. If I worked for the NASDAQ, it might mean real $ figures.

    People who work in these high stress database positions understand the debate, and probably won't even post anything beause they are tired of it. I know I am. Learn Oracle, or SQL Server and MySQL postgres and then post your ideas, just don't learn MySQL.

    Now that is not to say there is no hope for open systems, I sure hope there is because Oracle is expensive, and I hate most big companies. There is a large list of things that Postgres and MySQL have to do. Here are the big ones.

    Log based transactions.
    Whenever something happens to the data, the change is stored in another file, along with the data file. This way transactions can be rolled back or restored from transaction log backups without a need to restore the whole database. Get a copy of the datbase backup from a certain time and restore every transaction log backup after that and your back to your last transaction log backup. It also helps to replicate a database, and makes true "live" backups possible while a system is live without a huge performance impact, because the transaction log is also backed up, but at the last second, so when you restore the db, you also restore that log backup that was made at the last second while the database was locked.

    One data file for multiple tables.
    Having a seperate file for each table is like using dbase or paradox. Hell even Access has one file folks. It is needed for mysql and postgres to manage their own "file system within a file".
    I think Postgres is going to do this soon according to some of the discussions.

    Complete SQL-92 support.
    for all the bitching we do about not supporting standards, MySQL seems to think it is all right to say, "oh they'll make it slower". Give me a break.

    Locking, Locking, Locking.
    This is imperitive for true transaction support. It is also complicated, deadlocks are no fun. But we must be able to do db, table, row, and key locking. This way you can lock down a row for editing, and not allow anything else to mess with it until your current transaction is done. The classic example is the checking to saving account transfer by two people at the same. MySQL and postgres are not as good of Multiuser system as the big boys. Right now postges sends a message to the application saying, this is locked retry transaction, this is just not up to real enterprise levels.

    XML support.
    This is a new one, but one that is going to rock the DB world. The crappy thing about current tech is that all record sets are 2 dimensional. But if you've ever done more than 3 or 4 one to many joins this can be a big bitch to scroll through. It also replicates data in the result set leading to more memory consumption, network bandwith, etc. MS SQL as part of the whole .NET crap is doing this. Imagine XML results sets with heirachy. Tree based joins may also be in the works with this kind of power.

    Stop saying we will take over Oracle, and take the steps needed to make it a reality.

    1. Re:Not for a while. by nconway · · Score: 5, Informative
      I wish TPC www.tpc.org would do some MySQL tests and show just how it really perfoms when compared, to DB2, Oracle, and MS SQL Server.


      The specifications for the TPC benchmarks are freely available -- it's fairly easy to write a client application that follows one of the benchmark specs to test a specific database. contrib/pgbench in the PostgreSQL tree, for example, implements a "TPC-B-like" benchmark.

      Log based transactions.


      That's a fairly vague (or rather, inaccurate) term, but if you mean write-ahead logging, then PostgreSQL has done this since version 7.1. Some of the additional enhancements to this feature (such as point in time recovery) are planned for the near future, likely 7.4

      One data file for multiple tables.


      This sounds like a complete waste of time, IMHO. Since the database client shouldn't have any idea what the physical representation of the data is, it's not clear to me why this would be an important feature to have. Can you elaborate?

      I think Postgres is going to do this soon according to some of the discussions.


      Oh? I haven't heard anything about this...

      Complete SQL-92 support.


      "Complete" support for SQL92/99 is pretty damn difficult (SQL92 is 650+ pages, SQL99 is 1200+). Nevertheless, PostgreSQL aims to support as much of the standard as possible.

      MySQL and postgres are not as good of Multiuser system as the big boys.


      Erm, PostgreSQL uses MVCC, the same concurrency control scheme used by Oracle. It allows for "better than row-level locking" (readers and writers never conflict; one writer only blocks another if they update/delete the same row). In what way is PostgreSQL deficient in this regard?

      Right now postges sends a message to the application saying, this is locked retry transaction, this is just not up to real enterprise levels.


      When exactly does this happen, and what's the exact error message?
    2. Re:Not for a while. by shatteredpottery · · Score: 3, Interesting
      "The crappy thing about current tech is that all record sets are 2 dimensional."

      This statement indicates a profound ignorance of basic database design. The entire purpose of a relational database is to maintain n-dimensional structures! To put it crudely, each table describes one dimension, and a given database can therefore have as many dimensions as desired (within physical limits).

      That's the reason why so many well-trained people spend their time babbling about normalization, first-, second-, third-normal form and so forth. Some people (I've worked with many) think that normalization is a fussy, over-theoretical waste of time, and start throwing out buzzwords, depending upon their age, such as "object-relational", "XML-database" and so forth.

      "Right now postges sends a message to the application saying, this is locked retry transaction..."

      That's pretty unlikely, given that Postgresql uses multiversion concurrency control - again, put crudely, two different instances, say one a read and one a write, are effectively not even looking at the same DB, but at two independent "virtual" copies of the "real" DB (yes, Postgresql people, I know that's not quite right. That's why I said "crude"). It's possible for a lock conflict to occur, but not likely. And there is a lock resolution mechanism, so it's even more unlikely that an error message will pop up.

      --

      A witty saying is worth nothing - Voltaire

    3. Re:Not for a while. by Twillerror · · Score: 2, Insightful

      Okay give me a little bit of credit. I'm a very good dba/dbd. My point was database result sets, which have nothing to do with the way the data is stored are 2 dimensions. Record sets and tables are not the same thing. An XML based database is a horrible idea, getting your results back as XML is a fabulous one.

      Postgres does not handle serialized transactions as well as Oracle, etc. If your just at read committed isolation level then it is fine.

    4. Re:Not for a while. by greenrd · · Score: 2
      Er, what do you mean, "manage"?

      Just put them in a dedicated directory, I can't see any problems with that.

    5. Re:Not for a while. by mgkimsal2 · · Score: 2

      The way Oracle does it, with a file(s) per tablespace, is a much easier option. You can put whatever you want in that tablespace and it makes it very easy to manage.

      Oh, you mean like the innodb type in MySQL? This will, I believe, become the default table type in MySQL in the next year or so. Can't remember where I read that, but it seems to be stuck in my head from somewhere (maybe I'm just crazy!) :0

    6. Re:Not for a while. by nconway · · Score: 2

      Are you crazy? In any substantially complex database having to manage all those files would be a nightmare.


      I don't agree, but I'll accept that it's a valid concern.


      The way Oracle does it, with a file(s) per tablespace, is a much easier option. You can put whatever you want in that tablespace and it makes it very easy to manage.


      Ah, ok -- yes, there are plans to implement tablespaces. I haven't really looked at the concept extensively, but as I understand it, tablespaces don't simply "put multiple tables in one file", which is dumb -- they allow you to organize the physical storage of the database's data in a flexible manner. I can see the need for that -- all I objected to was the alleged deficiency of not storing all database tables in a single file (which would be pretty braindamaged).
    7. Re:Not for a while. by G00F · · Score: 2

      Hrmm, I think someone who uses MS sql thinks themselves to know what is being talked about. Most real DB's bypass the OS/File system and write directly to the disk.

      This is done mostly for reliability, sicne the OS will cache things and tell the application that it is written before its actualy commited to the drive.

      There are a lof of other things too, but I grow tired of typing already. ;)

      --
      The spirit of resistance to government is so valuable on certain occasions that I wish it to be always kept alive
    8. Re:Not for a while. by nconway · · Score: 2
      Most real DB's bypass the OS/File system and write directly to the disk.


      That's true; however, I think such a feature is mostly a waste of time. It takes a lot of effort to implement something like that. While there are some benefits (such as the capability for a more intelligent buffering scheme), the benefits are fairly small: if you're using a good filesystem to begin with, the performance difference is likely to be quite small. In fact, I've heard that part of the reason that raw disk I/O was implemented in the first place is that the filesystem implementations at the time were pretty poor -- so avoiding the FS buffer was a good idea. Since that's no longer the case for the most part, IMHO the enormous amount of work required to implement raw disk I/O is not justified by the performance improvement.

      This is done mostly for reliability, sicne the OS will cache things and tell the application that it is written before its actualy commited to the drive.


      On the contrary, you don't need raw disk I/O to implement provide reliability. You simply write() the WAL log entry, and then call fsync(), which forces the change to be written to disk. The actual (non-WAL) data change is not fsynced, so it stays in the OS's buffers and is written to disk at some later time -- but that's fine, because the integrity of the data can be checked by comparing the WAL records with the on-disk data.

      If you're using an IDE disk that does it's own caching, you're still going to have problems, since the disk lies to the OS following an fsync() -- it reports back that the changes have been written to disk, while in fact they have not, so if you lose power at that instant, the changes may be lost. However, I fail to see how using raw disk I/O improves the situation in this case -- an IDE disk will still lie to the OS or the RDBMS, either way.
  26. Oracle is top heavy by flinxmeister · · Score: 2, Insightful

    I've just recently gotten into Oracle out of necessity. It is very very reminiscent of my Novell days.

    They are too focused on their appserver and various "microsoft replacement" apps. Documentation is awkward when it exists, and even the smallest things result in a support call to find out about a bug or workaround. It takes even the resident guru days to do what would take a morning for me on a BSD/Apache/PHP box.

    The point? It's not that "Oracle is crap". That's clearly not the case. They're just so busy making the database do *everything* that they're going to look up and find out that people are using open source databases instead of Oracle. By then it may be too late. It won't happen overnight....remember that there are plenty of Novell boxes still humming.

    It's Oracle's arrogance about the up-and-coming databases that make it a statistical goliath.

    The brief history of software is littered with companies that were once of the same mentality as Oracle. They need to stop trying to be the end-all software co. and write some documentation.

  27. MySQL is great... by csguy314 · · Score: 2, Insightful

    I've been using it for quite some time, and I love it since it's nice and easy to use and very fast.
    But if you think that it will replace a company like Oracle, you're way off. MySQL is cool, but it can't handle nearly what Oracle or even DB2 can.
    Those bigger DB's run the biggest stuff for a reason. There's no way that MySQL (as it is today) could handle the loads that they do. It may happen in the future, but that's a ways off. There is no current threat at all to the big guys.
    Sure not everyone that uses the bigger DB's needs their full potential, so some could switch to MySQL. But the biggest databases will stay with the commercial vendors.
    But the GPL license isn't a problem, since you can buy commercial licenses for MySQL so that it can be distributed with non-free software. So that's a non-issue.

    --
    This is left as an exercise for the reader.
    1. Re:MySQL is great... by Tony-A · · Score: 2

      Those bigger DB's run the biggest stuff for a reason. There's no way that MySQL (as it is today) could handle the loads that they do.
      MySQL is very fast because it does not have to deal with the complications of having multiple simultaneous versions of a table so that readers and writers can proceed simultaneously. Slow readers mix badly with writers, although it should be workable if you put the slow readers on a slaved mysql. Once you reach the point where MySQL becomes too congested, expect the cost to go up an order of magnitude. There's a reason mysql (the client) comes back with how long the query took, and it's not bragging rights.

  28. Comparing MySql to Postresql by Hornsby · · Score: 2, Offtopic

    I've been using mysql for four years, and I've recently began migrating to Postgresql. I've found Posgtgresql to have all of the features that I've wished MySql had, and they don't feel "tacked on" like InnoDB and Berkeley DB support do in MySql. I would highly reccomend Postgresql over MySql for any serious application due to its native support for transactions and sub-selects. It also has wonderful features like views and stored procedures that are still in the planning phase for MySql.

    Seeing as how both are free, the only winning factor for MySql at this point seems to be speed. If you're planning on using a system that doesn't have to deal with the possibility of simultanous writes to a particular table then MySql probably makes more since due to it's superiour speed; however, if you're handling a high number of concurrent writes then Postgresql is the way to go due to it's improved reliability and ACID compliance. MySql only supports table-level locking by default, which seems silly for any application where a lot of inserts are happening at the same time. I know that there are 3rd party libraries which provide a solution for this, but I'd rather use a database where these features have been planned for from the beginning.

    MySql is catching up in the areas in which it's lacking, but it's still going to be a bit longer before it has a comparable feature set to some of the more industrial strength databases. On the upside, I'm glad to see free software solutions in the database market making their mark because the acceptance of these technologies will only further Linux's success in the long run.

    --
    A musician without the RIAA, is like a fish without a bicycle.
    1. Re:Comparing MySql to Postresql by Purpendicular · · Score: 2, Interesting

      I would love to be able to use all the features of
      Postgresql but I need 24/7 availability (no vacuum) and replication. Until some slashdotter can explain how to do this with Postgresql I will stick with MySQL.
      It would actually be nice to see ONE SINGLE COMMENT on these issues in the usual 400 post thrashing of MySQL that these discussions cause.

      Erik

    2. Re:Comparing MySql to Postresql by bovinewasteproduct · · Score: 2

      PostgreSQL 7.2 and above has a non-locking vacuum.

      As far as replication goes, it is available, but a little hard to setup.

      BWP

  29. Use InnoDB by SiMac · · Score: 2, Informative

    MySQL Max binaries support InnoDB, which uses row-level locking. It can also be compiled from source with InnoDB.

    Also, IIRC, /. uses InnoDB.

    Simon

  30. Re:MySQL great for small databases by WetCat · · Score: 2

    If you need more advanced features then use Postgres. But as far as I know there is no Windows version so your market is smaller

    Are you spreading mysql-supporting FUD ? :)
    Here is how to install PostgreSQL on Windows:

    http://www.ca.postgresql.org/docs/faq-mswin.html
  31. Should be illegal by setzman · · Score: 2, Funny

    A free program doing certain tasks better than high priced commericial programs? This should be illegal here in the USA, don't be surprised to see corporate execs begging Congress to ban this kind of thing!

    --
    C:\>
  32. Whether MySQL or PostGres... by LinuxParanoid · · Score: 3, Insightful

    Whether MySQL or Postgres, I don't care as long as open source ends up being a platform for databases. Microsoft can try to portray Linux as a niche webserver platform now, but with a solid foothold as a database platform, open software, as a platform, will be substantially harder to dislodge.

    --LinuxParanoid

  33. Sorta OT question... by NanoGator · · Score: 3, Interesting

    Okay, I just have a real simple question:

    Let's say that Database package A is made by a huge corp and package B is like MySQL, free, open source, etc.. Now, let's say that functionally they're similar and that any given company could use one or the other without aching too much.

    If there is a bug in package A, the corp would have monetary incentive + engineers to fix it. (This is hypothetical, so spare me real world scenarios...) If there's a bug in package B, what exactly is the incentive to get it fixed in a timely manner?

    Just to be clear, I am not criticizing free software. I'm genuinely curious because I'm not fully educated on the topic.

    This is an important question because larger companies are willing to pay the money for the 'package A' scenario, but only because they have a sense that spending th1e money put into it means problems are quickly correctable. (I know, reality is a different story, don't beat me up for that point.) With package B, if something's missing, they don't have much alternative other than to go ahead and use package A. Package B is free, but if they already adopted it there's time/money/effort already invested. This could prove embarrasing. It seems like it'd be hard for a company with enough money to buy and support package A would ever be interested in package B. So how does one go about convincing them?

    I'd really like to understand that aspect of Open Source before I recommend MySQL or something like that to my boss.

    --
    "Derp de derp."
    1. Re:Sorta OT question... by Chagrin · · Score: 3, Insightful
      • If there is a bug in package A, the corp would have monetary incentive + engineers to fix it. (This is hypothetical, so spare me real world scenarios...) If there's a bug in package B, what exactly is the incentive to get it fixed in a timely manner?

      For package A, it's not really clear that there is a monetary incentive to fix it. Is the bug likely to generate fewer sales or not? The company is motivated by profit only and has to consider the opportunity cost of fixing the bug -- not the needs of the consumer. Package B (almost) always has motiviated engineers and an incentive (whatever that incentive might be) to maximize the package's utility. Package B exists because this is true.
      --

      I/O Error G-17: Aborting Installation

    2. Re:Sorta OT question... by NanoGator · · Score: 2

      I can relate to that. I recently rewrote the core of my company's website using PHP (we were using .ASP.. blah) and there's a few features that I didn't have to add.

      I understand what you're saying, thanks. :)

      --
      "Derp de derp."
    3. Re:Sorta OT question... by Issue9mm · · Score: 2

      To put the light in a SLIGHTLY different perspective:

      You have package a (closed product) and package b (open product) that are similar in features, blah blah blah.

      Package a and package b have similar bugs. Because Package B is open source, any one of the users experiencing that bug has the ability to fix it. While this may or may not be you, and may or may not be the manufacturer or package b, if it's a pretty widespread bug, it can be fixed by anyone, and is likely to be fixed by someone.

      Compare and contrast the recent SSL bug. When discovered, company a (Microsoft in this case)has not yet patched the bug (correct me if that's wrong), whereas the same bug, as found in Konqueror (open source) was patched in 90 minutes.

      While you're right that Package B manufacturers may not have as much monetary incentive to fix the bug, any of the users can as well, though typically fixes are provided in a rapid manner for high profile bugs in open source projects. For less common bugs (read: something that only you are experiencing), you might not ever get a fix at all, but then again, that goes for the closed source product as well.

      Hope I've helped,
      -9mm-

    4. Re:Sorta OT question... by aminorex · · Score: 2

      If you want it, you implement it. The release cycle
      times for mature, popular open source projects like
      mysql are typically quite short, so if you do it well
      the first time, your patch can be integrated into the
      release in short order.

      One way of implementing it is to hire a professional
      to make it do what you like. In reality, you can
      get timely fixes for open source software, but you can't
      get timely fixes for popular closed-source software.
      This is because your money matters much, much
      more, in the development of an open source
      project than it does to a very profitable company
      which is focussing on other markets at the time.
      Especially when said company is large and
      beaurocratic, and implements some horrendously
      heavy-weight process, like Unified.

      Being rich does, however, allow you to be stupid.
      I can't argue with that.

      --
      -I like my women like I like my tea: green-
    5. Re:Sorta OT question... by Tony-A · · Score: 2

      Let's say that Database package A is made by a huge corp and package B is like MySQL, free, open source, etc..
      Well, I can give you an example. dBASE5 has a problem that can destroy records in a database. This problem will never be fixed. The problem is reproducable, but not by anything small and simple. First determined by stepping through a program where looking up a shipto address would delete a recently entered Sales Order. The statement where the Sales order was deleted was not related to Sales Orders. Messing with CMDSPY I was able to determine that under some (unknown) circumstances dBASE5 would write out the initial 6 (IIRC) bytes of most OTHER databases. Given the practicalities, the only thing feasible is to recode to avoid the problem.
      With such as MySQL, any such bug would be traced, found, and obliterated. Using a full production system to trace down an elusive bug (which won't show up on anything small) is very viable if the time to fix it is no more than the time to work around it. For the vendor to fix it, the vendor has to be able to replicate it. If it fails on your machine and works on the vendor's machine, what *CAN* the vendor do?

    6. Re:Sorta OT question... by Tony-A · · Score: 2

      I hate it when that happens.

      Me too. I don't just mean I hate it when my code screws up. It has to do with the rightness of the code itself.

    7. Re:Sorta OT question... by NanoGator · · Score: 2
      Didn't you read the part where I said "This is hypothetical, spare me real world examples."?


      On the flip side, I worked for a company that leased servers from IBM. One server blew up in a bright flash, and 4 hours later we had an IBM rep with a new motherboard.

      I'd like to see Open Source do that! :P


      Sww why I wanted to avoid that? Yeesh.
      --
      "Derp de derp."
    8. Re:Sorta OT question... by horza · · Score: 2

      If there is a bug in package A, the corp would have monetary incentive + engineers to fix it. (This is hypothetical, so spare me real world scenarios...) If there's a bug in package B, what exactly is the incentive to get it fixed in a timely manner?

      Let's pick two productivity tools that are used in the office every day, say IE and Mozilla. Let's take a bug, for instance the SSL flaw. With Mozilla the bug was eliminated in days, M$ have still got to get around to fixing it. The incentive to fix it is because the users need it to be fixed, and being Open Source the programming community is fortunate enough to have plenty of gifted people able to do this quickly. You could look on it as a large collective self-interest.

      Phillip.

  34. What about clusters with distributed data? by treat · · Score: 2

    What about clusters with distributed data? No shared storage. What software does this?

  35. You've hit the nail on the head by Da+VinMan · · Score: 2

    That *is* a key problem in open source. The project developers develop features around their own key interests first. One could fairly argue that you ought to just code the features in question that you feel are missing from the product, but that's hardly a possibility for most of us because of the time and skill needed to modify something as complex as a RDBMS like MySQL.

    That said, you really don't need to sell your boss on what a given open source will be. You only need to concentrate on what's there right now and the ROI tradeoffs involved in procuring such a product over the traditionally favored commercial product (be it Oracle, SQL Server, whatever). At the end of the process, you may find yourself choosing the commercial product anyway. It happens.

    As the article said, not everyone needs aircraft carriers. Most of us get by just fine with a frigate. Choose the right tools for your environment. Like it or not, those factors may include political factors which force you to steer clear of open source.

    --
    Please mod this post only if you think others should/n't read this. I have enough ego^H^H^Hkarma. Thanks!
  36. It already is a threat... by wirefarm · · Score: 2

    ...for the applications that don't require those things.
    (Why drive a truck when a bicycle would do?)
    Oracle is great, don't get me wrong, but I have seen applications spec'd with Oracle maany times when the developers weren't using those things at all. Very often, this is being done with your tax money too.
    Too many people think that a kickass databse is somehow going to make their crappy schema into a good one.
    Of course, the whole key is to start with a good design and know the limits of your tools. If you do that, both MySql and Oracle can happily co-exist.
    Cheers,
    Jim

    --
    -- My Weblog.
  37. Re:mysql is a threat to the commerical db vendors by nelsonal · · Score: 3, Interesting

    I have to agree with this, there are certainly many applications that require the name, stability, and configurability of one of the big providers. However, I have noticed a pretty distrubing trend, distrubing to me as a software analyst anyway, the firm I work with purchases loans as an investment, it buys a few hundered loans a year. They originally used a spreadsheet to track payments, balances, and other info about the loans. As this became unmanagable, it was decided that a database would be needed, they bought a new system and put oracle on it. By the time hardware, software, and the consultants were paid, the bill was quite large, all to track about 1500 loans! Say what you will about Access, but this was about the perfect application for it. MySQL or PostgreSQL would have worked, but no one there knew how to manage it. There are people who could be taught how to create and manage access, especially for something this small.
    I also am beginning to believe that these sorts of applications of enterprise databases, for something like this, I would guess that most managmets would be quite receptive to a no liceses cost alterative to Oracle. This is starting to give me the hebejebes about investing in enterprise database companies.

    --
    Degaussing scares the bad magnetism out of the monitor and fills it with good karma.
  38. Re:challenge? by Wavicle · · Score: 5, Interesting

    Data comes in one way and gets read many times and that's the sort of use MySQL's raw speed will blow both postgres and oarcle away at.

    I disagree, every test I've ever done or read in the last 3 years, postgres is as fast or faster than MySQL (using reasonable sized data not "100 test records"). Do you have a link to a benchmark on recent versions of each (without magic 3rd party patches)?

    --
    Education is a better safeguard of liberty than a standing army.
    Edward Everett (1794 - 1865)
  39. MySQL is important for society. by catwh0re · · Score: 2, Insightful

    It's important that MySQL and other similar open source is free of charge, as it reduces the price of web hosting, as you can get a server for a good cost and everything that runs on top of it is now open sourced. Dramatically bringing down the price of smaller upstarts to host on the web.

  40. Standard MySQL disclaimer on slashdot by defile · · Score: 5, Informative

    Addressing the typical slashdot negativity when MySQL is mentioned...

    MySQL, w/ InnoDB tables (binaried as MySQL-Max) supports transactions with row-level locking and multi-versioning. It also supports foreign key constraints to some degree (on delete cascade, IIRC).

    MySQL w/ InnoDB is extremely fast, and this isn't just on SELECTs. UPDATE/INSERTs are much faster than in MyISAM tables. Looking back, the turning point where MySQL went from a good database to a great database is when it picked up InnoDB, IMO.

    No, MySQL does not yet support stored procedures, subselects, or views. These are coming in 4.1, along with built-in hot backup support. Plus better replication. 4.0 is available now and seemingly stablizing. The biggest buzz is how thrilled people are with the query cache. At the current pace of development I imagine the above mentioned features will appear and stabilize in version 4.1 within 2 years.

    Is MySQL an Oracle replacement in all circumstances? Absolutely not, but very often Oracle is wholly unnecessary for many of the tasks it's purchased for. We're currently running MySQL + InnoDB on a 36GB dataset at a load of ~500 queries/sec average against a 3 month period. Approxiamtely 30% of queries are data modifications. This is obviously not an impressive system to many of you, but I'm fairly pleased with it, especially considering that "professionals" have been telling us abandon this toy database for years. Personally, I'm glad we saved the down payment on Ellison's next yacht.

    Is MySQL a PostgreSQL replacement? Probably not. There are back and forths about speed and features--PostgreSQL does support more of the features listed above--but I find MySQL to be easier to use and better supported, and the benefits to me of switching are not very apparant. Your mileage may vary. It's not the end of the world to enforce some business logic in the application layer, and it has its own benefits.

    MySQL continues to impress us and the support we receive is outstanding. And that was before we even decided to purchase a yearly support contract. I have nothing but praises to sing about MySQL, and I think it can only get better.

    Oh and it's free and open source. *shrug*

    1. Re:Standard MySQL disclaimer on slashdot by bovinewasteproduct · · Score: 3, Interesting

      MySQL, w/ InnoDB tables (binaried as MySQL-Max) supports transactions with row-level locking and multi-versioning. It also supports foreign key constraints to some degree (on delete cascade, IIRC).

      But in this case forget hotbackups unless your willing to buy the tool for InnoDB (it is NOT open source).

      BWP

  41. What MySQL is... by coupland · · Score: 3, Insightful

    MySQL is basically a database as powerful as Access and others with no performance hit whatsoever. It's not that MySQL is an amazing feat of programming (a good one, but not an amazing one) but it shows what a simple database can do when performance is key. Consider /. which is run on MySQL. A personal database powers one of the best sites on the web, bar none...

  42. Re:challenge? by delta407 · · Score: 3, Informative
    mySQL tends to favor read-intensive activities but is a little weak on write-intensive and transaction stuff.

    Agreed. I use MySQL in a few different production environments, and it works great -- speed is good (even on old, old hardware) and the flexibility is excellent (different formats on a per-table basis). However, I find the SQL implementation somewhat lacking.

    UNION support is a little late -- why did it take until 4.0.0 to implement? Furthermore, the lack of subselects makes everyday activities such as multi-table UPDATEs a little arcane. (Read the "it can't be done this way" comments on the bottom to see what I mean. AFAIK the only solution is to create a new table, do an INSERT ... SELECT on your source tables, DROP the first table, and rename the temporary table. Very, very icky.)

    MySQL also lacks triggers and views -- views are kind of handy, but if given subselects, can usually be done without. Triggers, though, give one a way to enforce logic (say, relational integrity), which would be very nice to have.

    Oh well. I really would like to have my cake, but I guess I'll settle for eating it...
  43. GPL doesn't impair consultants? by joneshenry · · Score: 2
    I don't understand the comments that the GPL is impairing MySQL. Considering MySQL's popularity, that does not appear to be the case.

    I would suggest the reason is that for consultants who are recommending a custom solution the terms of the GPL are not onerous. The GPL unlike other licenses does NOT require one to give source changes back to the original developer. You just have to give the source code including your source changes to the customer licensed under the GPL.

    In theory the customer can then take your changes and distribute them for free under the GPL. But why would the customer do this if your solution is giving the customer a competitive advantage?

    I would conjecture that databases are an almost ideal situation for the GPL to not affect consultants. The customer will not be worried because in all likelihood they aren't going to be distributing the customized database outside the company, so they don't have to reveal the code you gave to them under the GPL. You don't have to be worried because even though you licensed your code under the GPL, the customer has no incentive to publicize it.

  44. Haven't we discussed this before? by MattRog · · Score: 3, Interesting

    Boy it seems not a couple weeks ago we were discussing something along these lines here on SlashDot. I think I've said everything I need to say on the lacking features of MySQL, so maybe I'll chat about something else.

    I think everyone 'knows' of an Oracle-dependant piece of software in your shop (or school, or website, etc.) which really doesn't 'need' Oracle. We look at apps with 100 users and say - "Heck! Even flat-files would be fine for this app!". Those sorts of Oracle installs are certainly feeling the IT budget crunch. No longer can management write $80K checks to Oracle each year for support and product upgrades. They're looking for a way out and I think some of the smaller more niche products (Sybase ASE, PostgreSQL, MySQL, etc.) need to be ready to step in and take them (so listen up MySQL developers and zealots!).

    When we discussed this before I brought up what I thought were valid complaints (no hot backups, no binary dumps, EXPLAIN output is cryptic and could be cleaner, replication is still a little immature, etc. etc.). Regardless, some 'rebuttals' I received were the Open Source Party Line - e.g. 'Why don't you code it yourself?' or 'There's a workaround for that.' That is certainly not a healthy attitude to tell potential customers of your product. These guys dropping $100K on a RDBMS and are feeling the pain would love to pay MySQL support contracts, however if you have the attitude that somehow the end-user, who would like to actually pay you money for your product, needs to keep their mouth shut and gratefully take what you charitably give out you're not going to retain them as a customer. Like it or not, they are used to getting what they pay for. And if you're really focused on getting more Enterprise-ish people to use it then you'd best start acting like it. :)

    Give them what they want, treat them like CLIENTS (e.g. deserving of some respect) and not simply another l33t hax0r ("Code it yourself, n00b!") and they'll beat a path to your door.

    --

    Thanks,
    --
    Matt
  45. Postgresql great substitute for Oracle Workgroup by spagbol · · Score: 2, Interesting

    In our corporation we used Oracle with good success for many years. We switched to Postgres for many reasons and have found great success with it. It is very stable, excellent documentation available and is much more straight forward to administer. No problem convincing the suits as the cost of the Oracle licenses went into orbit. I would recommend Postgresql for use in a production environment

  46. My poor experiences with a large MySQL db by eyeball · · Score: 3, Insightful

    I jumped at the chance to use MySQL for a large project as a win for opensource. I carefully designed a db that would hold one billion records, as required for my project at work. Well, after a week of importing, when it came time to reindex a field, MySQL's technique was to freeze the table and make a fresh copy (thankfully I had enough room), although the copy took 3 days (during which the db wasn't available). I switched to Oracle and life has been so much better.

    In the end, MySQL might handle the raw numbers that some of the big players do, but when you're working with large data sets, Oracle (and presumably others) give you more power. Take the actual physical data structure that Oracle allows you to work with: each database comprises of dynamic multiple variable length data files that can allow tables to span physical disks. MySQL will get there someday, but they're still a little behind.

    --

    _______
    2B1ASK1
  47. How? by Inoshiro · · Score: 2

    It says right there that if you want to spend the time and money on non-OSS development, they'll be happy to take some of your money in exchange for providing you with some code & service.

    Is it a crime to profit from you work?

    Alternately, go look at the BSD licenced PostgreSQL if you want to fork it and use it closed-source.

    --
    --
    Internet Explorer (n): Another bug -- that is, a feature that can't be turned off -- in Windows.
  48. Comment removed by account_deleted · · Score: 4, Insightful

    Comment removed based on user account deletion

  49. Where are the jobs? by K-Man · · Score: 3, Interesting

    From the premier site for fruitless technical job searching

    Mysql: 49 hits
    Postgresql: 2 hits

    Oracle: 4595 hits

    One could argue that the people that post on DICE are dumber than most, but there still doesn't seem to be much of a market for mysql and postgresql.

    --
    ---- "If we have to go on with these damned quantum jumps, then I'm sorry that I ever got involved" - Erwin Schrodinger
    1. Re:Where are the jobs? by forkboy · · Score: 3

      That's because these Oracle dbs were put in a long time ago, before MySQL started gaining any real notoriety or use in the corporate world. Once you have a mammoth database already in place, wouldn't you continue to use it? It's easier and less risky to upgrade your servers and pay an Oracle dbm 6 figures a year to maintain and improve it rather than migrate your entire infrastructure over to another platform entirely. Especially if you're a financial institution that simply CANNOT afford any major downtime in their database for migration/debugging.

      Another reason to use something like Oracle....vendor support.

      I'm a big fan of open source software solutions, and I'm glad to see MySQL getting some use in the real world, but don't expect the world to drop what it's using and switch just because it's free and cool.

      --
      This message brought to you by the Council of People Who Are Sick of Seeing More People.
  50. If you don't understand your problem... by pHDNgell · · Score: 3, Insightful
    Well, sorry, but it is worthy. It's not a "full" database like you'd like for your work, but it's more than enough for a huge number of problems.

    mySQL is the right tool for *far* fewer jobs than those to which most people believe it applies. Many people end up writing code to deal with various aspects of data management that the database is supposed to take care of because they don't know that the database is supposed to take care of the data.

    If you only know mySQL, you will attempt to solve your problem within the limitations of the tool. The problem is that many things can't be done in multithreaded or worse, multi-process application code to ensure integrity. If the DB won't do it, and it doesn't support transactions, then you've just gotta hope people don't ever use your application in a way that will make your data invalid.

    I just don't get the appeal of mySQL. The last time I tried it, it seemed more difficult to use than postgres, and it supports a subset of the functionality. I have not done a project that doesn't require at least some basic database feature that mySQL doesn't have in years. Sure, I suppose I could've written code to emulate some of those parts of the database, but certainly not all. For the parts I could emulate, the application would most certainly run more slowly (multiple queries to emulate a subquery or what I do in a stored procedure), and the ones I couldn't would just have to be left out, which would make the applications more buggy (lack of transaction support on applications that run on multiple front-ends would simply cause the apps to fail).

    Anyway, basic point is that if you don't understand your problem and/or the tools that are out there to help you solve it, you will solve it incorrectly. It may seem like it's working, but those types of implementations fail really quickly when they go multi-user.

    --
    -- The world is watching America, and America is watching TV.
    1. Re:If you don't understand your problem... by schon · · Score: 2

      I just don't get the appeal of mySQL.

      Actually, most of the answer to this was two paragraphs above this..

      Many people end up writing code to deal with various aspects of data management that the database is supposed to take care of because they don't know that the database is supposed to take care of the data.

      This is the answer to your question. They simply don't know the database is supposed to do it for them.

      The problem is that the 'web application programmers' have no knowledge of what SQL is or what it's supposed to do; they understand "insert" and "select", and assume that this is the be-all and end-all, never questioning all of the other stuff that makes SQL as powerful as it is.

      They started writing apps in Perl, keeping data in flat files - once the project reached a certain size, they decide to give "sql" a whirl.. and because they already have all of this program logic dedicated to managing the data, they keep it around, and use the DB as a large flat file; since this is what MySQL excels at (what it was designed for), they believe it to be 'the best', and never question that there might be a better way to do it.

  51. Head-in-the-sand journalism by hobuddy · · Score: 2, Informative

    Great, YET ANOTHER article on open source databases that fails to mention SAPDB or Firebird, even though they're both a hell of a lot better than MySQL in most respects (especially true of SAPDB).

    Most journalists (and 75% of Slashdotters) apparently are ignorant of the advanced features offered by the "big boy" commercial databases they so love to deride; they end up doing all open source databases a disservice by equating all open source databases (in the mind of the pointy-haired boss) with the puppy of the household, MySQL.

    --
    Erlang.org: wow
  52. Replication by Betcour · · Score: 2, Informative

    Actually MySQL does replication just fine (but it is only one way, there can only be one master). If you need few updates and huge amount of reads this allows you to spread the load amongst several servers.

    That's a weakness PostgreSQL (which doesn't do any replication at all) should fix in a future release.

    1. Re:Replication by gmack · · Score: 2

      If PostgreSQL did replication the company I work for wouldn't even be looking into Oracle. And I would have better uses for the $120 000 CDN they want to charge us.

      MySQL's repliction in the current stable sucks big time. It's a pain to setup and it's way too fragile. The basic setup looks much better in the next version and I'm hoping more reliable as well.

    2. Re:Replication by gmack · · Score: 2

      You lost me at "stop updates on the master database" since the downtime tends to be rather expensive.

      Thankfully the need for that is fixed in the next major version. (steps 1 and 2 look to be combined into a single command)

      And yes I have this working however it inexplicably craps all over itself at random intervals and requires a repeat of the first 2 steps you listed. (and before you ask we have writes disabled on the slave)

  53. True but by Betcour · · Score: 3, Insightful

    MySQL (or even Postgresql) don't claim to be drop-in replacement for DB2 or Oracle. But they claim to be good enough for simple database tasks, which happen to represent a huge share of the business market (for every high-availability banking application there are a 1000 small databases storing employee holidays, classroom affectation, etc.). These small databases are not only a bigger market in term of quantity (if not in value), but some of them also grow into big databases someday.

    Remember when Microsoft was doing MS-DOS, no Unix vendors would have been worried, they had much better capabilities. When millions of PCs were sold with MS-DOS they started worrying. When Windows came out they growed gray hair. Now SQL Server and Windows Server have eaten the market of smaller servers and high-end workstation. This is the strategy of eating your way from the bottom to the top, and it will also work for MySQL and Postgresql : as time passes and as they mature they eat out an ever larger chunck of the database market.

  54. Sounds like they did the right thing to me by GCP · · Score: 2, Troll

    A Fortune 500 company probably isn't limited to local business. They probably do business all over the world. I don't know which one is more globalization challenged, PHP or MySQL, but they're both like Gilligan's Island: primitive as can be.

    Whereas NT/2K/XP, SQLServer, ASP.Net, Java, C#, .Net, XML, HTML 4, etc., are Unicode to the bone, the last I checked poor PHP and MySQL were both still stuck in the legacy world of regional character encodings. You can build a global app with Java/Oracle or .Net/SQLServer, but the best you can do is a regional app with PHP/MySQL.

    This doesn't only matter for monster projects. Small systems can still be global -- unless you decide to go with tools like PHP & MySQL.

    --
    "Those who have never entered upon scientific pursuits know not a tithe of the poetry by which they are surrounded."
  55. Many byers missled by this kind of discussions by sedna · · Score: 5, Insightful

    Most database-systems set up by scientific projects I've seen, have been using either Oracle or Microsoft systems. This is of course completely insane considering the need they have, and a total waste of money. Unfortunately many people read a little about databases on sites like /. and start to belive that they are setting up a large database. After reading this thread, one can easily think that American express is running an averaged sized system with normal demands on security... The truth is that almost no school systems, museums, scientific projects etc. etc. ever need an enterprize solution. An example of the problem is an institut for Marin research in Colombia where they used Oracle. They paid $15.000 each year in licence fees to set up a database for their collections. They wanted to put it on the web and needed to pay $5.000 more. This is a simple task that Mysql, with all it's flaws, easily could manage, and without the need of an experinced Oracle techincian. There are Highschool Linux geeks in Colombia as well... The overkill in usage of database systems around is probalby enrmous and a very good source of revenue for Oracle and Microsoft. Think about this when you are bashing the lack of advanced features in Mysql. Someone might actually belive you and buy an Oracle licence to run the member database for their local bridge club...

  56. Success of Open Source by martenmickos · · Score: 5, Interesting


    Guys,

    Let me offer my view on the Bloomberg article. It is a huge success for the whole open source community that MySQL gets written about in a publication which is for non-techies only. It is an indication that open source development is not in vain - that open source is becoming a viable alternative even in the most conservative IT shops.

    So in stead of arguing for and against this or that open source database, let's work together to become even stronger in the business world!

    A key reason for MySQL's huge installed base is that Monty and David - the founders - focused on speed, reliability, and ease of management. That's why Bloomberg is writing about MySQL. And that is also the way to find paying customers who make it possible to hire more programmers and further develop the product.

    I am sorry if this sounds like marketing speech. We at MySQL AB are working our butts off to conquer the business world. Now as we are doing so, it will benefit all open source databases. Will you help us?

    Marten Mickos, CEO, MySQL AB

  57. Why not Firebird? by Holger+Spielmann · · Score: 2, Informative

    Being a developer of Java web applications myself, I always wonder why Firebird doesn't find any broader use.
    I mean, in an commercial environment, there's always the reason to have someone to blame if you choose a closed-source solution like Oracle or DB2, so the managers refuse to accept Free Software or Open Source. Plus there are features in Oracle etc. still missing in the free alternatives.
    But what about all the small, non-commercial projects? Firebird is really easy to install, it's scalable as hell and is, contrary to MySQL, a real database.

  58. MySQL Laughed At by N8F8 · · Score: 2

    Two weeks ago I sat in a room full of US AirForce SysAdmins. Mostly they are a MS SQL Server shop. I mentioned MySQL and every SysAdmin, to the person, chuckled and cracked a smile. The manager turned to me and said, "We had one of those installed a few years ago."

    Apparently, MySQL was a joke to them. Thats a pretty big institutional hurdle to jump.

    From my own experiences MySQL does what it does very well. But lack of cascading updates/deletes and subselects are the big problems. SQL Server has plenty of its own quirks though(but you don't read about those on the side of the box).

    --
    "God fights on the side with the best artillery." - Napoleon, Marshal of France - speaking truth to power
    1. Re:MySQL Laughed At by Quixote · · Score: 2
      Apparently, MySQL was a joke to them.

      And they are a joke to the rest of the world. Listen: there's a sucker born every minute, and it looks like you found yourself in a roomfull of those.

      You should have asked them: did you have MS SQL also installed a few years ago? Because it didn't exist then, did it?

      In the tech world, if you go by what didn't work "a few years ago", you are making a big mistake. Technology keeps changing. Heck, "a few years ago" even Pentiums had a hardware flaw. Why are these guys using Pentiums today?

      My motto: the right technology for the right job+price. I had a situation where group in our dept needed a "data warehouse" for doing some research. They were being sold a bill of goods by Oracle: $100K+ for the whole setup. I looked at their problem, and realised that they were going to be just doing plain SELECTs only; none of this other fancy stuff. I encouraged them to try out MySQL and they are happy. Sure, they have to work around a few minor issues (like they shut down the warehouse every night to add new data). But the savings have made the project possible! If they had not saved the $100K, the project would not even have started.

  59. Firebird by KlausBreuer · · Score: 3, Informative

    > 1. Supports subselects
    > 2. Supports views
    > 3. Supports triggers
    > 4. Supports stored procs
    > 5. Does most the things that everyone takes for granted with a decent db server

    Strange. Am I missing something, or am I just dumb? Firebird (open source version of Interbase from Borland) does all that, and does it well. It runs on Unix, Linux and Windoze (yes, some people need that), works very nice and fast, is reliable, costs exactly nothing, and I use it in quite a few real-world applications.

    How come I never hear of it on Slashdot?
    Have a look at http://sourceforge.net/projects/firebird/

    Ciao,
    Klaus

    --
    Free PC version of ChipWits at http://www.breueronline.de/klaus/chipwits/
  60. What the big databases do... by Baavgai · · Score: 2, Insightful

    When designing a database application the first decision is where the application logic should be stored. In a large database the choice is to store logic in the database or in the application. There are good reasons for both approaches, but mySQL limits you to strictly application logic. While this is not bad and makes most programmers happy, it's also one of the most common causes for inefficient database usage. Most programmers think more in loops than SQL and a loop is the kiss of death for a database. The one undeniable requirement of a database is the ability to filter and return only the data needed for a given operation. Since mySQL does not support sub queries, stored procedures, ref cursors, etc, it simply can't do this. The work around is to pull the required information and analyze it in the application. Again, this is a programming solution that has to be applied because the database is not up to the task. The argument against the big databases is that they offer too many things that folks don't use. This may be true, but the corollary is that there is a large pool of things that I can and will use. I would use mySQL in the same places I'd use MS Access for about the same reasons. This makes it a handy tool for database development and testing. However, I don't think it really qualifies it as an enterprise database or a realistic "threat" to Oracle, DB2, SQL Server, etc.

  61. Re:PostgresSQL too difficult by ajs · · Score: 2

    Yep, I got it working too, but its concept of how you managed sysadminish things like where storage went and how the database was found made Oracle's configuration look pleasant (scratch that, nothing makes Oracle's configuration look pleasant).

    MySQL was distributed as RPMS at the time, but even compilng from source and installing was a matter of standard open source conventions. I didn't have to modify 3 config files to get it to install, etc.

    I'm not trying to be pro-MySQL here. Personally I think PostgreSQL is good for MySQL and visa-versa. The competition is helping them both to grow. But, PostgreSQL lost me on ease of installation back then, where it would have been my database of choice if it had been easier to install.

  62. UTF-8? by yerricde · · Score: 2

    Whereas NT/2K/XP, SQLServer, ASP.Net, Java, C#, .Net, XML, HTML 4, etc., are Unicode to the bone, the last I checked poor PHP and MySQL were both still stuck in the legacy world of regional character encodings.

    Have you tried using UTF-8, an encoding of a sequence of Unicode characters into a sequence of 8-bit bytes, with your PHP/MySQL design?

    --
    Will I retire or break 10K?
    1. Re:UTF-8? by GCP · · Score: 2

      Yes I have tried, and last time I checked neither PHP nor MySQL supported UTF-8. I'm not saying that you can't simply pass a byte sequence through them unprocessed. You can usually do that with anything. I'm saying that the data processing features that had no trouble processing Latin-1-encoded text could not successfully perform the same processing if the text were encoded as UTF-8.

      I'm not claiming I built such a system and it failed. I'm saying I tried designing one with the help of the official docs and the online experts with each technology, and was assured that "sorry, you can't do that."

      Contrast that with the other technologies I mentioned where the data is always normalized into some form of Unicode internally before the processing even begins so that all processing is language-independent. All algorithms (features) will work on any sequence of characters, regardless of what language or mix of languages they represent.

      I've built many such systems with Java/Oracle, and a few new ones with .Net/SQLServer. Both approaches are terrific. (I now prefer C#/.Net to Java, but I *strongly* prefer Unix to Windows on the server, so I'm still mostly using the Java/Oracle approach for production until I can get a good C# and .Net for Unix platforms. Go Mono!)

      I keep saying "the last I checked" because eventually all non-Unicode systems will either add Unicode support or die. These two will eventually retrofit something, probably UTF-8, and maybe it has already happened, but systems like Java and .Net are so far ahead in globalization that it will be a long time before I'd consider PHP/MySQL for any company beyond a local shoe store or bakery (where I admit they have a pretty good niche).

      --
      "Those who have never entered upon scientific pursuits know not a tithe of the poetry by which they are surrounded."
  63. libmysql is LGPL not GPL by yerricde · · Score: 4, Informative

    In the case of libmysql (C native-interface library of MySQL), developers are forced to pay so much money for using GPL code(libmysql) in their software as non-GPL state, plus their customers have to pay money for commercial-licensed MySQL server.

    Bull. The libmysql client software is NOT GPL but rather Lesser GPL, which allows linking the client software against a proprietary application program. "A license is not required if: You include the MySQL client code in a commercial program. The client part of MySQL is licensed under the LGPL". Even then, MySQL with InnoDB is $400 per multi-processor machine, as opposed to MS SQL's $20,000 per processor for the unlimited-client license.

    Microsoft doesn't require such license fee when you use OLE/DB etc. to get native access to SQL server.

    Yes it does. Microsoft SQL Server is priced based either on the number of processors or on the number of machines that will access the database.

    --
    Will I retire or break 10K?
    1. Re:libmysql is LGPL not GPL by bovinewasteproduct · · Score: 2

      What I can't figure out is why I would ever need a commercial license unless I wanted support. If the clients are under LGPL, that means I can link them in as long as I give a relinkable object for my code.

      The problem comes in when your system only uses MySQL and nothing else. They tell you that this requires a commercial license even if your usage does not violate the GPL or LGPL. Why?

      As far as InnoDB goes (which adds needed support for such things as transactions and FKs), it is just about worthless for 24x7 unless you buy the hot backups package from them.

      Arrggghhhh, licensing issues.

      GB

  64. Question/Answer by Ageless · · Score: 2

    MySQL A Threat To The Big Database Vendors?
    Nope. Not really.

  65. Avoid it like the proverbial plague by yerricde · · Score: 2

    Is the bug likely to generate fewer sales or not?

    If such a bug causes loss of data or compromise of private information, and the story hits Com.com or one of the other tech news sites, and the product does not have a monopoly in the product space, you bet the IT people will do their best to avoid such a product for new installations.

    --
    Will I retire or break 10K?
  66. MySQL by NitsujTPU · · Score: 2

    Against Oracle?

    Maybe when about a million things that are part of the SQL stanard make their way in. Last time I used MySQL, it couldn't do subselects.

  67. Misinformation? by Twister002 · · Score: 2

    First of all nothing in the original post said anyting about running MySQL/PHP on a Linux box. If the guy went in and pitched running it all on Linux w/ Apache it's no wonder he got laughed out the door if thei standard is MS Windows servers. (think about it, would you walk into a Solaris shop and suggest that their new billing system you are bidding to write for them should be using VB on SQL Server?)

    I've installed several PHP/MySQL based Open Source web applications on our Windows 2000 intranet server with no problems (I've then had to abstract out the DB calls so that I can move the data to our Oracle server since, apparently, most LAMP developers can't be bothered to architect their applications properly and have hard-coded MySQL function calls everywhere), surprisingly enough even running as a CGI they still execute faster than our ASP apps.

    This could be a better way to migrate a company to Linux, get them hooked on PHP applications installed on their Windows servers. Then when Microsoft comes around for their yearly upgrade check ;), tell them that they can still use their apps if they install a Linux server and their TCO will be less. Then point and laugh at the ASP deverlopers trying to figure out what they are supposed to do at the blinking cursor (wondering why everything is black and white and where's the icons?) when they are porting their ASP apps.

    --
    "For a successful technology, honesty must take precedence over public relations for nature cannot be fooled." -Feynman
    1. Re:Misinformation? by Tablizer · · Score: 2

      (* I've then had to abstract out the DB calls so that I can move the data to our Oracle server since, apparently, most LAMP developers can't be bothered to architect their applications properly and have hard-coded MySQL function calls everywhere *)

      The mySQL calls are just a function name. You can put whatever you want behind a given function if you switch vendors. Just because it starts with "my" does not mean that you can't replace it with Oracle stuff.

      Are you talking about the function naming or the protocol itself? Could you provide an example?

      Often times you have to change the SQL anyhow because there are subtle differences between the vendors, like date formats, case sensetivity handling, concatenation syntax, etc. That is usually the biggest problem in switching unless you stick to a watered down lowest common denominator, which is too limited IMO.

    2. Re:Misinformation? by Twister002 · · Score: 2

      I'm talking about having to replace all of the PHP MySQL function calls (e.g. mysql_fetch_array, mysql_select_db, etc...) in an application with Oracle (or ODBC) specific ones, or replacing them all with a generic connect() function that I create myself. That's the biggest pain.

      In one PHP site admin application I was looking at, in 140 files there were 925 instances of the phrase "mysql_", which would indicate function calls using the MySQL functions compiled into PHP. So I have 140 files with lines similar to this:

      $db = connectdb();
      $sql = "select * from page where id = '$id'";
      $result = mysql_query($sql);
      $row = mysql_fetch_array($result);

      So if I want to use Oracle (or PostGres, or Firebird, or SAPDB) as my DB server, I have to replace all of those with ones specifc to my DB server in addition to making sure all of the SQL queries involved are either ANSI SQL or compliant with whatever DB I'm using. OR abstract the DB calls out so I only have to work on a few files to use a different DB server.

      --
      "For a successful technology, honesty must take precedence over public relations for nature cannot be fooled." -Feynman
    3. Re:Misinformation? by Zigg · · Score: 2

      So, umm, where are the PHP facilities to abstract this out? Or are you rolling your own abstraction every time? I looked hard for the abstraction facilities and couldn't find any, but I could just be missing it.

      I recently developed some personal stuff in PHP and MySQL (a PHP/MySQL host is much cheaper and usually has many more features than a decent Zope host, which is what I really wanted.) It amazes me how short-sighted just about everything in both PHP and MySQL is. Maybe working with Zope and having worked with PostgreSQL has me spoiled.

    4. Re:Misinformation? by Twister002 · · Score: 2

      Your just missing it. :) I missed them a lot too before I found them.

      ADODB for PHP is a good abstraction layer (some people think it is too bloated and the code is ugly, of course those people haven't written their own or anything)

      The PearDB
      functions are very useful as well.

      I've heard that the phpBB DB layer is very good but I haven't looked at it myself or tried to use it in other programs.

      Personally, I haven't found anything in PHP to be short-sighted. I've programmed ASP, JSP, and even some Perl and I've found PHP to be the best all around language for server side web scripting.

      MySQL, ehhhh....my opinion is they should change their slogan to "MySQL - Hey, it's better than using a flat file!" :) (which is not meant to denegrate all of the volunteers that have put in a lot of hard work creating MySQL, for simple web sites and applications I don't think it can be beat. But Oracle, IBM, and MS don't have anything to fear from it)

      --
      "For a successful technology, honesty must take precedence over public relations for nature cannot be fooled." -Feynman
  68. Good question, Firebird by Lewis+Mettler,+Esq. · · Score: 2

    I have used Interbase from Borland and Firebird is an excellent choice.

    It is easy to set up and maintain and it is a full commercial implementation.

    Yes, and it has the good stuff too (triggers, stored procs, views, etc.).

    And, if you really need to pay someone you can always get Interbase from Borland directly.

    --
    NexuSys - Linux support by the best
  69. Re:HUH? by Tony+Hoyle · · Score: 2

    Without SPs your performance won't scale too well - SPs run on the database server, which is (usually) a nice big fast machine with RAID etc. You don't want to offload everything onto the client as the network traffic between client and server can be huge (especially if you're dealing with big tables >1 million rows which aren't really that unusual these days). SPs allow you to do Query->Big fast machine->Result without all the messing about - *especially* if your DB structure changes you can maintain a consistent interface to the underlying data (views are mostly used for this but some of the more complex things will need SPs).

    Subqueries are essential... some things just can't be written any other way (short of using multiple temporary tables which is so icky I won't even begin to go there). Especially where you're trying to exclude items from a set - you need a 'where not in' clause which simply can't be done with a join.

  70. Re:MySQL will rule by rtaylor · · Score: 2

    Yup.. And I seem to choose the second one before either choice is popular.

    --
    Rod Taylor
  71. MySQL good, MySQL GUI clients bad by Animats · · Score: 2
    The actual database is good, although limited. I'm happy with it. It's been running my database of SEC filings for two years now without any problems. But the two GUI programs for Windows that come with it, MySQLGUI and the MySQL admin program, need work.

    Some versions of MySQLGUI will crash if the database has a long text field with newlines. Scrolling doesn't work right. And about half the time, the program won't connect to the database because it's little state machine for connection is out of sync. None of this should be hard to fix. But this is the sort of thing that makes a good program look broken.

  72. LOL by Otis_INF · · Score: 2

    Without InnoDB's betasoftware, does MySQL do:
    -Transactions? No.
    -Nested transactions? No.
    -Savepoints in transactions? No.
    -Triggers? No.
    -Nested triggers? haha... No.
    -User defined types? No.
    -User defined functions? No.
    -Views? No.
    -Indexed views? Haha... No.
    -Partitioned views (i.e. a view created from subviews retrieved from nodes in a cluster)? No.
    -Subselects? No.
    -Stored procedures? No.
    -Role based security? No.

    In other words: it's nice when you don't need all the stuff above, but trust me, every decent mission critical application does need some or all of the stuff above. So a thread to big database vendors?

    No Fscking Way.

    --
    Never underestimate the relief of true separation of Religion and State.
  73. Re:challenge? by Tablizer · · Score: 2

    Furthermore, the lack of subselects [mysql.com] makes everyday activities such as multi-table UPDATEs [mysql.com] a little arcane. (Read the "it can't be done this way" comments on the bottom to see what I mean.

    I couldn't find that message. Could you possibly supply a slashdot URL? Thanks.

  74. Re:subqueries by perlyking · · Score: 2

    You can delete columns.

    --
    no sig.
  75. Re:challenge? by bovinewasteproduct · · Score: 2


    MySQL
    Fast. Free. Easy. Lacks features.

    PostgreSQL
    Slow. Free. Difficult. Better feature set.


    Damn, where does all of this FUD keep coming from? PostgreSQL is not much slower than MySQL in the single digit user area and blows it away once you start updating/inserting and get alot of users hitting the DB.

    5 to 10% slower is not slow. Yes, 3 or 4 years ago it was, but not now. 7.3 (in CVS), will kick some serious butt..

    BWP

  76. The database and the platform by alext · · Score: 2

    Yes, especially as the platform and the database are supposed to become one in the Windows "Longhorn" release, meaning that the file system runs on top of the database.

    It would be fun to imagine that developers might plan to unite, say, PostgreSQL and ReiserFS in anticipation but unfortunately Strategy is not Open Source's strong point. Like the dithering between supporting Java on Linux, cloning Dotnet or doing something new, by the time any clarity emerges Linux-the-platform will have given away a lot of ground.

  77. Re:Where are the jobs? Flawed Argument by K-Man · · Score: 2

    The point is that employers aren't advertising for people to use this technology, and the numbers aren't growing. It would be good if they did, but I suspect many employers are simply ignorant of the skills that they could use.

    Here are the numbers for mysql on DICE over the past few months:

    6/12: 52
    7/25: 39
    8/17: 49

    I would be happy if the numbers were going up (there's a reason I searched for this term), but there's no indication of major growth that I can see. It's the usual chicken and egg situation.

    --
    ---- "If we have to go on with these damned quantum jumps, then I'm sorry that I ever got involved" - Erwin Schrodinger
  78. Re:challenge? by schon · · Score: 2

    Benchmark rhetoric + $0.90 = Tim Hortons.

    I'm confused.. first you say that you have "real-world case" saying something, then you say that it's not worth anything. (You posted benchmark rhetoric, then you posted that benchmark rhetoric isn't worth anything.)

    FWIW, I've used both, and for simple inserts/retrieves (which seems to be what you're using it for) MySQL is faster (which it should be, as that's what it was designed for).. but for real world DB use - complex retrieves, views, many multiple users - Postgres blows it away.

  79. Re:challenge? by bovinewasteproduct · · Score: 2

    Is your PostgreSQL database tuned?
    Have you vacuum analayzed the database since you loaded it?
    Do you have indexes on the proper columns?
    Have you checked for any SQL gotchas?
    How much shared mem does Pg have? Sort mem?

    This type of statement comes up a couple of times a week on the mailing lists. It sounds more like an untuned database more than anything else. If PostgreSQL was that slow NO ONE would use it!

    Lets see some real world open source site examples:
    Is SourceForge slow? (Pg)(Only the mailing lists are DB2 right now)
    Is PHPbuilder slow? (Pg)

    Most likely they have more than 400k rows, 12 columns and 60 users at a time. What does this tell you?

    BWP

  80. You're almost right... by schon · · Score: 3, Insightful

    The dirty secret of big databases is that most people don't know how to program them, how to configure them

    This is correct.

    and don't need most of the features

    This is where you're wrong.

    They do need the features - they just don't know they need them... so they implement the features themselves in the apps..

  81. Interface Matters if You Don't Know SQL by Mad+Marlin · · Score: 2
    Is it that the MySQL supporters on slashdot are only familar with application programming interfaces to relational databases - and so don't understand the differences between a modern relational database and MySQL? Or are they simply pushing the product that they are most familiar with?

    I think the main reason MySQL gets more hype than Postgres is because of the interfaces available. When I was dealing with that sort of crap (about 2 years ago) the Python interface to Postgres was very bare-bones, and almost unusable if you didn't know much SQL beyond a basic SELECT statement. The MySQL module for Python, on the other had, had all sorts of "Python-esque" ways to mess with the data without even knowing what an SQL statement is, and as I understand it, the MySQL interface in Perl was even friendlier to the SQL-unaware. The obvious drawback to the Perl interface though, is that then you have to program in Perl.

  82. Postgres installs in 10 minutes by hqm · · Score: 2

    I've used Postgres in a dozen relational database-backed server projects in the last three years. It installs faster than MySQL, I can do a Postgres install in literally ten minutes to get a functioning basic configuration.

    Sometimes, I believe the MySQL advocates are in some kind of strange parallel universe. Postgres is a real Oracle-killer at the low and medium end, and is a breeze to install and maintain.

    People might have gotten scared off by the old
    buggy Postgres implementations circa 1993 or so, but that code is long gone, the system was totally
    rewritten and since 7.0 has been creeping up on
    Oracle territory. MySQL by contrast, still lacks basic required stuff like ANSI syntax and tranactions.

  83. Local optima by Tony-A · · Score: 2

    Because it is appropriate and proper to black box the database from the front end developers.
    Oh, I very definitely see your point.
    MySQL gives you no protection from your front end developers, and its use should be restricted to situations where you do not need protection from your front end developers. It's a very different world-view.

  84. it's PostgreSQL they're dumping by Trepidity · · Score: 2

    They already moved from MySQL to Postgre a while ago, and now are moving from Postgre to IBM's DB2.

  85. Re:MySQL great for small databases by Eric+Damron · · Score: 2

    So there is a windows version of Postgres?

    Kewl!

    --
    The race isn't always to the swift... but that's the way to bet!
  86. Have you really used PostgreSQL? It's good. by Admiral+Burrito · · Score: 2

    Right now postges sends a message to the application saying, this is locked retry transaction, this is just not up to real enterprise levels.

    This can happen if you use the serializable transaction isolation level. It is not the default - you have to specify that isolation level for your transaction. And as far as I know, it is the only way to implement that isolation level while still allowing any kind of concurrency. I have never had to re-run a transaction with PostgreSQL, because I use the default transaction isolation level. You might want to read the relevant documentation.

    I have seen the "re-run your transaction" message - using MS SQL. Yes, "real" databases do do this. Again, it depends on the transaction isolation level.

    Most of your other points don't even apply to PostgreSQL. PostgreSQL has log-based transactions. It does not use one file per table (I can't remember how many files there were in my last PostgreSQL DB, but it wasn't many and certainly wasn't one-per-table). Others have commented on your other points (except XML) so I won't repeat them.

    You might want to take another look at PostgreSQL. Don't assume that it is the same as MySQL (if that is where your criticisms are coming from).

    I haven't tried MySQL so I really can't comment on it.

  87. Re:challenge? by delta407 · · Score: 2
    I was referring to the following comments on the UPDATE page:

    Simone Sagheddu: I'm a new user and so I'm not very expert using mysql. The problem i have is this: "UPDATE table1 INNER JOIN table2 ON table1.fieldname=table2.fieldname SET table1.fieldname = table2.fieldname" generate error 1064: "You have an syntax error in....". Does MySQL support Join using UPDATE keyword?

    And:
    Carl Furst: What about natural join updates?? If I have two tables and I want to put the value of one fields into another of the same type (tinytext can go into varchar, char and ints can go into blobs or tiny ints etc) couldn't I say something like this???

    update table_name set table1.field1=table2.field2 where table1.key=table2.key

    this would make life soooo much easier. I know this can't be done in 3.22.23 can it be done in 3.23.23??
  88. Re:Nope by MattRog · · Score: 2

    What RDBMS are you using? Oracle, Sybase ASE, and MS SQL Server do not behave in such a manner.

    --

    Thanks,
    --
    Matt