MongoDB数据库命令行操作
- 判断MongoDB数据库是否安装:
mongo --help
出现下图则说明安装成功,如果不是内部命令,可先查看环境变量是否配置成功
默认安装的环境变量配置:C:\Program Files\MongoDB\Server\4.0\bin; - 启动MongoDB服务端:
mongod --dbpath F:/nodejs/demo/db
- 启动MongoDB客户端:
mongo
注意:这里需要保持MongoDB服务端为启动状态,重新开一个命令行窗口启动MongoDB客户端。 查看已有数据库:
show dbs
默认已有数据库的作用:admin: 从权限的角度来看,这是”root”数据库。要是将一个用户添加到这个数据库,这个用户自动继承所有数据库的权限。一些特定的服务器端命令也只能从这个数据库运行,比如列出所有的数据库或者关闭服务器。
local: 这个数据永远不会被复制,可以用来存储限于本地单台服务器的任意集合
config: 当Mongo用于分片设置时,config数据库在内部使用,用于保存分片的相关信息。注:这里只会显示有数据的数据库,如果是创建了一个空的数据库,这里也查看不到!
- 创建/切换数据库:
use dancy
, dancy是数据库名称
如果use后面的数据库存在则切换到该数据库,如果不存在则创建。 - 查看当前所在数据库:
db
- 往数据库插入一条数据:
db.dancy.insert({"name": "dancy"})
- 删除当前所在数据库:
db.dropDatabase()
- 创建集合:
db.createCollection(name, options)
,name是集合名称,options是可选参数, 指定有关内存大小及索引的选项。 - 查看当前库有多少个集合:
show collections
- 删除集合:
db.company.drop()
, company是集合的名称。 - 插入文档:
db.user.insert({"name": "dancy", "age": 23})
, user是集合名称。 - 查看已插入集合的所有文档:
db.user.find()
, find方法里面可以传递参数(查询条件),具体参数可自行百度查询。 - 查看已插入集合的所有文档(格式化输出):
db.user.find().pretty()
更新文档:
db.collection.update(
,
,
{upsert: <boolean>,
multi: <boolean>,
writeConcern: <document>
}
)
query : update的查询条件,类似sql update查询内where后面的。
update : update的对象和一些更新的操作符(如 , , ,inc…)等,也可以理解为sql update查询内set后面的
upsert : 可选,这个参数的意思是,如果不存在update的记录,是否插入objNew,true为插入,默认是false,不插入。
multi : 可选,mongodb 默认是false,只更新找到的第一条记录,如果这个参数为true,就把按条件查出来多条记录全部更新。
writeConcern :可选,抛出异常的级别。
$set操作后面的更新如果存在则修改,如不存在则新增。
- 删除一个文档:
db.deleteOne({"name": "lotus"})
, 括号内参数为删除条件。 - 删除所有文档:
db.user.deleteMany({})
还没有评论,来说两句吧...