[Dovecot] best choice of user database file to work with postfix

Ed W lists at wildgooses.com
Fri Apr 23 10:45:05 EEST 2010


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

1) 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.

2) 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...

3) 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)

4) 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



More information about the dovecot mailing list