sql >> Databáze >  >> NoSQL >> MongoDB

Nelze se připojit k superuživateli MongoDB k jiným databázím z terminálu

Autentizované mongo je královská bolest v zadku. I když je váš superuživatel ze své podstaty všemocný [ "userAdminAnyDatabase", "dbAdminAnyDatabase", "clusterAdmin", "readWriteAnyDatabase"], jeho účet system.user je stále založen v databázi "admin", pokud jej nastavíte podle http://docs.mongodb.org/manual/tutorial/enable-authentication/ . To znamená, že se musíte nejprve přihlásit do "admin" a poté můžete "použít databázi" po svém.

$ mongo mono -u superuser -p 1234 admin
MongoDB shell version: 2.4.6
connecting to: admin
myReplSet:PRIMARY> use mono

Alternativně mám podezření, ale netestoval jsem, že byste mohli umístit svého superuživatele do "testovací" databáze spíše než "admin", což je místo, kde vás shell ve výchozím nastavení přivede. To by vám umožnilo ponechat „admina“ mimo příkazový řádek mongo, ale nyní máte své uživatele spravované na různých místech. Skála. Hard Place.




  1. vyprší platnost klíče mezipaměti redis v konkrétní hodiny, nikoli dobu trvání

  2. Výjimka časového limitu po asynchronních příkazech a Task.WhenAny čeká v StackExchange.Redis

  3. Shoda kanálu $lookup MongoDB podle _id nefunguje

  4. Jak exportovat výsledky dotazů MongoDB do souboru JSON