默认情况下,在mongodb中连接到特定数据库

时间:2014-03-15 00:30:29

标签: mongodb mongo-shell

我在linux机器上运行mongodb。因此,每次我从控制台连接到它(键入mongo),我都会得到类似的结果:

MongoDB shell version: 2.4.9
connecting to: test

然后我正在使用myDatabase(其中myDatabase是99%是相同的)。所以基本上我总是做一些不必要的工作。有没有办法配置mongo,以便它默认连接到myDatabase

2 个答案:

答案 0 :(得分:9)

感到惊讶的是我没有发现这个副本。好的,现在我们有了内容。

从命令行,只需执行以下操作:

  

$ mongo myDatabase

这实际上涵盖在documentation中,虽然在页面上稍微有点。没有直接链接,但搜索<db address>并且存在相同的示例。

当然你可以做到:

$ mongo --help
MongoDB shell version: 2.4.9
usage: mongo [options] [db address] [file names (ending in .js)]
db address can be:
    foo                   foo database on local machine
    192.169.0.5/foo       foo database on 192.168.0.5 machine
    192.169.0.5:9999/foo  foo database on 192.168.0.5 machine on port 9999

显示用法以及您可以传递的其他选项。

另一件事,不是默认连接,而是快捷方式,你可以在.mongorc.js文件中执行此操作:

db=db.getSiblingDB("myDatabase")

现在将变量db分配给该数据库:

db.collection.find()

代理myDatabase

答案 1 :(得分:0)

根据最新的 mongodb 驱动程序,我们可以在连接字符串中提供默认的 database 名称,如下所示:

1. 使用 mongoShell 连接

mongo "mongodb+srv://sandbox.ununu.mongodb.net/mydatabase" --username user001

2.使用驱动程序连接

mongodb+srv://user001:<password>@sandbox.ununu.mongodb.net/mydatabase?retryWrites=true&w=majority

参数详情:

  • 将 mydatabase 替换为默认连接将使用的数据库的名称。
  • sandbox.ununu.mongodb.net 是您的集群名称
  • 系统将提示您输入数据库用户 user001 的密码。
  • user001 是用户名

关于传递ReplicaSet、其他查询字符串参数等更多细节参考mongodb官方文档。 document link