Не съм запознат конкретно с MongoDB. По принцип отварянето на връзка към база данни е сравнително бавна операция и обвързва системните ресурси. Не мога да кажа дали това е достатъчно, за да има значение във вашия случай.
Наличието на различна база данни за всеки потребител би затруднило изпълнението на заявки за достъп до данни за множество потребители. Може би няма нужда да правите това.
Все пак бих си помислил, че като цяло би било много по-просто просто да поставите потребителско име във всеки запис, вместо да създавате отделна база данни. Каква е ползата от отделните бази данни? Добре, изтриването на потребител означава да кажете „изтрийте база данни“. Но изтриването на потребител от една база данни трябва да означава "изтриване от tableX където user=?; изтриване от tableY където user=?" и т.н. за колкото и много подходящи таблици да имате. Не мога да си представя, че са стотици, нали? Може би половин дузина редове код или нещо такова?