【问题标题】:execute mongo commands via shell script通过 shell 脚本执行 mongo 命令
【发布时间】:2015-11-01 12:07:28
【问题描述】:

我正在尝试连接到我的 mongo 数据库并对其执行一些命令,例如:

#!/bin/bash

mongo myMongoDbip:27017/admin -u username -p pwd

mongo --shell --eval  "use neura_staging"

我可以连接到数据库,但我所有的其他命令都不起作用,例如使用特定的数据库。

你能详细说明一下吗?

谢谢!

【问题讨论】:

  • 脚本的输出结果究竟是什么?
  • 我正在连接数据库,但我注意到命令没有执行...我的意思是使用其他数据库。

标签: mongodb shell ubuntu


【解决方案1】:

你应该有这样的东西

#!/bin/bash

USER=username
PW=secret
AUTHDB=admin
LOGINDATA="-u $USER -p $PW --authenticationDatabase $AUTHDB"
HOST=hostname.example.com

mongo $HOST:27017 $LOGINDATA --shell --eval ’use neura_staging’

您对mongo 的第二次调用未按预期工作的原因是此调用打开了一个(并且因为您没有提供任何未经身份验证的登录数据)连接。

【讨论】: