Duplicar banco de dados e criar sub-domínio ao realizar registro no sistema

Caros,

Gostaria de saber qual a melhor abordagem para desenvolver essa funcionalidade.

Estou desenvolvendo um sistema web utilizando os frameworks JSF, Hibernate e MySql, e preciso que quando o usuário se cadastre no sistema, o sistema automaticamente crie um um banco de dados (a partir de um banco default) e tbm um sub-dominio, e assim o usuário tem seus dados personalizados (URL) e seu próprio bd.

Alguém já desenvolveu algo semelhante ?

Obrigado.