irpas技术客

MongoDB安装_夜舞精狼_mongodb安装

网络 1838

MongoDB安装_windows安装 1.下载安装程序2. 配置环境变量3.启动MongoDB4.使用MongoDB4.1 MongoDB的CRUD(增删改查)

1.下载安装程序

下载地址如下 https://·/try/download/community

如图所示: 下载完成之后直接安装,安装方式与windows安装其它软件一样,一直下一步即可,也可以Custom(自定义安装)自定义安装位置。 安装完成之后的目录如下图所示: 最新版的Mongodb自动在安装目录下创建log和data文件夹,老版本需要自己手动创建 但我们仍然需要在data目录下创建一个db文件夹 ,很重要。

2. 配置环境变量

右键我的电脑-属性-高级系统设置-环境变量,如下图所示:

3.启动MongoDB

mongod是启动MongoDB的命令,从以上图片中可以看出它有报错说没有在C盘下没找到\data\db目录,MongoDB启动默认去C盘根目录找,如果是我们自定义的目录就输入以下命令去启动MongoDB:

mongod -dbpath E:\MongoDB\data\db -port(可以指定端口号)

启动成功如下图,在使用MongoDB的过程中不能关闭此窗口 重新再打开一个cmd窗口,输入mongo,就可以使用MongoDB数据库了。 安装图形化界面_MongoDB Compass 社区版 新版在安装MongoDB服务器的时候已经同步安装好。 直接点击上图的connect进行连接。可以看到我们创建的文档。 nosqlmanager下载地址 https://·/download

4.使用MongoDB

基本概念

数据库(database)集合(collection)文档(document)

文档=>集合=>数据库

数据库内有集合,集合内有文档,在MongoDB中,数据库集合都不需要手动创建,当我们创建文档时,如果文档所在的集合或数据库不存在会自动创建数据库和集合。

//显示所有数据库 > show dbs admin 0.000GB config 0.000GB local 0.000GB > show databases admin 0.000GB config 0.000GB local 0.000GB > //进入数据库,随便写的,事先并没有创建 > use test switched to db test //查看当前在哪个数据库 > db test //显示数据库中 所有的集合 > show collections 4.1 MongoDB的CRUD(增删改查)

官方文档地址: https://docs.mongodb.com/v4.0/tutorial/query-documents/ 增 当向集合中输入文档时,如果没有给文档指定_id属性,则数据库会自动为文档添加_id,该属性用来作为文档的唯一标识。也可以自己指定_id,也必须确定唯一性。

//向数据库中插入文档 db.<collection>.insert({doc}) /插入一个 db.<collection>.insert([{doc},{doc},{doc}]) /插入多个,一个数组 3.2版本之后新增的 db.<collection>.insertOne() /将单个 文档插入到集合中 db.<collection>.insertMany() /可以将多个文档插入到集合中 //举例。向test数据中的student集合中插入一个新的学生对象 {name:"李如风",age:18,gender:"男"} db.student.insert({name:"李如风",age:18,gender:"男"}) //结果如下 > db.student.insert({name:"李如风",age:18,gender:"男"}) WriteResult({ "nInserted" : 1 }) > use test switched to db test > db test > show dbs admin 0.000GB config 0.000GB local 0.000GB test 0.000GB > show collections student > //查询当前集合中所有的文档 db.<collection>.find() > db.student.find() { "_id" : ObjectId("621caf11e9f6733537102b90"), "name" : "李如风", "age" : 18, "gender" : "男" } > //插入多个 > db.student.insert([{name:"李如风",age:18,gender:"男"},{name:"幻神君",age:89,gender:"妖怪"},{name:"达人",age:7878,gender:"女"}]) BulkWriteResult({ "writeErrors" : [ ], "writeConcernErrors" : [ ], "nInserted" : 3, "nUpserted" : 0, "nMatched" : 0, "nModified" : 0, "nRemoved" : 0, "upserted" : [ ] }) //查询 > db.student.find() { "_id" : ObjectId("621caf11e9f6733537102b90"), "name" : "李如风", "age" : 18, "gender" : "男" } { "_id" : ObjectId("621cb8ece9f6733537102b91"), "name" : "李一一", "age" : 26, "gender" : "女" } { "_id" : ObjectId("621cba49e9f6733537102b93"), "name" : "幻神君", "age" : 89, "gender" : "妖怪" } { "_id" : ObjectId("621cba49e9f6733537102b94"), "name" : "达人", "age" : 7878, "gender" : "女" } >

