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

Ed W lists at wildgooses.com
Fri Apr 23 13:13:59 EEST 2010


On 23/04/2010 10:30, Gábor Lénárt wrote:
> On Wed, Apr 21, 2010 at 01:45:35PM -0400, Phil Howard wrote:
>    
>>> Then I think MySQL will do the job. Both postfix and dovecot support MySQL,
>>> and you can use SASL to authenticate SMTP with Dovecot, so Dovecot would do
>>> all the auth work. Finally, you could use Postfix's VDA patch if you want to
>>> use Maildir++.
>>>
>>> Hope this helps.
>>>
>>>        
>> I don't want to use any other server engine of any kind with this.  I'm
>> trying to keep it small and lean, and minimize what the people that have to
>> monitor and fix it need to know.  So at the present time, I am excluding all
>> databases like any SQL or LDAP or anything else that needs to run as a
>> daemon/engine/service.
>>      
> Aham, yes, but as soon as you need some management interface, like a web
> based one, it will be more and more complicated to deal with this decision,
> you must edit/generate those files with that interface, care about locking
> because of the possibility of multiple admin access at the same time, you
> must parse them when you want to show the user list and so on. Sure, if you
> are very sure that it's not a need and it won't be either, then maybe you're
> right about "keeping minimal" solution, but based on my experience at an
> ISP, it's always the situation that sooner or later somebody want to extend
> the usage of a system which sooner or later needs to use some kind of
> database to avoid the complexity with dealing local "databases" as flat
> files or other solution (or keeping them as "system users").
>    

Yeah, I PROMISE that someone will eventually corrupt the flat file text 
"database" by accident.  So now you need to add a backup system (git? 
rsync?), plus some editing sanity checks? (a la visudo?)

In the end I personally went for a mysql + small rails frontend (using 
activescaffold which allows you to generate an admin interface in a 
couple of lines of code)

We don't know the exact requirements of the OP, but based on what we 
read here, *I* personally would evaluate either:

- sqlite based database with command line shell scripts to edit/examine
- mysql based system with remote control editing from some centralised 
location (ie you admin it for them)
- Some black box office distro where you just push the button and out it 
rolls.  I didn't look, but there must be some Centos/Ubuntu derivative 
thing which comes with a web interface, webmail, etc?

With mysql use innodb databases and all the logging options set to sync 
writes.  It should be near impossible to kill even if you keep ripping 
the power out.

Good luck

Ed W



More information about the dovecot mailing list