Uwierzytelnione mongo to królewski ból w tyłku. Mimo że twój superużytkownik jest w zasadzie wszechmocny z natury [ „userAdminAnyDatabase”, „dbAdminAnyDatabase”, „clusterAdmin”, „readWriteAnyDatabase”], jego konto system.user nadal jest oparte na bazie danych „admin”, jeśli skonfigurujesz je zgodnie z http://docs.mongodb.org/manual/tutorial/enable-authentication/ . Oznacza to, że najpierw musisz zalogować się jako „admin”, a następnie możesz „korzystać z bazy danych”.
$ mongo mono -u superuser -p 1234 admin
MongoDB shell version: 2.4.6
connecting to: admin
myReplSet:PRIMARY> use mono
Alternatywnie, podejrzewam, ale nie testowałem, że możesz umieścić swojego superużytkownika w bazie danych „test”, a nie „admin”, gdzie domyślnie ląduje powłoka. To pozwoliłoby ci pozostawić "admin" z linii poleceń mongo, ale teraz masz użytkowników zarządzanych w różnych miejscach. Głaz. Twarde miejsce.