Konkrétně MongoDB neznám. Obecně platí, že otevření připojení k databázi je relativně pomalá operace a svazuje systémové prostředky. Jestli to ve vašem případě postačuje, nemohu říci.
Pokud byste měli pro každého uživatele jinou databázi, bylo by obtížné provádět dotazy, které přistupují k datům pro více uživatelů. Možná to nemusíte dělat.
Přesto si myslím, že by bylo obecně mnohem jednodušší vložit ID uživatele do každého záznamu spíše než vytvářet samostatnou databázi. Jaký je přínos samostatných databází? Dobře, smazání uživatele znamená říct "drop database". Ale smazání uživatele z jedné databáze by mělo znamenat, že řeknete "delete from tableX where user=?; delete from tableY where user=?" atd. pro libovolný počet relevantních tabulek, které máte. Neumím si představit, že jsou to stovky, že? Možná půl tuctu řádků kódu nebo tak?