MongoDB 操作手册
The mongo Shell
启动mongo Shell并连接mongo DB
前提
打开mongo shell前确保MongoDB正在运行
打开windows终端(或命令提示符),cd进入MongoDB安装目录
cd <mongodb installation dir>/bin
//我这里是C:\Program Files\MongoDB\Server\4.2
cd C:\Program Files\MongoDB\Server\4.2\bin
这里可以将安装目录添加到windows环境变量中,这样直接在命令行中大mongo就可以启动
默认端口启动实例
可以直接输入mongo从默认端口27017连接DB
mongo
非默认端口启动实例
用 --port 命令行选项自定义从个别端口进入,比如从28015端口进入可以用下面治理
mongo --port 28015
剩下远程现在还没用到就不写了
通过mongo shell使用数据库
要显示当前使用的数据库,可以通过db,默认数据库为test
db
要切换数据库,使用use
use <database>
db.getSiblingDB()可以不切换数据库而连接另一个不同的数据区
显示当前用户可用数据库,可以通过show dbs
当操作的数据库不存在时,MongoDB会自动创建,如use指令和** insertOne() **函数就可以:
use myNewDatabase
db.myCollection.insertOne( { x: 1 } );
此时就创建了myNewDatabase和myCollection数据库和数据集。
db.myCollection.insertOne( )指令中:
- db是当前数据库
- myCollection是数据集的名字
如果mongo shell不接受某个数据集名字,可以用db.getCollection(),比如查找某个数据集名有空格或者-,以数字开头,或者和内设函数的名字重名:
db.getCollection("3 test").find()
db.getCollection("3-test").find()
db.getCollection("stats").find()
CRUD操作
Create 操作
Create或者insert操作将添加新的documents到一个collection,如果collection不存在,那么会新建一个collection
MongoDB提供以下函数插入:
- db.collection.insertOne() New in version 3.2
- db.collection.insertMany() New in version 3.2
insert操作只针对单个数据集,对于单个文档所有写操作都是原子的。
[插入(img-Sx2XN6yV-1568201004873)(https://docs.mongodb.com/manual/_images/crud-annotated-mongodb-insertOne.bakedsvg.svg)]
Read 操作
读操作从一个数据集中获取文档,MongoDB提供一下函数读取文档:
- db.collection.find()