How can I dedicate a NOSQL database only for usermin mail client webmail server

Hello, How can I dedicate a NOSQL database only for usermin mail client webmail server? Does Usermin has any orm support in order to choose any kind of NOSQL database for it and have another kind of database for virtualmin?

Status: 
Active

Comments

Howdy -- Usermin doesn't actually use a database for email, it either reads from the Maildir directory directly, or it can communicate with the mail server via IMAP.

How are you looking to use NOSQL in your environment?

Well I would like to have an erlang database and erlang messaging enviroment setup for managing only the mail server part of usermin so how can I do it? As I would have for virtualmin apache and postgresql instead.

Hmm, I'm not sure I follow what it is you're looking to do... can you describe what it is you're hoping to setup, and how it would work with Usermin?

In other words can I emplement any kind of database to usermin or usermin depends on virtualmin apache server and eather mysql or postgresql database? If so is there any orm feature for usermin in order to use any kind of databbase of my choice such as Riak nosql database?

Usermin doesn't actually use a database or Apache though -- it's a standalone service that runs on only Perl.

When accessing email, it does so using Dovecot's IMAP service -- that doesn't require a database though.

But it uses postfix, right? If I wanted to add to usermin a webserver like erlang yaws and cauchbase server , is that possible?

Yes, your server uses the Postfix mail server, and Usermin sends mail using that.

However, it doesn't use a database.

Sorry, I don't know of a way to use Usermin with erlang yaws or couchbase server.

This is why I had asked you if webmin has a orm Database abstraction layer?

Sorry, I may be misunderstanding what you're asking -- but since Usermin doesn't use a database, it also doesn't have a database abstraction layer.

As usermin is connected to virtualmin webmin, if my question is not silly then does virtualmin has a database abstraction layer?

I found my response for postfix here: A large number of database lookup mechanisms including Berkeley DB, CDB, OpenLDAP LMDB, Memcached, LDAP and multiple SQL database implementations.

In this case if I use for exemple Berkeley DB in postfix can I then use for exemple postgresql or mysql for apache server? Or the apache server db will be the one that postfix uses also at the same time?

By default, Postfix uses a combination of text files and Berkeley DB for managing users.

However, that doesn't interfere with the other databases running on your system.

Virtualmin supports MySQL, PostgresSQL, and SQLite, all on the same server.

They don't interfere with each other, or with Postfix.

Regarding a database abstraction layer --

there isn't a simple way to add new database types to Virtualmin, though it is possible by creating a new plugin for the desired database type.

This is great, that is what I wanted to know, so postfix is already installed on my server with Berkeley DB?

For creating a new plugin for the desired database type I will openup a post on job board then, thanks

Yup! When running the install.sh script, it installs Postfix automatically.

New entries to the Postfix config are created using text files, and the "postmap" command then converts those to Berkeley DB. Virtualmin handles that process for you.

Berkeley DB is just flat files though, and doesn't have a running process or listen on a port, so it doesn't interfere with other database types.