On 22/04/2010 17:18, Phil Howard wrote:
I have not been following this thread as closely as I probably should have; however, I was wondering what the OP's problem was with using MySQL? It would greatly simplify the job of constructing and maintaining databases. It is even possible to create tables that both Postfix and Dovecot can use jointly if desired. I use MySQL for several projects, and would never go back to using 'flat files" unless there was no other way to achieve my goal.
The administration is going to be handed off to less technical people, and my goal is to mimize the number of elements in this. It's not about MySQL itself ... it's about not running yet another server/daemon.
You need to look at where you are going with this.... One way or another you need a database - call it a banana if you prefer, but it's still a database whether it's a flat file or a BDB file or whatever
Your requirements appear to be badly phrased. What you *appear* to want
is a black box system which is as simple to maintain as possible.
However, you have stated a bunch of hard to meet criteria such as not
allowing any long running code to support your needs (a daemon). I
really don't see that you should exclude additional daemons, simply
evaluate the complete system with and without and choose the one which
is "easiest" to maintain
Yes you CAN setup something which uses a plain text database, I tried it for a while but at 50 users I decided it was too complicated and switched to a DB.
You are optimistic if you don't think some user will accidently add a <CR> halfway through the text file, completely breaking it and have the skills to realise what they did. Or they will add a "," in the middle of a password and change the meaning of all your fields. Or they will miss a field save the file and then never realise their mistake. Better yet are errors which cause some external (grep,sed,awk) function to choke on the input and cause some really wierd effects downstream...
Why should an sql database need any monitoring and maintenance over the next X years? Yes you can corrupt the files, but I would hope for very decent uptimes and after all they aren't going to repair a corrupted boot sector so you need some kind of maintenance plan in place, simply work in a full OS backup into the plan and this saves your DB at the same time? (Offlist we can discuss, but a simple rsync to some separate partition should do it)
If you really, really don't want a daemon based database then you will have to look at bdb (if dovecot supports it?) or sqlite which I think postfix+dovecot both support. You can then add convenience command line functions to examine and alter the data. Those convenience functions can error check the input also.
Good luck
Ed W