<p>I have a rails application where each user has a separate database. (taking Joel Spolsky's advice on this). I want to run DB migrations from the rails application to create a new database and tables for this user. </p>

<p>What is the easiest way to do this? </p>

<p>Maybe the db migration is not the best for this type of thing. Thanks!</p>

<hr>

<p>It would be nice if it could be a completely automated process. The following process would be ideal.</p>

<ol>
<li>A user signs up on our site to use this web app</li>
<li>Migrations are run to create this users database and get tables setup correctly</li>
</ol>

<p>Is there a way of calling a rake task from a ruby application?</p>

We use seperate configuration files for each user. So in the config/ dir we would have roo.database.yml which would connect to my personal database, and I would  copy that over the database.yml file that is used by rails.
We were thinking of expanding the rails Rakefile so we could specify the developer as a environment variable, which would then select a specfic datbase configuration, allowing us to only have one database.yml file. We haven't done this though as the above method works well enough.