MongoDB "eval" 执行顺序
MongoDB "eval" order of execution
如何使用 MongoDB shell 定义函数并使用它?
在脚本文件中 createusers.js
有以下代码用于创建对特定数据库具有读取角色的用户。
function createReader(database, username, password)
{
db.getSiblingDB(database).createUser({
user : username,
pwd : password,
roles : [ { role : "read", db : database } ]
});
}
是否可以在mongodbshell中执行此功能?以下调用不成功
mongo --eval="createReader('somedb', 'user1', 'pass1')" createusers.js
给出错误 createReader 未定义。
您可以使用load()
从eval
加载js文件:
mongo --eval "load('createusers.js'); createReader('somedb', 'user1', 'pass1')"
如何使用 MongoDB shell 定义函数并使用它?
在脚本文件中 createusers.js
有以下代码用于创建对特定数据库具有读取角色的用户。
function createReader(database, username, password)
{
db.getSiblingDB(database).createUser({
user : username,
pwd : password,
roles : [ { role : "read", db : database } ]
});
}
是否可以在mongodbshell中执行此功能?以下调用不成功
mongo --eval="createReader('somedb', 'user1', 'pass1')" createusers.js
给出错误 createReader 未定义。
您可以使用load()
从eval
加载js文件:
mongo --eval "load('createusers.js'); createReader('somedb', 'user1', 'pass1')"