mongodb shell之使用js(二)

mongodb shell不仅是个交互式shell,还能够使用js脚本进行访问。

使用js脚本进行交互的优点与缺点
(1)无需任何驱动或语言支持;
(2)方便cron或管理员定时任务;
(3)注意点:任然是数据格式的问题;

js脚本一般会用来执行以下任务
(1)备份;
(2)调度map-reduce命令;
(3)离线报告,离线任务;
(4)管理员定时任务;

如何运行一个js脚本
./mongo 127.0.0.1:3003/test–quiet test.js
说明:
(1)./mongo
mongo客户端-_-;
(2)127.0.0.1:3003/test
服务器的ip,port,以及需要连接的数据库;
(3)–quiet
省略一些头信息
(4)test.js
待运行的脚本,内容是:
db.test.find().forEach(printjson);

也可以使用–eval参数
./mongo 127.0.0.1:3003/test –eval “db.test.find().forEach(printjson);”
–eval参数后面直接跟一个js语句。

其他的一些说明
(1)通常使用两种方法打印获取到的结果:
print() => 普通js
printjson() => 格式化json打印,打印出来的格式会漂亮许多
(2)迭代器(iterator command)在脚本操作中将失效
(3)如何知道insert、delete、update等操作是否成功呢,请使用:
db.getLastErrorObj()
或者
db.getLastError()
(4)js shell的相关介绍见:
https://developer.mozilla.org/En/SpiderMonkey/Introduction_to_the_JavaScript_shell

http://www.habadog.com/2011/08/09/mongodb-shell-use-js/

时间: 2024-07-30 20:54:48

mongodb shell之使用js(二)的相关文章

MongoDB入门教程二[MongoDB Shell 简介与使用]

MongoDB Shell 是MongoDB自带的JavaScript Shell,随MongoDB一同发布,它是MonoDB客户端工具,可以在Shell中使用命令与MongoDB实例交互,对数据库的管理操作(CURD.集群配置.状态查看等)都可以通过MongoDB Shell来完成. 今天介绍MongoDB的一些基本命令和小技巧: 1.利用help查看帮助: 输入:“db.user.find().help();”查看find()的帮助信息 2.基本命令: 连接/切换数据库       例如:u

孤荷凌寒自学python第五十六天通过compass客户端和mongodb shell 命令来连接远端MongoDb数据库

(完整学习过程屏幕记录视频地址在文末) 今天是学习mongoDB数据库的第二天.仍然感觉付出的时间与收获完全不成正比,万事开头的时候,总是那么困难,不过今天历尽困难总算还是成功在本地连接上了远端的mongoDB数据库(就是我注册的官方的试用版本的数据库,就在官方网站服务器上.) 一.首先在官方网站为我注册的账号新建的项目[Clusters0]中添加了一个测试数据库(database),命名空间为:ghlhfirst(具体添加过程不是很复杂,但要通过文字描述又比较有难度,而且最开始要找到这个添加过

windows下mongodb基础玩法系列二CURD操作(创建、更新、读取和删除)

windows下mongodb基础玩法系列 windows下mongodb基础玩法系列一介绍与安装 windows下mongodb基础玩法系列二CURD操作(创建.更新.读取和删除) 简单说几句 在mongodb中3元素:db(数据库).collection(集合).document(文档) 其中collection类似于数据库中的表,document类似于行,这样一来我们就将内容对比起来记忆学习了. 数据格式 MongoDB documents是BSON格式(一种类json的一种二进制形式的存

MongoDB Shell 常用操作

数组查询 数组查询 MongoDB 中有子文档的概念,一个文档中能方便的嵌入子文档,这与关系性数据库有着明显的不同,在查询时,语法有一些注意点. 例子代码,假如我们的一个集合(tests)中存在标签键,有如下模式: tags: [ObjectId] 查询含有某个标签 ID 的文档 db.tests.find({tags: tagId}); 我现在有一组标签 tagIds,即是数组,需要查询含有该数组中任一元素的文档,此时需要用到 $in 操作符 db.tests.find({tags: {$in

第三部分 管理篇 第九章 MongoDB shell之eval、进程

1.通过eval参数执行指定语句 比如,需要查询test库的t1表中的记录数有多少,常用方法如下: [[email protected] bin]# ./mongo test MongoDB shell version: 2.6.6 connecting to: test > db.t1.count(); 0 > 通过命令行eval参数直接执行语句: [[email protected] bin]# ./mongo test --eval "printjson(db.t1.count

MongoDB之复制集(二)搭建

准备工作 环境: CentOS6.5 64位 MongoDB 3.0.1 64位 一.启动mongod服务 [[email protected] data]# /usr/local/mongodb3.0.1/bin/mongod --port 40144 --dbpath=/data/mongodb3.0.1/data/ --logpath=/data/mongodb3.0.1/log/mongodb.log --directoryperdb --maxConns 100 --logappend

第三部分 管理篇 第九章 MongoDB shell之系统命令、用户命令

1.命令操作 MongoDB Shell不仅仅是一个交互式的shell,它页支持执行指定JavaScript文件,也支持执行指定的命令片段,有了这个特性,就可以将MongoDB与Linux shell完美结合,完成大部分的日常管理和维护工作.Shell命令其实控制台底层的查询语句都是用JavaScript脚本完成的. 系统相关 1.1.help查看命令 [[email protected] bin]# ./mongo MongoDB shell version: 2.6.6 connecting

MongoDB使用sh或者js文件

有时候我们需要向数据库中手动插入一些数据,但是如果数据格式本身比较复杂,并且需要插入多条数据的时候,直接子啊mongodb的shell上写js代码来像执行命令一样,虽然简单粗暴,但是对于比较复杂数据的情况是很不方便的,并且在shell上写js代码不方便修改数据等. 所以如果能把想要执行的js代码写成一个脚本,需要插入.修改数据的时候,只需要执行这个脚本就可以了,并且修改js代码也非常的方便 例如:在testdb数据库下的test集合中插入一条数据, 在任意路径下新建一个insert.js的文件(

MongoDB Shell 常用命令

MongoDB 是一款非常热门的NoSQL 数据库管理系统,官方下载地址是:MongoDB, 我在LocalHost安装的是 Enterprise Server 版本,默认安装文件目录是:C:\Program Files\MongoDB\Server\3.2\bin,点击 Windows+R,输入cmd,启动Command Prompt,进入到安装目录 每次打开Command Prompt都需要进入到MongoDB的安装目录十分麻烦,可以修改Computer的Environment Variab