djberg96 is looking for an open source database to keep on deck should Oracle ever start to have issues. I'd guess that either Firebird or PostgreSQL would fit the bill, with PostgreSQL being the preferred solution. MySQL isn't quite there today, especially if you need stored procs or triggers. (Yes, it is ACID compliant.)
merlyn responded with a typical PostgreSQL-advocate's response: PostgreSQL is the only "real" open source database. Databases are another area where TMTOWTDI applies. I heartily disagree with merlyn's advice that there's just no reason to recommend anything but PostgreSQL in a new installation.
The PostgreSQL vs. MySQL debate came up last week at the egovos conference. It's trivial to find people making presentations about and around MySQL at a conference today. Over the last year, it has been rather easy to find people making presentations about projects that were built around PostgreSQL, or couldn't have been completed without PostgreSQL (e.g. using PostGIS). In many ways, the debate is just tiresome; MySQL and PostgreSQL are interchangeable solutions for a wide variety of problems today. And if you need advanced features like triggers or stored procs, you can get them today with PostgreSQL or tomorrow with MySQL. Yes, ACID compliance is important, but MySQL's long success proves that it's not everything.
FUDding the issue doesn't help anyone. Neither does sneering at databases that don't fully implement Oracle's current feature list. Databases aren't rocket science, and sometimes all you really need is the standard basic feature set: tables, indexes, SELECT statements and maybe ACID compliance.
I think MySQL also provides one of the simplest and easiest introductions to RDBMS - providing indexes, relationships, an auto_increment fields that make knocking up a schema for the back of most websites dead easy for anybody bothered to read any of the many tutorials available.
Postgres has a slightly tougher learning curve, like oracle, and requires that you handle case-sensitivity in data, and use sequences for you unique id fields instead of just specifying them to be auto_increment like in mysql.
Re:right on
koschei on 2003-03-24T22:47:11
Pg has a type 'serial', which is much like auto increment. It gets substituted for a sequence transparently.
I don't know where Pg gets this rep of being difficult. I found it completely painless to install and (later) upgrade. I've been using it for a few years now and have nothing but praise for it. And it supports how I think. I was taught a lot of database stuff at uni with Oracle. At the same time I was doing some things with MySQL. Then I discovered Pg.
Since then I've only needed MySQL for a slash setup someone wanted and that was sufficiently irritating that I got it to the point where it works and now won't touch its setup.
With the exception of use.perl, most of the people I hear praising MySQL just use it because it was there and because they don't know about things like stored procedures, triggers, transactions, etc. Does anyone know of good online database tutorials that cover these? Ones that we can point people to when they don't know.
Oh, and in reply to the actual journal entry, merlyn didn't use the word "only".Re:right on
TeeJay on 2003-03-25T08:51:23
ooh! didn't know about serial types - was using Sequences and stuff last time I touched postgres.I don't think Postgres I hard, it is much much easier than oracle, just that mysql is a very simple , very easy database well suited to beginners.
I haven't tried any other databases (apart from Oracle which I use at work and learnt at uni), because I've never needed to.
Re:Show stoppers
Matts on 2003-03-24T22:57:51
IIRC PostgreSQL 7.1 or 7.2 introduced runtime backups. I don't know enough about MySQL to speak about this aspect of it.
Replication is available as a patch for Pg 7.2, and will be a standard feature in 7.4, whereas it's a standard feature of MySQL 4.x already.