[TriLUG] mysql as enterprise choice vs postgresql, learning curves?

Joseph Tate jtate at dragonstrider.com
Mon Mar 1 12:19:04 EST 2004


Turnpike Man wrote:
> mySQL... would any one like to address its limitations for enterprise use...
> does it now do stored procedures?  What about postgresql, and what's its
> learning curve if I can do some mysql?  Size and power requirements?
> 
> I currently run mysql-3.23.x and it runs great.  However, I don't have stored
> procedures capability, I heard this was coming in 4.x?  Also, after admining
> mysql 3.x, how is the admin of postgresql?  I'm seeking enterprise DB options
> that can be run on linux so I can do a cost analysis vs Microsoft.  Can ODBC be
> used easily with either of these, in particular in terms of mail merges (MS
> Word at this point) for mass distribution of personalized formal letters? 
> Presuming ODBC, Access front end possible for use on these databases?  (Yes, I
> possibly need Access for an intermediate step before going full blown HTML/XML
> with the entire application, sorry!)
> 
> Thanks,
> David M.
> 


I can't comment on mysql's stored procedure abilities, but PostgreSQL 
has PL/PGSQL which is very similar to Oracle's PL/SQL.  An ODBC 
connection to either is simple from Access*.  As for administration it's 
a little saner than the MySQL installation.  Everything is configured 
through text files rather than connecting to some system database.  If 
you're used to the MySQL way of doing things then you might run into 
several distinctions between the systems, but I don't think they will 
bother *you* too much.  A PHP administration interface similar to 
phpMyAdmin is available (phpPgAdmin).  The other benefits that 
postgresql has over MySQL are:

* Transaction Support (available in MySQL 3 in innodb tables)
* BSD Licensing
* Triggers, Rules, Constraints
* Foreign Keys/Referrential Integrity (may be supported by some MySQL 
table types, but not MyISAM)
* views

You will have licensing problems if you use MySQL 4.x for a commercial 
app as the connection libraries are now GPL (as opposed to LGPL which is 
what they were in MySQL 3).  This means that any program that links with 
MySQL 4 libs must be GPL.  (This is why there's no support yet for MySQL 
4 in PHP and why it's not shipping with RH/Fedora.)  PostgreSQL is BSD 
licensed, which means you can easily use it within a commercially 
licensed product.

For a site arguing both sides of the fences, see 
http://jeremy.zawodny.com/blog/archives/001053.html (some profanity). 
Especially see the comments by "Derek".

For PostgreSQL advocacy see http://advocacy.postgresql.org/ especially 
/advantages/, and /casestudies/.



More information about the TriLUG mailing list