//语法 db.collection.find({}) /用来查询集合中所有符合条件的文档 //查询属性是指定值的文档{键:值} > db.student.find({name:"达人"}) { "_id" : ObjectId("621cba49e9f6733537102b94"), "name" : "达人", "age" : 7878, "gender" : "女" } //查询集合中符合条件的第一个文档,返回的是一个文档对象 //语法 db.collection.dindOne({}) > db.student.find() { "_id" : ObjectId("621caf11e9f6733537102b90"), "name" : "李如风", "age" : 18, "gender" : "男" } { "_id" : ObjectId("621cb8ece9f6733537102b91"), "name" : "李一一", "age" : 26, "gender" : "女" } { "_id" : ObjectId("621cba49e9f6733537102b93"), "name" : "幻神君", "age" : 89, "gender" : "妖怪" } { "_id" : ObjectId("621cba49e9f6733537102b94"), "name" : "达人", "age" : 7878, "gender" : "女" } { "_id" : ObjectId("621cc596e9f6733537102b95"), "name" : "李如云", "age" : 18, "gender" : "女" } > db.student.findOne({age:18}) { "_id" : ObjectId("621caf11e9f6733537102b90"), "name" : "李如风", "age" : 18, "gender" : "男" } //与find的区别如下 > db.student.find({age:18}) { "_id" : ObjectId("621caf11e9f6733537102b90"), "name" : "李如风", "age" : 18, "gender" : "男" } { "_id" : ObjectId("621cc596e9f6733537102b95"), "name" : "李如云", "age" : 18, "gender" : "女" } > //查询所有结果的数量 db.collection.find({}).count({}) > db.student.find({}).count({}) 5

