Just a thought - I'm working on a MySQL-based CGI which gets lots of hits, and in retrospect I slightly wish I'd worked with PostGreSQL, or at least used DBD instead of DBI, because this would have allowed me to use transactions to manage conflicts between different users at the same time. The alternative I settled on, file locking, feels a bit clunky.
has more if you want it.