【问题标题】:Some beginner's questions about MongoDB关于MongoDB的一些初学者问题
【发布时间】:2010-08-16 10:54:14
【问题描述】:

我是 MongoDB 的初学者,我有一些问题:

  1. 当我连接到 Mongo 并执行 show dbs 时,我看到 2 个数据库:adminlocal。他们的作用是什么?然后如果我执行像db.foo.insert({"value":"mongo"}) 这样的插入命令,就会出现test 数据库。为什么?如何为数据库指定自定义名称?

  2. 使用show dbs 我得到了数据库(有点像sql 中的show databases),然后我怎样才能列出数据库中的集合(我会在sql 中使用show tables)?

  3. 执行命令时,MongoDB 教程始终使用 db 对象。它是必须用于执行命令的主要对象(一种“连接”对象)还是其他什么?

谢谢!

【问题讨论】:

    标签: mongodb


    【解决方案1】:
    1. adminlocal 包含服务器本地的各种设置,例如通过身份验证连接的用户。在初学者使用下,您根本不需要担心它们。默认情况下,您连接到名为 test 的数据库。要连接到新数据库,只需在 mongo 命令行中使用 use databasename,或在 OS shell 中使用 mongo databasename
    2. use [database_name] 然后show collections
    3. db 对象是 mongo 命令行上当前选定数据库的根句柄。命令行实际上只是一个 Javascript 命令行,并且公开了各种特定于 mongodb 的对象和函数,让您可以做一些事情。请尝试help() 获取完整列表。

    【讨论】:

    • 感谢您的回答。那么“测试”数据库呢,为什么在创建新集合时它总是默认显示?
    • 当您切换到数据库时,mongo 会隐式创建数据库。在没有参数的情况下启动命令行客户端会自动使用(并创建,如果它不存在的话)test 数据库。您可以通过始终使用参数(您要连接的数据库)调用 mongo 来避免它。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-16
    • 1970-01-01
    • 2011-05-06
    • 2011-01-12
    • 2018-01-08
    • 1970-01-01
    相关资源
    最近更新 更多