首页 > 技术文章 > MongoDB 安装及命令指令符基本操作

wxyblog 2019-08-08 19:42 原文

MongoDB是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。

如何使用

下载路径:www.mongodb.com/download-center#community

通过点击 "Custom(自定义)" 按钮来设置你的安装目录

下一步安装 "install mongoDB compass" 不勾选,否则可能要很长时间都一直在执行安装

安装完成后,需要配置全局环境:将安装的路径   C:\Program Files\MongoDB\Server\3.4\bin   变量值的最后面打英文分号,然后粘贴,确定。

配置完后,就可以在cmd命令框中输入mongo查看是否配置成功,配置成功如下图:

 

mongoDB相关操作指令

cmd打开面板

打开数据库:输入mongod   --dbpath   文件夹绝对路径

最后显示值以27017结尾,则配置完成

cmd再次打开面板,注意:此前的cmd面板不能关闭

连接数据库:输入mongo     

输入mongo后就可以直接调用指令操作数据库中的数据了

数据库操作:

show dbs       : 查看所有数据库  注意:空数据库不会显示在列表中比如默认创建的数据库config, 要显示,就必须在库中插入数据

use  数据库名称   :进入指定的数据库,如果没有该数据库,则该指令会创建一个

db  :查看当前所在数据库

db.dropDatabase()     :删除当前所在的数据库,慎用;

mongoimport 导入数据 在新的cmd窗口中使用
mongoimport --db 数据的名称 --collection 集合的名称 [--drop] --file json文件路径

例子:

mongoimport --db school --collection student --drop --file C:\Users\Administrator\Desktop\node\mongodb\data.json

文档操作:

db.集合名.insert({})     : 在集合中插入数据,集合如果不存在也会创建,集合内将会自动生成对应ID,以键值对的形式存在对象数据中

例子:

db.collection.insertOne({})  //用于向集合插入一个新文档
db.collection.insertMany() //向指定集合中插入多条文档数据

show collections   :列出当前数据库中的所有的集合  

db.集合名.find()   :查找当前数据库集合中的所有数据

 

db.集合名.find()  : find可以传递参数

db.集合.find({"id":3})    //在集合查找id:3的数据

db.集合.find({"id":{"$ne":3}})//在集合查找id不等于3的数据
db.集合.find({"id":{"$gt":3}})  //在集合查找id>3的数据

db.集合.find({"id":{"$gte":3}}) //在集合中查找id >= 3的数据
db.集合.find({"id":{"$lte":3}})//在集合中查找id <= 3的数据
db.集合.find({"_id":{"$gte":3,"$lte":4}})  //id >=3 且id <=4db.集合.find({"$or":[{"id":{"$lte":1}},{"id":{"$gte":4}}]})  //  在集合中查找 id <=1 或者 id >=4 的数据;
db.集合.find().sort({"age":1,}) //正数1代表升序 排序
db.集合.find().sort({"age":-1}) //负数代表降序 排序
db.集合.find().limit(1)//限定输出数据的条数为1条
db.集合.find().skip(2)//跳过指定的数据条数 为两条
db.集合.find().skip(2).limit(2)//指定从数据中的第3条开始,输出两条数据
db.集合.find({'name':/^j.*?(g|n)$/i})#匹配规则:j开头、g或n结尾,不区分大小写
db.集合.find().sort({"age":1}) //查找并以age进行从大到小排序 为 -1 则从小到大排序

注意:  remove  并不能释放磁盘空间 , 删除完之后需要执行:
db.repairDatabase()
db.dropDatabase()  //删除当前数据库
db.集合名.drop()  :在当前的数据库删除指定的集合
db.col.remove({'title':'MongoDB 教程'})  //删除满足条件的文档
db.col.removeOne(
{'title':'MongoDB 教程'}) //删除一条满足条件的文档
db.col.delete
({'title':'MongoDB 教程'}) //删除一条满足条件的文档
db.col.deleteMany
({'title':'MongoDB 教程'}) //删除所有满足条件的文档

db.col.update(查找条件,{$set:需要更新的数据})
db.col.update({"a":2},{$set:{"b":10000}}) //更新数据 只更新第一条

db.col.update({"a":2},{$set:{"b":10000}},false,true) //全部更新
db.col.update({"a":2},{$set:{"b":10000}},是否全部添加,是否全部更新)  

推荐阅读