//语法 db.collection.update({查询的值},{修改的值}) /新对象替换旧对象,不要使用 //操作符修改,$set用来修改文档中指定的属性,$unset用来删除文档中指定的属性 db.inventory.update( { 查询的值}, { $set: { {<value1>, <value2>,...} }, /没有添加的属性则添加,有则修改,update默认只修改第一个,要想修改多个用updateMany } ) //修改多个 db.student.updateMany( {查询的值}, { $set:{{<value1>, <value2>,...}}, } ) //db.collection.replaceOne({}) /替换一个文档 > db.student.find() { "_id" : ObjectId("621caf11e9f6733537102b90"), "name" : "李如风", "age" : 18, "gender" : "男" } { "_id" : ObjectId("621cb8ece9f6733537102b91"), "name" : "李一一", "age" : 26, "gender" : "女" } { "_id" : ObjectId("621cba49e9f6733537102b93"), "name" : "幻神君", "age" : 89, "gender" : "妖怪" } { "_id" : ObjectId("621cba49e9f6733537102b94"), "name" : "达人", "age" : 7878, "gender" : "女" } { "_id" : ObjectId("621cc596e9f6733537102b95"), "name" : "李如云", "age" : 18, "gender" : "女" } //修改幻神君的gender为神仙 > db.student.update({name:"幻神君"},{gender:"神仙"}) WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 }) > db.student.find() 仙"}) { "_id" : ObjectId("621caf11e9f6733537102b90"), "name" : "李如风", "age" : 18, "gender" : "男" } { "_id" : ObjectId("621cb8ece9f6733537102b91"), "name" : "李一一", "age" : 26, "gender" : "女" } { "_id" : ObjectId("621cba49e9f6733537102b93"), "gender" : "神仙" } { "_id" : ObjectId("621cba49e9f6733537102b94"), "name" : "达人", "age" : 7878, "gender" : "女" } { "_id" : ObjectId("621cc596e9f6733537102b95"), "name" : "李如云", "age" : 18, "gender" : "女" } > 我们可以看到修改的文档直接使用新的对象替换了旧对象,不推荐使用 //使用操作符修改 db.student.update( {"_id" : ObjectId("621cba49e9f6733537102b93")}, { $set:{name:"玉皇大帝",gender:"神仙",age:88} } ) > db.student.find() :88}}) { "_id" : ObjectId("621caf11e9f6733537102b90"), "name" : "李如风", "age" : 18, "gender" : "男" } { "_id" : ObjectId("621cb8ece9f6733537102b91"), "name" : "李一一", "age" : 26, "gender" : "女" } { "_id" : ObjectId("621cba49e9f6733537102b93"), "gender" : "神仙", "name" : "玉皇大帝", "age" : 88 } { "_id" : ObjectId("621cba49e9f6733537102b94"), "name" : "达人", "age" : 7878, "gender" : "女" } { "_id" : ObjectId("621cc596e9f6733537102b95"), "name" : "李如云", "age" : 18, "gender" : "女" } > //删除玉皇大帝的性别 db.student.update( {"_id" : ObjectId("621cba49e9f6733537102b93")}, { $unset:{gender:"神仙"} } ) > db.student.find() }) { "_id" : ObjectId("621caf11e9f6733537102b90"), "name" : "李如风", "age" : 18, "gender" : "男" } { "_id" : ObjectId("621cb8ece9f6733537102b91"), "name" : "李一一", "age" : 26, "gender" : "女" } { "_id" : ObjectId("621cba49e9f6733537102b93"), "name" : "玉皇大帝", "age" : 88 } { "_id" : ObjectId("621cba49e9f6733537102b94"), "name" : "达人", "age" : 7878, "gender" : "女" } { "_id" : ObjectId("621cc596e9f6733537102b95"), "name" : "李如云", "age" : 18, "gender" : "女" } > //年龄为18的修改成50 db.student.updateMany( {age:18}, { $set:{age:50}, } ) /* 1 */ { "_id" : ObjectId("621caf11e9f6733537102b90"), "name" : "李如风", "age" : 50, "gender" : "男" } /* 2 */ { "_id" : ObjectId("621cb8ece9f6733537102b91"), "name" : "李一一", "age" : 26, "gender" : "女" } /* 3 */ { "_id" : ObjectId("621cba49e9f6733537102b93"), "name" : "玉皇大帝", "age" : 88 } /* 4 */ { "_id" : ObjectId("621cba49e9f6733537102b94"), "name" : "达人", "age" : 7878, "gender" : "女" } /* 5 */ { "_id" : ObjectId("621cc596e9f6733537102b95"), "name" : "李如云", "age" : 50, "gender" : "女" }

//语法 db.collection.remove({}) /会删除符合条件的一个或所有文档,空对象则会删除所有文档 db.collection.deleteOne({}) /删除多个文档 db.collection.deleteMany({}) /删除一个文档 db.collection.drop({}) /不传参数默认删除直接删除集合 db.dropDatabase({}) /删除数据库 //删除玉皇大帝 db.student.remove({age:88}) /* 1 */ { "_id" : ObjectId("621caf11e9f6733537102b90"), "name" : "李如风", "age" : 50, "gender" : "男" } /* 2 */ { "_id" : ObjectId("621cb8ece9f6733537102b91"), "name" : "李一一", "age" : 26, "gender" : "女" } /* 3 */ { "_id" : ObjectId("621cba49e9f6733537102b94"), "name" : "达人", "age" : 7878, "gender" : "女" } /* 4 */ { "_id" : ObjectId("621cc596e9f6733537102b95"), "name" : "李如云", "age" : 50, "gender" : "女" }


1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,会注明原创字样,如未注明都非原创,如有侵权请联系删除!;3.作者投稿可能会经我们编辑修改或补充;4.本站不提供任何储存功能只提供收集或者投稿人的网盘链接。

标签: #mongodb安装